1. 简要
双网卡绑定技术在centos7中使用了teaming技术,而在rhel6/centos7中使用的是bonding技术,
在centos7中双网卡绑定既能使用teaming也可以使用bonding,这里推荐使用teaming技术,方便与查看和监控。
2. 原理
这里介绍两种最常见的双网卡绑定模式:
(1) roundrobin - 轮询模式
所有链路处于负载均衡状态,这种模式的特点增加了带宽,同时支持容错能力。
(2) activebackup - 主备模式
一个网卡处于活动状态,另一个处于备份状态,所有流量都在主链路上处理,当活动网卡down掉时,启用备份网卡。
3. 基础环境
系统:centos7
在centos7中,关闭虚拟机添加网卡,再开启虚拟机,系统是不会自动生成网卡的配置文件:
在centos7中要生成网卡配置文件的方法很简单,使用如下命令:
# 查看物理网卡信息
[root@localhost~]# nmcli dev
DEVICE TYPE STATE CONNECTION
eno16777736 ethernet connected eno16777736
eno33554984 ethernet connected Wired connection1eno50332208 ethernet connected Wired connection2lo loopback unmanaged--
上面的信息可以看到,一共有四张网卡,其中lo是本地回环网卡,另外三张为物理网卡。
# 查看网卡连接信息
[root@localhost~]# nmcli con shNAME UUID TYPE DEVICE
Wired connection2 9a1314bf-d273-406a-930a-dc4160dee4ec 802-3-ethernet eno50332208
Wired connection1 47eef4a3-7fa4-4a73-83ef-1485bda9b950 802-3-ethernet eno33554984
eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736
上面的信息可以查看到一共有3个连接,其中两个有线连接,表示没有设置过的网卡连接,还有一个enoxx连接。接下来要修改两个有线连接的命名方法,并生成网卡配置文件:
# 首先,删除两个无用的有线连接
[root@localhost~]# nmcli con del 9a1314bf-d273-406a-930a-dc4160dee4ec
Connection'Wired connection 2' (9a1314bf-d273-406a-930a-dc4160dee4ec) successfully deleted.
[root@localhost~]# nmcli con del 47eef4a3-7fa4-4a73-83ef-1485bda9b950
Connection'Wired connection 1' (47eef4a3-7fa4-4a73-83ef-1485bda9b950) successfully deleted.
# 再次创建新的连接并生成配置文件
[root@localhost~]# nmcli conn add type ethernet con-name eno50332208 ifname eno50332208
Connection'eno50332208' (eea2a115-63f8-4f33-be84-12559f02542c) successfully added.
[root@localhost~]# nmcli conn add type ethernet con-name eno33554984 ifname eno33554984
Connection'eno33554984' (32d2389e-4e82-4419-9d18-5aff8f0be003) successfully added.
# 最后,查看下
[root@localhost~]# nmcli con shNAME UUID TYPE DEVICE
eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736
eno33554984 32d2389e-4e82-4419-9d18-5aff8f0be003 802-3-ethernet eno33554984
eno50332208 eea2a115-63f8-4f33-be84-12559f02542c 802-3-ethernet eno50332208
[root@localhost~]# ll /etc/sysconfig/network-scripts/ifcfg-eno*