您的位置:首页 > 运维架构 > Linux

linux同一机器设置多个虚拟IP

2014-11-14 20:48 204 查看
一.仅一个网卡的情况下,这种情况可以让该机器可以通过多个IP被访问,或隐藏常用IP,让他人访问其临时IP。

1.如果临时性的增加一个IP(重启机器或networ服务后,丢失),可以使用ifconfig命令

1)先查看目前的网卡信息

[root@test network-scripts]# ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:13:94:EB

inet addr:192.168.1.88 Bcast:192.168.1.255 Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fe13:94eb/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric: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.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric: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地址

[root@test network-scripts]# ifconfig eth0:1 172.16.1.222 netmask 255.255.255.0 up

#up表示当即生效,另外,如果想关闭个端口。可以ifconfig eth0:1 down

执行命令后,ifconfig多出一个端口信息

eth0:1 Link encap:Ethernet HWaddr 00:0C:29:13:94:EB

inet addr:172.16.1.119 Bcast:172.16.1.255 Mask:255.255.255.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Base address:0x2040 Memory:e8920000-e8940000

且能够ping通新增的IP

[root@test network-scripts]# 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

查看当前路由

[root@test ~]# netstat -rn

Kernel IP routing table

Destination Gateway Genmask Flags MSS Window irtt 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

查看当前路由

[root@test ~]# netstat -rn

Kernel IP routing table

Destination Gateway Genmask Flags MSS Window irtt 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完成

[root@test ~]# 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.永久性新增一个IP

1)仿照/etc/sysconfig/network-scripts/ifcfg-eth0文件,增加一个新增虚拟端口的文件

如ifcfg-eth0:1

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:1

vi /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.254

2)永久性增加对应的路由

[root@test sysconfig]# vi /etc/sysconfig/static-routes

增加一条路由

any net 172.16.1.0 gw 172.16.1.254 netmask 255.255.255.0

[root@test ~]# vi /etc/sysconfig/network #这个操作如果没做,也能连接上去,暂不知道影响什么的

增加一条

GATEWAY=172.16.1.254

3)service network restart
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: