1,在Linux系统下面,一般情况下,第一块网卡就叫eth0,第二块网卡就叫eth1,这里我们给第一块网卡设置多个IP,也即添加多个子网卡,如eth0:0、eth1:1这种网络接口,LINUX最多可以支持255个IP子网卡
2,使用命令p行配置临时ip
a,查看一下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
b,添加子网卡
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
说明与注意:
2.1, 必须使用up 来启动,让这个IP生效 .
2.2,这种方法只是临时的,如果reboot的话,则会全部消失
2.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
3,二、上述方法添加的IP,如果机器重启,配置就会丢失,我们可以通过如下2中办法保留网卡的ip。
a,将增加ip的命令填写到/etc/rc.local文件中
即将所有如这样ifconfig eth0:0 192.168.36.110 netmask 255.255.255.0 up的命令一行行全部填写到rc.local文件中去,rc.local文件是作用于linux开机自动执行命令,详细用法g或b一下,这里不详细说明。这个方法最方便,但不太可靠,有时会失灵。
b,手动编写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
4,当然你也可以用同一配置文件配置多个ip,也是可行的。