centos7配置网卡bonding+(多网卡多IP单网卡单IP)

5 篇文章 0 订阅
2 篇文章 1 订阅

目录: /proc/sys/net/ipv4/conf              #查看网卡

watch -n 1 cat /proc/net/bonding/bond0    #监控 bond0 状态,

小注:vmare添加一块新的网络适配器之后查看新添加的网卡名称

基础环境配置

环境:Centos7

一.网卡bond的作用:

bond可读性解释:

将两张网卡绑定,共用一个IP,实现冗余效果。实际上linux双网卡的绑定模式有7中,而在这里常用的是 active-backup

linux有七种网卡绑定模式:0. round robin,1.active-backup,2.load balancing (xor),  3.fault-tolerance (broadcast), 4.lacp,  5.transmit load balancing, 6.adaptive load balancing

linux下网卡绑定的7种模式:

mode=0 表示 load balancing (round-robin)为负载均衡方式,两块网卡都工作。 
mode=1 表示 fault-tolerance (active-backup)提供冗余功能,工作方式是主 从的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份。  
mode=2 表示 XOR policy 为平衡策略。此模式提供负载平衡和容错能力  
mode=3 表示 broadcast 为广播策略。此模式提供了容错能力  
mode=4 表示 IEEE 802.3ad Dynamic link aggregation 为 IEEE 802.3ad 为 动态链接聚合。该策略可以通过 xmit_hash_policy 选项从缺省的 XOR 策略改变到其他策略。  
mode=5 表示 Adaptive transmit load balancing 为适配器传输负载均衡。该 模式的必要条件:ethtool 支持获取每个 slave 的速率  
mode=6 表示 Adaptive load balancing 为适配器适应性负载均衡。该模式包含 了 balance-tlb 模式,同时加上针对 IPV4 流量的接收负载均衡(receive load   balance, rlb),而且不需要任何 switch(交换机)的支持。 
一个设备如果只有一个网卡,那么当这个网卡损坏时,设备的网络就会瘫痪。绑定接口的作
用就是让多个物理网卡服务于一个 IP 地址,使得这个网络的抵抗性强。一个设备只能有一
bond 接口,配置好以后每个网卡需要一根网线,需要插两个网线,交换机也需要作链路
聚合。
bond介绍:

1. 首先介绍下bond

 Linux bonding 驱动提供了一个将多个物理网络端口捆绑为单个逻辑网络端口的方法,用于网络负载均衡、冗余和提升网络的性能 .我公司搭建的ftp服务需要高速下载,普通电脑网卡网口一般是千兆,配置一个万兆的网卡也需要支持万兆的网线,因此使用bond或Linux teaming来绑定多个网卡作为一个逻辑网口,配置单个的IP地址,会大幅提升服务器的网络吞吐(I/O)。

2 bond 模式

1、mode=0(balance-rr)(平衡抡循环策略)
链路负载均衡,增加带宽,支持容错,一条链路故障会自动切换正常链路。交换机需要配置聚合口,思科叫port channel。
特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接
或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降

2、mode=1(active-backup)(主-备份策略)
这个是主备模式,只有一块网卡是active,另一块是备用的standby,所有流量都在active链路上处理,交换机配置的是捆绑的话将不能工作,因为交换机往两块网卡发包,有一半包是丢弃的。
特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。
此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利用率为1/N

3、mode=2(balance-xor)(平衡策略)
表示XOR Hash负载分担,和交换机的聚合强制不协商方式配合。(需要xmit_hash_policy,需要交换机配置port channel)
特点:基于指定的传输HASH策略传输数据包。缺省的策略是:(源MAC地址 XOR 目标MAC地址) % slave数量。其他的传输策略可以通过xmit_hash_policy选项指定,此模式提供负载平衡和容错能力

4、mode=3(broadcast)(广播策略)
表示所有包从所有网络接口发出,这个不均衡,只有冗余机制,但过于浪费资源。此模式适用于金融行业,因为他们需要高可靠性的网络,不允许出现任何问题。需要和交换机的聚合强制不协商方式配合。
特点:在每个slave接口上传输每个数据包,此模式提供了容错能力

