Linux 操作系统下为网卡配置ip |
您所在的位置:网站首页 › linux系统配置网卡信息 › Linux 操作系统下为网卡配置ip |
Linux操作系统下为网卡配置ip by:授客 1. Linux单一网卡设置多IP的配置方法 在Linux下网卡接口逻辑名被称为eth0,eth1,eth2,.....,ethN,所有网卡接口的配置文件都存储在/etc/sysconfig/network-scripts/下,文件名是以ifcfg-eth0,ifcfg-eth1,ifcfg-eth2,....,ifcfg-ethN形式来命名的。一个网卡接口对应一个配置文件。如果我们要给某个网卡接口配置两个IP地址,我们该怎么办呢? 例:为网卡接口eth0配置两个ip 步骤1.复制网卡接口eth0配置文件 # cp ifcfg-eth0 ifcfg-eth0:0 说明:eth*:n 虚拟网卡接口,建立于eth0网卡接口边上,*表示网卡(接口)号,n表示虚拟网卡接口号,范围0-255 步骤2.编辑修改ifcfg-eth0:0中相应的字段 假设ifcfg-eth0本身已经有ip了,配置如下: DEVICE=eth0 //这里是网卡设备名,改为eth0:0 BOOTPROTO=none //设置为none,设置为静态IP:static;设置为动态IP:dhcp BROADCAST=10.4.255.255 //广播地址 HWADDR=08:00:27:5C:56:2A //MAC地址,不需要修改 IPADDR=10.4.8.191 //ip地址,改为你要设置的ip地址 NETMASK=255.255.0.0 //子网掩码,改为你要设置的掩码 NETWORK=10.4.0.0 //网络地址 DNS1=8.8.8.8 //DNS地址,ping命令出现unkonwn host时,一般是未配置DNS所致//查看/etc/resolv.conf文件可看到配置是否起作用,注意该文件随ifcfg-ethN配置而动态变化的,所以最好在ifcfg-ethN配置文件中该添加DNS配置信息 ONBOOT=yes //ONBOOT指明系统启动时是否激活网卡,只有在激活状态才能连接网络,不激活:no;激活:yes USERCTL=yes //该选项指定是否允许非root用户控制该设备,允许:yes;不允许:no TYPE=Ethernet //网络类型,表明是以太网:Ethernet GATEWAY=10.4.0.1 //默认网关地址 编辑后的ifcfg-eth0配置如下 DEVICE=eth0:0 BOOTPROTO=none BROADCAST=10.4.255.255 HWADDR=08:00:27:5C:56:2A IPADDR=10.4.125.192 NETMASK=255.255.255.0 NETWORK=10.4.0.0 ONBOOT=yes USERCTL=yes TYPE=Ethernet GATEWAY=10.4.0.1 同一块网卡虚拟的两个IP地址,可以不用添加新的路由,系统会自动的装载路由表。 步骤3.ifconfig命令为网卡绑定ip 为0号网卡的虚拟网络接口eth0:2配置ip 10.4.125.192 # ifconfig eth0:0 10.4.125.192 netmask 255.255.255.0 注意:如果单独做第3步,不做第2步,重启机器后,配置就失效了 2. Linux为多个网卡设置单一ip的配置方法 步骤1.编辑网卡接口配置文件 1.网卡接口ifcfg-eth0配置文件 DEVICE=eth0 BOOTPROTO=none BROADCAST=10.4.255.255 HWADDR=08:00:27:5C:56:2A IPADDR=10.4.8.191 NETMASK=255.255.0.0 NETWORK=10.4.0.0 ONBOOT=yes USERCTL=yes PEERDNS=no TYPE=Ethernet GATEWAY=10.4.0.1 2.网卡接口ifcfg-eth1配置文件 DEVICE=eth1 BOOTPROTO=none BROADCAST=10.4.255.255 HWADDR=08:00:27:5C:56:2A IPADDR=10.4.125.192 NETMASK=255.255.255.0 NETWORK=10.4.0.0 ONBOOT=yes USERCTL=yes PEERDNS=no TYPE=Ethernet GATEWAY=10.4.0.1 步骤2.添加静态路由[临时性] 方法一: # route add -net 10.4.0.0 netmask 255.255.0.0 gw 10.4.0.1 up # route add -net 10.4.0.0 netmask 255.255.255.0 gw 10.4.0.1 up 查看路由表 # route -n Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 10.4.0.0 10.4.0.1 255.255.0.0 U 0 0 0 eth0 10.4.0.0 10.4.0.1 255.255.255.0 U 0 0 0 eth1 方法二: # route add -net 10.4.0.0 netmask 255.255.0.0 up # route add -net 10.4.0.0 netmask 255.255.255.0 up 再为系统增加一条缺省路由,因为缺省的路由是把所有的数据包都发往它的上一级网关(假设地址是10.4.0.1,这个地址依赖于使用的网络而定, # route add default gw 10.4.0.1 但重新启动后,上述配置就失效了,因此可在/etc/sysconfig/network-scripts/目录下建立文件。因为我们是做内网的路由,并且内网网卡接口为eth0,因此我们建立route-eth0文件如下: # cd network-scripts # vi route-eth0 10.4.0.0/16 via 10.4.0.1 dev eth0 10.4.0.0/24 via 10.4.0.1 dev eth1 # /etc/rc.d/init.d/network restart启动生效 步骤3.启动IP转发功能使得linux能够转发数据包。 3.1将/proc/sys/net/ipv4/ip_forward 文件内容置1[临时生效] echo “1” > /proc/sys/net/ipv4/ip_forward IP Forward 将立即生效,但重启动失效。 3.2 # vi /etc/sysctl.conf[永久生效] net.ipv4.ip_forward=1 注:默认情况下 同一网卡,不可以设置同一网段的多个ip,会冲突 不同网卡,不可以设置同一网段的不同ip,会冲突-->自动修改原来的路由表可能导致网络不同 关于这个结论可能并不是100%正确,具体以实际环境为准(出现问题时,关键看路由表)。 --------------------------------------------------------------------------- 测试实验 为不同网卡,设置同一网段的不同ip 例子:测试机ip 10.5.8.183,网关10.5.0.1,通过网卡接口eth2同外面的10.4.0.0网段进行网络通信,修改eth1接口ip之前,路由表如下,网络可通 # route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.5.0.0 * 255.255.0.0 U 0 0 0 eth2 1.0.0.0 * 255.0.0.0 U 0 0 0 eth3 default 10.5.0.1 0.0.0.0 UG 0 0 0 eth2 接着,系统界面上修改eth1接口ip为10.5.8.187,网关10.5.0.1,生效,发现10.4.0.0网段无法访问ip 10.5.8.183了 # route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.5.0.0 * 255.255.0.0 U 0 0 0 eth1 10.5.0.0 * 255.255.0.0 U 0 0 0 eth2 1.0.0.0 * 255.0.0.0 U 0 0 0 eth3 default 10.5.0.1 0.0.0.0 UG 0 0 0 eth1 注:此时,ping网关10.5.0.1, ping不通,从route命令的输出来看,我们可以发现路由表已经被修改了,要通往默认网关,必须经过eth1,但是eth1并没有接网线,所以不通。把eth1的网线接到交换机,再ping网关可ping通 断开eth1的网线,手动修改路由表,修改后如下 # route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.5.0.0 * 255.255.0.0 U 0 0 0 eth2 10.5.0.0 * 255.255.0.0 U 0 0 0 eth1 1.0.0.0 * 255.0.0.0 U 0 0 0 eth3 default 10.5.0.1 0.0.0.0 UG 0 0 0 eth2 发现也可以ping通网关了,, 说明:linux是这么匹配的,按路由表条目顺序,从上到下进行匹配,添加的默认网关总是放到表中最后,也就是最下面。同时也可以看出,要能相互通信,路由表至少有一条本地路由和一条默认路由 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |