前提说明:
以下是在操作系统版本:ubuntu 18.4.3 Bonding Driver: v3.7.1 下测试
bond x :特指创建的Bond虚拟网卡(逻辑网卡、虚拟网卡)
ens38 、 ens39 :特指第一次系统装机系统识别的物理网卡名称
验证时间:2020年2月28日 21:10 至 02:20
特别声明:
我验证的bonding模式 : Mode 1 主备模式
————————————————————————————————
1.第一次创建bonding:出厂烧录固件源mac会被写入bonding 参数:Permanent HW addr(永久写入此函数,对于变量(内存值)为静态变量)
2.fail-over-mac-policy参数:MAC地址故障恢复策略,Slave网络链路发生断开,bond x接口的mac会发生改变,而bond x的mac 发生改变,即时作用于Slave成员网卡。作用方式取决于fail-over-mac-policy参数值。
3.在Bonding Driver: v3.7.1下创建bonding虚拟接口bond x 的时候,从配置参数里读出的主Slave的mac会成为bond x 虚拟接口的主mac,至于其它Slave网卡(两个,三个,甚至更多个Slave mac怎么变由fail-over-mac-policy指定,fail-over-mac-policy 默认值为:none)
4.下面是fail-over-mac-policy三个值none 、active、 follow 含义:
4.1 fail-over-mac-policy: none
配置文件指定 primary: ens38,此时ens38成为Currently Active Slave,bond x虚拟接口mac地址为ens38的,当Bonding MII监测active ens38链路发生改变, 此时ens39成为活动网卡,bond虚拟网卡的mac继续保持第一次活动网卡ens38的,ens39的也继续保持不变,只是Bonding活动网卡变为ens39 ,bond x 的MAC地址从第一次读取Active 网卡MAC的后无论Slave链路怎么变,MAC永久保持不变
Slave 网卡永远随bond x改变而改变,如果此时手工把bond x MAC地址变为ab.cd.ef.gh 那么所有Slave同时会变成ab.cd.ef.gh, 用ip a命令即可查看 , MAC:一改改全部
4.2 fail-over-mac-policy: active
配置文件指定 primary: ens38,此时ens38成为Currently Active Slave,bond x虚拟接口mac地址为ens38的, 当Bonding MII监测active ens38链路发生改变, 此时ens39成为活动网卡,bond虚拟网卡的mac变到ens39的, 此时Bonding活动网卡变为ens39,bond x 接口地址永远追随当前active网卡的mac变化而变化,MAC:只改bond x 的
4.3 fail-over-mac-policy: follow
配置文件指定 prima