5、mode=4(802.3ad)(IEEE 802.3ad 动态链接聚合)
表示支持802.3ad协议,和交换机的聚合LACP方式配合(需要xmit_hash_policy).标准要求所有设备在聚合操作时,要在同样的速率和双工模式,而且,和除了balance-rr模式外的其它bonding负载均衡模式一样,任何连接都不能使用多于一个接口的带宽。
特点:创建一个聚合组,它们共享同样的速率和双工设定。根据802.3ad规范将多个slave工作在同一个激活的聚合体下。
外出流量的slave选举是基于传输hash策略,该策略可以通过xmit_hash_policy选项从缺省的XOR策略改变到其他策略。需要注意的 是,并不是所有的传输策略都是802.3ad适应的,
尤其考虑到在802.3ad标准43.2.4章节提及的包乱序问题。不同的实现可能会有不同的适应 性。
必要条件:
条件1:ethtool支持获取每个slave的速率和双工设定
条件2:switch(交换机)支持IEEE 802.3ad Dynamic link aggregation
条件3:大多数switch(交换机)需要经过特定配置才能支持802.3ad模式

6、mode=5(balance-tlb)(适配器传输负载均衡)
是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave。该模式要求slave接口的网络设备驱动有某种ethtool支持;而且ARP监控不可用。
特点:不需要任何特别的switch(交换机)支持的通道bonding。在每个slave上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的slave出故障了,另一个slave接管失败的slave的MAC地址。
必要条件:
ethtool支持获取每个slave的速率

7、mode=6(balance-alb)(适配器适应性负载均衡)
在5的tlb基础上增加了rlb(接收负载均衡receive load balance).不需要任何switch(交换机)的支持。接收负载均衡是通过ARP协商实现的.
特点:该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receive load balance, rlb),而且不需要任何switch(交换机)的支持。接收负载均衡是通过ARP协商实现的。bonding驱动截获本机发送的ARP应答,并把源硬件地址改写为bond中某个slave的唯一硬件地址,从而使得不同的对端使用不同的硬件地址进行通信。
来自服务器端的接收流量也会被均衡。当本机发送ARP请求时,bonding驱动把对端的IP信息从ARP包中复制并保存下来。当ARP应答从对端到达 时,bonding驱动把它的硬件地址提取出来,并发起一个ARP应答给bond中的某个slave。
使用ARP协商进行负载均衡的一个问题是:每次广播 ARP请求时都会使用bond的硬件地址,因此对端学习到这个硬件地址后,接收流量将会全部流向当前的slave。这个问题可以通过给所有的对端发送更新 (ARP应答)来解决,应答中包含他们独一无二的硬件地址,从而导致流量重新分布。
当新的slave加入到bond中时,或者某个未激活的slave重新 激活时,接收流量也要重新分布。接收的负载被顺序地分布(round robin)在bond中最高速的slave上
当某个链路被重新接上,或者一个新的slave加入到bond中,接收流量在所有当前激活的slave中全部重新分配,通过使用指定的MAC地址给每个 client发起ARP应答。下面介绍的updelay参数必须被设置为某个大于等于switch(交换机)转发延时的值,从而保证发往对端的ARP应答 不会被switch(交换机)阻截。
必要条件:
条件1:ethtool支持获取每个slave的速率;
条件2:底层驱动支持设置某个设备的硬件地址,从而使得总是有个slave(curr_active_slave)使用bond的硬件地址,同时保证每个bond 中的slave都有一个唯一的硬件地址。如果curr_active_slave出故障,它的硬件地址将会被新选出来的 curr_active_slave接管
其实mod=6与mod=0的区别:mod=6,先把eth0流量占满,再占eth1,….ethX;而mod=0的话,会发现2个口的流量都很稳定,基本一样的带宽。而mod=6,会发现第一个口流量很高,第2个口只占了小部分流量。
3 如何配置

ubuntu 20.04版本 和以前16的区别很大,16的用的是/etc/network/interfaces配置文件,在20.04中是无效的,必须修改/etc/netplan下的文件,每台机器的yaml文件可能不一样,但是是要是yaml文件都可以配置,下面给一个样板,大体可以这样

. 网卡 bond 配置环境
安装了 Centos 的服务器,且至少有两张网卡,如图所示:

 

目的将上图中 ens33  ens37  两张物理网卡服务于一个 IP 地址(
10.0.0.12[ens33]),提高网络
抵抗性,防止其中一个网口异常导致网络中断
三. 网卡 bond 配置方法 
        例1  配置主备模式bond1
1. 添加链路聚合 bond 模式,定义 bond0
nmcli connection add con-name bond0 ifname bond0 type bond mode active-backup ip4 10.0.0.12/24
这里演示模式采用 active-backup ,对应主备模式,即 bond1
如需要的是其他模式只需要更改:active-backup 改为其他比如改为: balance-rr
(平衡抡循环策略)如下方例子
详情:
nmcli connection add con-name bond0 ifname bond0 type bond mode active-backup ip4 10.0.0.12/24
连接 "bond0" (9b1290f7-9fb3-4805-82f8-bd5fca98ad30) 已成功添加。

