提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
所谓bond,就是把多个物理网卡绑定成一个逻辑上的网卡,使用同一个IP工作,在增加带宽的同时也可以提高冗余性,一般使用较多的就是来提高冗余,分别和不同交换机相连,提高可靠性,但有时服务器带宽不够了也可以用作增加带宽。
bond 0 负载均衡 轮询方式往每条链路发送报文,增加带宽和容错能力。容易出现数据包无序到达的问题,数据包重发后吞吐量下降,性能增长不理想。
bond 1 主备策略 主备策略为两个网卡中只有一个在工作就行,另一个完全待机。
bond 2 平衡策略 通过算法聚和端口,增加带宽,提高容错率,当一条有问题会由另一条接管。适合本地网络配置,如果通过单个路由器或只有一个网关算法将无意义。
bond 3 广播策略 该策略bond端口会复制报文往下端口分别传输。该方案由较好的容错机制,适合金融行业,不容易出问题。
bond 4 动态链路聚合 该协议需要上线链路支持LACP(链路汇聚控制协议)协议,端口状态通过该协议自动维护。可以增加带宽,由容错能力,链路出问题会切换到正常的端口,但是增加了LACP协议 所以该协议会发送LACPDU报文来维护链路聚合状态,保证链路质量。
bond 5 适配器传输负载均衡 balance-tlb 在每个物理接口上根据当前的负载(根据速度计算)分配外出流量。如果正在接收数据的物理接口出故障了,另一个物理接口接管该故障物理口的MAC地址。
bond 6 适配器适应性负载均衡 balance-alb 支持负载均衡,也不需要交换机支持,负载均衡通过ARP协商实现。bonding驱动截获本机发送的ARP应答,并把源硬件地址改为bond中某个物理接口的唯一硬件,从而是的不同的对端使用不同的硬件地址进行通讯。 6和0的区别是 0是平均分配,6是一个满了换下一个。
进入 /etc/sysconfig/network-scripts 目录下创建一个文件 ifcfg-bond0或cp ifcfg-eth0 ifcfg-bond0
Vi ifcfg-bond0 编辑内容如下
DEVICE=bond0
BOOTPROTO=static
IPADDR=192.168.10.1
NETMASK=255.255.255.0
GATEWAY=192.168.10.254
ONBOOT=yes
TYPE=Ethernet
VI ifcfg-eth0 编辑内容如下
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
MASTER=bond0
SLAVE=yes
VI ifcfg-eth2 编辑内容如下
DEVICE=eth2
BOOTPROTO=static
ONBOOT=yes
MASTER=bond0
SLAVE=yes
编辑 vi /etc/ modprobe.conf ,这个文件没有也行
在最后面加入
alias bond0 bonding
options bond0 miimon=100 mode=0
也可以用nmtui来建立
需要填入绑定物理网卡的mac地址。网卡名字不用填。
说明:miimon是用来进行链路监测的。 比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。mode=0表示load balancing (round-robin)为负载均衡方式,两块网卡都工作。mode=1表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份. bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用,Bond配置完成
重启网络即可 service network restart
查看 /proc/net/bonding/目录下bond0文件,能看到双网卡的运行状态