> 文章列表 > 网卡别名的设置

网卡别名的设置

网卡别名的设置

文章目录

  • 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 1500inet 194.20.20.24  netmask 255.255.255.0  broadcast 194.20.20.255ether xxxxx  txqueuelen 1000  (Ethernet)RX packets 614  bytes 50944 (49.7 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 230  bytes 23584 (23.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0eth5:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 194.20.20.5  netmask 255.255.255.0  broadcast 194.20.20.255ether xxxxx  txqueuelen 1000  (Ethernet)eth5:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 194.20.20.6  netmask 255.255.255.0  broadcast 194.20.20.255ether 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,接口是eth0valid_lft forever preferred_lft foreverinet 194.20.20.13/24  scope global secondary eth0    //新增一个ip,接口仍然是eth0valid_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网卡配置详解

历史知识