这里演示模式采用 active-backup ,对应主备模式,即 bond1
2. 添加 bond0 绑定网卡
nmcli connection add con-name ens33 ifname ens33 type bond-slave master bond0
nmcli connection add con-name ens37 ifname ens37 type bond-slave master bond0
注意顺序

 小tips:ens33无法bond原因添加了新适配器(新网卡ens37) 将此ifcfg-ens37删掉 即成功

3. 查看网口配置文件

执行完步骤 1 2 后,网口文件会生成 ifcfg-ens37  ifcfg-ens33-1 ,这里由于 centos 安装时
已经配置了一个网口 ens33 ,所以会生成 ifcfg-ens33-1 ,对建立 bond 没有影响。同理,若建
bond 前已经有 ifcfg-ens37  配置文件,则会生成 ifcfg-ens37-1 ,若建立 bond 前没有 ifcfg-ens37
配置文件,则会生成 ifcfg-ens37
网口配置文件目录为 /etc/sysconfig/network-scripts

实验环境中,此时网口配置文件如下图所示: 

4. 修改网口配置文件(自动生成的网卡配置文件中已包含下述部分配置,请仔细核对,确
保下述配置内容无遗漏且正确)
vim ifcfg-bond0
/etc/sysconfig/network-scripts/ 目录下,编写 ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=none
IPADDR=10.0.0.12
NETMASK=24
TYPE=Bond
BONDING_OPTS=mode=active-backup
GATEWAY=10.0.0.220
BONDING_OPTS=mode=active-backup
TYPE=Bond
BONDING_MASTER=yes
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=10.0.0.12
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=bond0
UUID=9b1290f7-9fb3-4805-82f8-bd5fca98ad30
DEVICE=bond0
ONBOOT=yes
GATEWAY=10.0.0.220

 5.  编写 ifcfg-ens33:(注意网卡编辑 ifcfg-ens33,而不是步骤 3 提到的 ifcfg-ens33-1

DEVICE=ens33
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0

编写 ifcfg-ens37
DEVICE=ens36
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0

 配置完成后重启网络服务:service network restart

四. Bond 状态查看及效果验证
1. 查看网口状态
完成上述配置后, ifconfig 查看网口状态如下图:
注意:
①正常状态为 bond0 网口显示 IPV4 地址,而两个物理口 ens32 ens36 IPV4 地址
bond0 与物理网口 ens33  及 ens37的 mac 地址完全一致

2. 查看 bond 状态
使用命令 :
watch -n 1 cat /proc/net/bonding/bond0     监控 bond0 状态,
正常如下图所示:
存在两个物理网口,且 bond 模式为 active-backup ,此时实际在用的网卡为 ens37
Currently
Active Slave 显示哪个就是在用哪个)

3. 模拟网口故障验证结果
检查上述状态正常,可以通过模拟网口故障来验证效果。
a. 执行 ifconfig ens33 down / sudo ifdown ens33 命令手动停掉 ens33  物理网口,
此时 ping 测试到 bond0 地址是 否通,
使用命令 watch -n 1 cat /proc/net/bonding/bond0 查看 bond0 在用网卡是否切换成功。
(如此前在用网卡为 ens33 ,手动将 ens33  停掉后,切换为 ens36 。)

注:

1. 需要交换机做链路聚合才能起来此种配置正确  bond配置完成!实验需要用到交换机 真机来做 虚拟机做不了。

2. 其中关于下图bond配置其他时可以改为相对应的模式如全改为bond1 等此时查看命令变为:watch -n 1 cat /proc/net/bonding/bond0  也可以直接默认bond0不做改变

3. 关于报错:

此种报错为书写格式不正确 只需要将格式转化为unix的即可

 ifconfig ens33 down

 成功!

======================================================>

例2:配置bond1:

分别执行

nmcli connection add con-name bond0 ifname bond0 type bond mode balance-rr ip4 10.0.0.12/24

nmcli connection add con-name ens33 ifname ens33 type bond-slave master bond0

nmcli connection add con-name ens38 ifname ens38 type bond-slave master bond0

相关文件编写:

#ifcfg-bond0

