站长资讯网
最全最丰富的资讯网站

Linux之一个网卡添加多个IP

在Linux系统下面,第一块网卡就叫eth0,第二块网卡就叫eth1,这里我们给第一块网卡设置多个IP,也即添加多个子网卡,如eth0:0、eth1:1这种网络接口,LINUX最多可以支持255个IP子网卡。

一、使用命令临时添加ip

1)查看一下eth0配置:

ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64

inet addr:192.168.36.189 Bcast:192.168.36.255 Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fe0c:d164/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:27537 errors:0 dropped:0 overruns:0 frame:0

TX packets:15994 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:28935981 (27.5 MiB) TX bytes:1430497 (1.3 MiB)

Interrupt:19 Base address:0x2024

2)添加子网卡

ifconfig eth0:0 172.16.1.100 netmask 255.255.255.255 broadcast 172.16.1.255 up

ifconfig eth0:1 192.168.36.110 netmask 255.255.255.255 broadcast 192.168.36.255 up

查看:ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64

inet addr:192.168.36.189 Bcast:192.168.36.255 Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fe0c:d164/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:28286 errors:0 dropped:0 overruns:0 frame:0

TX packets:16398 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:28998261 (27.6 MiB) TX bytes:1493145 (1.4 MiB)

Interrupt:19 Base address:0x2024

eth0:0 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64

inet addr:172.16.1.100 Bcast:172.16.1.255 Mask:255.255.255.255

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Interrupt:19 Base address:0x2024

eth0:1 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64

inet addr:192.168.36.110 Bcast:192.168.36.255 Mask:255.255.255.255

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Interrupt:19 Base address:0x2024

说明与注意:

1: 必须使用up 来启动,让这个IP生效 .

2:这种方法只是临时的,如果reboot的话,则会全部消失

3:在设置ip别名时,如果增加的是和局域网同一网段的ip(如192.168.36.110),那么除了本机外局域网内其他机器都可以ping通这个ip。如果增加的是其他网段的ip,那么就只有本机可以ping通而已(不过可以通过设置多网段ip,也可以访问),后者主要用于本机测试需要。

若配置不同网段,参考:在Linux下配置多个网段ip

如果不再需要这个IP地址时,使用ifconfig ${dev_name} down就可以使用新绑定上的IP地址下线了。现在把刚才绑定的eth0:1下线:

[root@localhost]# ifconfig eth0:1 down

二、上述方法添加的IP,如果机器重启,配置就会丢失,我们可以通过如下2中办法保留网卡的ip。

1)将增加ip的命令填写到/etc/rc.local文件中

即将所有如这样ifconfig eth0:0 192.168.36.110 netmask 255.255.255.0 up的命令一行行全部填写到rc.local文件中去,rc.local文件是作用于linux开机自动执行命令,详细用法g或b一下,这里不详细说明。这个方法最方便,但不太可靠,有时会失灵。

2)手动编写ip的网卡配置文件

所有网卡的配置文件都保存在/etc/sysconfig/network-scripts目录中,一个网卡对应一个配置文件,如:

[root@slave-b opt]# ls /etc/sysconfig/network-scripts/

ifcfg-eth0 ifdown-bnep ifdown-ipv6 ifdown-ppp ifdown-tunnel ifup-bnep ifup-ipv6 ifup-plusb ifup-routes ifup-wireless network-functions

ifcfg-lo ifdown-eth ifdown-isdn ifdown-routes ifup ifup-eth ifup-isdn ifup-post ifup-sit init.ipv6-global network-functions-ipv6

ifdown ifdown-ippp ifdown-post ifdown-sit ifup-aliases ifup-ippp ifup-plip ifup-ppp ifup-tunnel net.hotplug

文件ifcfg-eth0就是本机网卡的配置文件,我们可以通过仿照这个文件的格式来编写其他ip的配置文件。

#vi ifcfg-eth0

打开网卡的配置文件,将里面所有字段复制一下

#vi ifcfg-eth0:0

创建eth0:0的配置文件,并将刚才复制的字段粘贴到这个配置文件,按照下文的介绍修改部分信息,修改完成后保存退出

以下是网卡配置文件的部分信息说明,其他类似信息默认即可:

##############################################################################

DEVICE=eth0:0 //虚拟网络接口,随意

ONBOOT=yes //系统启动时激活

BOOTPROTO=static //使用静态ip地址

IPADDR=192.168.36.100 //该虚拟网络接口的ip别名,随意

NETMASK=255.255.255.0 //子网掩码,对应ip别名

GATEWAY=192.168.36.1 //网关,对应ip别名

HWADDR=00:10:5A:5E:B1:E4 //网卡MAC地址,无需更改

USERCTL=no //是否给予非root用户设备管理权限

##############################################################################

配置完成重启网卡即可:

service network restart

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号