Sian 发表于 2013-12-18 12:35:03

Linux下单个网卡配置多个IP

一、仅一个网卡的情况下,这种情况可以让该机器可以通过多个IP被访问,或隐藏常用IP,让他人访问其临时IP。 1.如果临时性的增加一个IP(重启机器或networ服务后,丢失),可以使用ifconfig命令 1)先查看目前的网卡信息 # ifconfig
eth0      Link encap:EthernetHWaddr 00:0C:29:13:94:EB
          inet addr:192.168.1.88Bcast:192.168.1.255Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe13:94eb/64 Scope:Link
          UP BROADCAST RUNNING MULTICASTMTU:1500Metric:1
          RX packets:3412 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1544 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:437408 (427.1 KiB)TX bytes:189062 (184.6 KiB)
          Base address:0x2040 Memory:e8920000-e8940000 lo      Link encap:Local Loopback
          inet addr:127.0.0.1Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNINGMTU:16436Metric:1
          RX packets:44 errors:0 dropped:0 overruns:0 frame:0
          TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:4546 (4.4 KiB)TX bytes:4546 (4.4 KiB) 表明现在机器上只有一个网卡,端口为eth0 2)新增一个虚拟端口,并配置IP地址# ifconfig eth0:1 172.16.1.222 netmask 255.255.255.0 up                            #up表示当即生效,另外,如果想关闭个端口。可以ifconfig eth0:1 down 执行命令后,ifconfig多出一个端口信息
eth0:1    Link encap:EthernetHWaddr 00:0C:29:13:94:EB
          inet addr:172.16.1.119Bcast:172.16.1.255Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICASTMTU:1500Metric:1
          Base address:0x2040 Memory:e8920000-e8940000

且能够ping通新增的IP# ping 172.16.1.222
PING 172.16.1.222 (172.16.1.222) 56(84) bytes of data.
64 bytes from 172.16.1.222: icmp_seq=0 ttl=64 time=3.29 ms查看当前路由# netstat -rn
Kernel IP routing table
Destination   Gateway         Genmask         Flags   MSS Windowirtt Iface
192.168.1.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0
172.16.1.0      0.0.0.0         255.255.255.0   U         0 0          0 eth0      #增加的
0.0.0.0         192.168.1.1   0.0.0.0         UG      0 0          0 eth0 3)设置路由对应新IP,新增一个网段,使这个网段能够访问route add -net 172.16.1.0 netmask 255.255.255.0 gw 172.16.1.254 eth0:1 查看当前路由# netstat -rn
Kernel IP routing table
Destination   Gateway         Genmask         Flags   MSS Windowirtt Iface
192.168.1.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0
172.16.1.0      172.16.1.254    255.255.255.0   UG      0 0          0 eth0       #增加的
172.16.1.0      0.0.0.0         255.255.255.0   U         0 0          0 eth0
0.0.0.0         192.168.1.1   0.0.0.0         UG      0 0          0 eth0此时ping 172.16.1.118这台机器,ping通,表示临时新增IP完成# ping 172.16.1.118
PING 172.16.1.118 (172.16.1.118) 56(84) bytes of data.
64 bytes from 172.16.1.118: icmp_seq=0 ttl=64 time=0.147 ms注:这是临时使用的办法,如重启network或重启机器。则新增的IP丢失 2.永久性新增一个IP1)仿照/etc/sysconfig/network-scripts/ifcfg-eth0文件,增加一个新增虚拟端口的文件如ifcfg-eth0:1cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:1vi /etc/sysconfig/network-scripts/ifcfg-eth0:1修改成DEVICE=eth0:1
#BOOTPROTO=dhcp
BOOTPROTO=static
HWADDR=00:0C:29:13:94:EB
ONBOOT=yes
IPADDR=172.16.1.119
NETMASK=255.255.255.0
TYPE=Ethernet
GATEWAY=172.16.1.2542)永久性增加对应的路由# vi /etc/sysconfig/static-routes
增加一条路由any net 172.16.1.0 gw 172.16.1.254 netmask 255.255.255.0# vi /etc/sysconfig/network       #这个操作如果没做,也能连接上去,暂不知道影响什么的
增加一条GATEWAY=172.16.1.254 3)service network restart
页: [1]
查看完整版本: Linux下单个网卡配置多个IP