BONDING_OPTS=mode=balance-rr
TYPE=Bond
BONDING_MASTER=yes
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none     #static---->none
IPADDR=10.0.0.12
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=bond0
UUID=4e60e43b-cf27-450b-9d05-4e2f4d66ca30
DEVICE=bond0
ONBOOT=yes
GATEWAY=10.0.0.220   #网关新加

#ifcfg-ens33

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"  #none
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="a74b8b44-1967-424c-bf12-4ec359034713"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="10.0.0.12"
GATEWAY="10.0.0.220"
NETMASK="255.255.255.0"
DNS1="114.114.114.114"
MASTER=bond0

#ifcfg-ens38

TYPE=Ethernet
NAME=ens38
UUID=5d9feccf-5719-4788-9e88-54c036316075
DEVICE=ens38
ONBOOT=yes
MASTER_UUID=4e60e43b-cf27-450b-9d05-4e2f4d66ca30
MASTER=bond0    
SLAVE=yes
BOOTPROTO=none   #none

 验证:

 配置的为bond1此时 :watch -n 1 cat /proc/net/bonding/bond1  成功!

例2:设置bond6

nmcli connection add con-name bond0 ifname bond0 type bond mode balance-tlb ip4 10.0.0.12/24

nmcli connection add con-name ens33 ifname ens33 type bond-slave master bond0

nmcli connection add con-name ens38 ifname ens38 type bond-slave master bond0

相关文件更改:

#ifcfg-bond0

BONDING_OPTS=mode=balance-tlb
TYPE=Bond
BONDING_MASTER=yes
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=10.0.0.12
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=bond0
UUID=a1e17448-c680-4db8-8ab8-cb0456eb16df
DEVICE=bond0
ONBOOT=yes
GATEWAY=10.0.0.254

#ifcfg-ens33

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none""
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="a74b8b44-1967-424c-bf12-4ec359034713"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="10.0.0.12"
GATEWAY="10.0.0.254"
NETMASK="255.255.255.0"
DNS1="114.114.114.114"
MASTER=bond0

#ifcfg-ens38

TYPE=Ethernet
NAME=ens38
UUID=3433eaa7-b89e-42ac-a623-51d1e9c040a7
DEVICE=ens38
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

 验证:

 三. 多网卡 多IP

聚合:此时再次添加网卡设置多个IP

 查看新网卡名称:

ifconfig / cd  /proc/sys/net/ipv4/conf

 

cp ifcfg-ens33  ifcfg-ens38

编辑文件:

vim  ifcfg-ens38

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens38"
UUID="a74b8-1967-424c-bf12-4ec359034713"
DEVICE="ens38"
ONBOOT="yes"
IPADDR="10.0.0.14"
GATEWAY="10.0.0.220"
NETMASK="255.255.255.0"
DNS1="114.114.114.114"

验证:

多IP 

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens38"
UUID="a74b8-1967-424c-bf12-4ec359034713"
DEVICE="ens38"
ONBOOT="yes"
IPADDR="10.0.0.14"
IPADDR="10.0.0.15"
GATEWAY="10.0.0.220"
NETMASK="255.255.255.0"
DNS1="114.114.114.114"

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens38:0"
UUID="a74b8-1967-424c-bf12-4ec359034713"
DEVICE="ens38:0"
ONBOOT="yes"
IPADDR="10.0.0.21"
GATEWAY="10.0.0.220"
NETMASK="255.255.255.0"
DNS1="114.114.114.114"

10.0.0.15 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms

成功! 

----------------------------------------------------------->

二. ubtun20.04设置bond

1. 增加一块网卡

 查看网卡名称:

目录: cd /proc/sys/net/ipv4/conf

可以看到是ens38

配置bond6例子:

network:
  version: 2
  ethernets:
    ens33:
      addresses: []         #绑定单网卡不需要写IP地址
      dhcp4: no
    ens38:
      addresses: []
      dhcp4: no

  bonds:
    bond0:
      addresses:
        - 10.0.0.134/24
      gateway4: 10.0.0.220
      #nameservers: 可以不要
        #addresses:
          #- 114.114.114.114
      interfaces:
        - ens33
        - ens38
      parameters:          #参数
        mode: balance-alb      #bond模式

重启网卡:

这是bond6的,可以选合适你自己的模式 改mode即可如改为: balance-rr(平衡抡循环策略)

运用 sudo netplan apply

ifconfig

 查看网卡bond是否在工作

 成功!

选择合适的自行配置

如 bonding 802.3ad模式

