文章目录
- 1. 网卡别名是什么
- 2. 工作原理
- 3. 设置
- 3.1 临时添加,重启失效
- 3.1.1 使用ipconfig命令来设置网卡别名
- 3.1.2 使用ip addr命令来设置网卡别名
- 3.2 永久性添加
- 3.3 查看
- 参考
1. 网卡别名是什么
IP别名就是一张物理网卡上配置多个IP,实现类似子接口之类的功能。从网络协议的角度来讲,下层总是为上层提供服务,一块网卡的MAC地址只要一一对应上层的一个IP地址,并且这个逻辑关系是合理的,就算成立,而上层并不在乎下层是什么,比如一个IP地址可以对应多个应用层端口,不也是这个道理吗?在linux作DHCP服务器向多网段分配不同IP或者linux作路由器等时可能需要在一个物理接口上配置多个IP地址。
LINUX最多可以支持255个IP子网卡
2. 工作原理
这里要注意的是:网卡别名并不提供负载均衡和冗余的功能,它的终端只是由一块网卡在工作。
3. 设置
3.1 临时添加,重启失效
3.1.1 使用ipconfig命令来设置网卡别名
指定别名的语法:
ifconfig eth0:0 192.168.1.100/24 up
或
ifconfig eth0:0 192.168.1.100 netmask 255.255.255.0 up
也可以不指定别名,当多次给同一个网卡新增ip时,会自动在其后面新增 :0、:1递增形式的别名
已经存在一个eth5,且ip为194.20.20.24 的情况下,再次新增2个ip:
ifconfig eth5 add 194.20.20.5
ifconfig eth5 add 194.20.20.6
用ifconfig 再次查看,发现新增eth5:0和eth5:1
eth5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 194.20.20.24 netmask 255.255.255.0 broadcast 194.20.20.255
ether xxxxx txqueuelen 1000 (Ethernet)
RX packets 614 bytes 50944 (49.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 230 bytes 23584 (23.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth5:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 194.20.20.5 netmask 255.255.255.0 broadcast 194.20.20.255
ether xxxxx txqueuelen 1000 (Ethernet)
eth5:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 194.20.20.6 netmask 255.255.255.0 broadcast 194.20.20.255
ether xxxxx txqueuelen 1000 (Ethernet)
ifconfig 删除别名,指定别名时,使用down (注意针对网卡别名 的down命令是删除,而对应网卡本体是禁用的意思):
ifconfig eth5:0 down
此时通过ifconfig -a 查看,发现 eth5:0 确实不存在了
也可以使用 ifconfig eth5 del 194.20.20.6
进行删除,即指定网卡真身时,携带 目标ip,会自动寻找该网卡的别名且ip为目标值的项进行删除
3.1.2 使用ip addr命令来设置网卡别名
ip addr add 194.20.20.1/24 dev eth0 //给网卡网卡新增一个ip, ip 命令在不指定别名时,不会自动添加别名
ip addr add 194.20.20.2/24 dev eth0 label eth0:0 //新增网卡别名
ip addr del 194.20.20.2/24 dev eth0 label eth0:0 //删除网卡别名
ip addr flush dev eth0 label eth0:0
如上面所示,使用 ip addr 可以给一个网卡新增多个ip,如果不指定别名,那么显示为相同的网卡名称,会是类似下面的效果:
#ip addr 查看
inet 194.20.20.132/24 scope global secondary eth0 //原来初次设置的ip,接口是eth0
valid_lft forever preferred_lft forever
inet 194.20.20.13/24 scope global secondary eth0 //新增一个ip,接口仍然是eth0
valid_lft forever preferred_lft forever
inet 194.20.20.2/24 brd 194.20.20.255 scope global secondary eth0:0 //新增一个网卡别名eth0:0,方便差查看
valid_lft forever preferred_lft forever
但是这种设置是临时生效的,电脑重启之后就不存在了
3.2 永久性添加
设置永久有效的设备别名
为每个设备别名生成独立的接口配置文件
1、关闭NetworkManager服务(否则会导致结果出错)
2、ifcfg-ethX:xxx (命令的方式,记得是使用:隔开)
3、必须使用静态联网
DEVICE=eth0:0
IPADDR=10.10.10.10
NETMASK=255.0.0.0
ONPARENT=yes
注意:service network restart 生效
参考/usr/share/doc/initscripts-*/sysconfig.txt
3.3 查看
使用 ifconfig进行查看
并使用 ping ip 查看是否能通
参考
网络配置命令
网卡别名的设置
linux eth0网卡配置详解