Linux双网卡bonding操作方法

来源:互联网 发布:对比度调整算法 编辑:程序博客网 时间:2024/05/20 13:05

 

1 双网卡绑定操作方法

目前网卡绑定mode共有七种:mode0, mode1,mode2, mode3, bond4, bond5, bond6.这七种模式的区别网上资料很多,这里不再赘述。本文说明下在项目中经常使用的一种模式mode=1即active-backup(主-备份策略)模式。

  特点

一个网卡处于活动状态,一个处于备份状态,所有流量都在主链路上处理。当活动网卡down掉时,启用备份的网卡。当物理网卡加入到bond mode1模式后,物理网卡的MAC地址被修改为bond口的MAC地址。当主备物理网卡切换时,MAC地址不会发生变化,所以只需要交换机中刷新FDB表,远端主机的ARP表不需要刷新,减少了流量中断时间。此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利用率为1/N。

 

  双网卡绑定系统配置

[NOTE]前提条件:需要手动关闭CentOS下的networkManager服务,并停止开机自启动

[root@controller ~]#systemctl status NetworkManager

[root@controller ~]#systemctl stop NetworkManager

[root@controller ~]#systemctl disable NetworkManager

 

双网卡绑定配置实例

物理服务器上两个待绑定物理网口分别是enp2sof0,enp2sof1;绑定后的虚拟口是bond1;服务器IP地址是190.168.12.126/24

1.     修改配置文件

[root@jpeckvm04]# cat /etc/sysconfig/network-scripts/ifcfg-enp2sof0

NAME=enp2sof0

DEVICE=enp2s0f0

ONBOOT=yes

MASTER=bond1

SLAVE=yes

[root@jpeckvm04]# cat /etc/sysconfig/network-scripts/ifcfg-enp2sof1

NAME=enp2sof1

DEVICE=enp2s0f1

ONBOOT=yes

MASTER=bond1

SLAVE=yes

[root@jpeckvm04]# cat /etc/sysconfig/network-scripts/ifcfg-bond1

DEVICE=bond1

BONDING_OPTS=mode=active-backup  ###bond配置为mode1模式

TYPE=Bond

BONDING_MASTER=yes

BOOTPROTO=static

IPADDR=190.168.12.126

PREFIX=24

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

NAME=bond1

ONBOOT=yes

 

2.     查看是否已加载bonding模块

#lsmod|grep bonding 查看是否已加载bonding;

#modprobebonding 加载bonding模块

查看bonding信息:

3.     重启网络服务。

#systemctl restart network

注,正常情况下在/etc/sysconfig/network-scripts目录下,一个bond口会存在三个相关配置文件,如ifcfg-bond1, ifcfg-enp2sof0,ifcfg-enp2sof1。

 

4.     使用ping和arp,检查网卡bonding后是否正常工作

 

2 取消双网卡绑定

前提条件:环境中已存在bond口bond0,bond0绑定eno1, eno2物理网卡。

取消后网络配置:

(1) 虚拟网卡bond0网卡删除手动配置的地址,并且ONBOOT置为down

(2)物理网卡eno2删除bond模式,并且ONBOOT置为down

(3) 物理网卡eno1删除bond模式,并且ONBOOT置为yes,且配置静态地址

执行步骤如下:

1.     删除ifcfg-bond0文件

# rm –rf /etc/sysconfig/network-scripts/ifcfg-bond0 

2.     还原eno1, eno2配置文件,其中对eno1配置IP地址,对eno2口设置为down。

# cat /etc/sysconfig/network-scripts/ifcfg-eno1

TYPE=Ethernet

#BOOTPROTO=static

NAME=eno1

DEVICE=eno1

ONBOOT=yes

#MASTER=bond0

#SLAVE=yes

IPADDR=192.168.158.66

PREFIX=24

GATEWAY=192.168.158.1

# cat /etc/sysconfig/network-scripts/ifcfg-eno2

TYPE=Ethernet

#BOOTPROTO=static

NAME=eno1

DEVICE=eno1

ONBOOT=no

MASTER=bond0

SLAVE=yes

#IPADDR=192.168.158.66

#PREFIX=24

#GATEWAY=192.168.158.1

 

3.     在底层删除bonding

# echo –bond0 > /sys/class/net/bonding_master

或者卸载bonding模块, 此种做法会删除当前系统中所有的bond口。

# rmmod bonding

4.     重启网络服务

# systemctl restart network

5.  增加ping和arp等测试步骤,检查网卡eno1后是否正常工作

参考资料

Linux网口绑定:

http://www.51ou.com/browse/wangluoguanli/60682.html

http://blog.csdn.net/yh10169658/article/details/52220582

http://5503845.blog.51cto.com/5493845/962580

 

 

0 0
原创粉丝点击