network:
    version: 2
    renderer: networkd
    ethernets:
        enp2s0:
            dhcp4: no
        enp3s0:
            dhcp4: no
            optional: true
   bonds:
        #bond-lan:
        bond0:
            interfaces: [enp2s0, enp3s0]
            addresses: [192.168.93.2/24]
            parameters:
                mode: 802.3ad   #模式为mode4
                mii-monitor-interval:
                lacp-rate: fast
                transmit-hash-policy: layer2

如bond2(主备模式)

network:
  version: 2
  ethernets:
    ens33:
      addresses: []         #绑定单网卡不需要写IP地址
      dhcp4: no
    ens38:
      addresses: []
      dhcp4: no

  bonds:
    bond0:
      addresses:
        - 10.0.0.134/24
      gateway4: 10.0.0.220
      nameservers:
        addresses:
          - 114.114.114.114
      interfaces:
        - ens33
        - ens38
      parameters:           #参数
        mode: active-backup #bond模式
        primary: ens33

bond2主备模式

network:
    version: 2
    renderer: networkd
    bonds:
        bond0:
            dhcp4: yes
            interfaces:
                - enp3s0
                - enp4s0
            parameters:
                mode: active-backup
                primary: enp3s0

 成功!

blance-rr(平衡轮询模式)

network:
   ethernets:
           enp1s0f0:
                   addresses: [192.168.100.2/27]
                   gateway4: 192.168.1.30
           enp130s0f0: {}
           enp130s0f1: {}
   version: 2
   renderer: networkd
   bonds:
           bond0:
                   addresses: [10.1.130.74/24]
                   interfaces:
                          - enp130s0f0
                          - enp130s0f1
                   parameters:
                           mode: balance-rr   #模式为mode0
                           mii-monitor-interval: 100

实例

# 2. bond6 + 多网卡ip设置 
network:
  ethernets:
    ens33:
      addresses: []         #绑定单网卡不需要写IP地址
      dhcp4: no
    ens38:
      addresses: []
      dhcp4: no

  bonds:
    bond0:
      addresses:
        - 10.0.0.134/24
      gateway4: 10.0.0.220
     # nameservers:  可以不要
       # addresses:
        #  - 114.114.114.114
      interfaces: 
        - ens33 
        - ens38 
      parameters:           #参数
        mode: balance-rr   #bond模式事实上此为bond1
        mii-monitor-interval: 100
      
    ens39:
      dhcp4: no
      dhcp6: no
      addresses: 
        - 10.0.0.35/24
      gateway4: 10.0.0.220
      optional: true
      nameservers:
          addresses: [114.114.114.114,8.8.8.8]
  version: 2

查看bond状态  

ethtool bond0

 cat /proc/net/bonding/bond0

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CentOS 7支持双网卡聚合,也称为网络适配器绑定(NIC bonding)或链路聚合(Link Aggregation)。通过将多个物理网卡绑定在一起,可以增加网络带宽和冗余性。 在CentOS 7中,双网卡聚合可以通过两种方式实现:模式0(负载均衡)和模式1(冗余备份)。 1. 负载均衡模式(模式0):在这种模式下,多个网卡被绑定成一个逻辑接口,流量会根据一定的算法(如源IP地址、目标IP地址、源MAC地址等)分发到不同的物理网卡上,从而实现负载均衡。这样可以提高网络吞吐量和性能。 2. 冗余备份模式(模式1):在这种模式下,多个网卡被绑定成一个逻辑接口,其中一个网卡作为主网卡处理所有的流量,其他网卡则作为备份网卡。如果主网卡故障,备份网卡会自动接管流量,从而实现冗余备份。 要配置网卡聚合,首先需要安装`bonding`内核模块和`ifenslave`工具。然后,您需要编辑`/etc/sysconfig/network-scripts/ifcfg-bondX`文件(其中X是聚合接口的编号)和`/etc/sysconfig/network-scripts/ifcfg-ethX`文件(其中X是物理网卡的编号),并设置相应的参数。 以下是一个示例配置文件的内容: `/etc/sysconfig/network-scripts/ifcfg-bond0`: ``` DEVICE=bond0 TYPE=Bond BONDING_MASTER=yes IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 ONBOOT=yes BOOTPROTO=none BONDING_OPTS="mode=0 miimon=100" ``` `/etc/sysconfig/network-scripts/ifcfg-eth0`: ``` DEVICE=eth0 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes ``` `/etc/sysconfig/network-scripts/ifcfg-eth1`: ``` DEVICE=eth1 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes ``` 请根据您的网络环境和需求进行相应的配置。完成配置后,重启网络服务或使用`ifup bond0`命令激活双网卡聚合。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值