基于Centos7环境下配置bond1配置

本文详细指导如何在CentOS 7.6环境中设置双网卡ens32和ens34,通过bond0实现网卡绑定,提供带宽增益和故障切换,包括配置文件编辑、模块加载、系统重启及测试步骤。

网卡绑定,也称作网卡捆绑。就是将两个或者更多的物理网卡绑定成一个虚拟网卡

作用:以提供负载均衡或者冗余,增加带宽的作用。当一个网卡坏掉时,不会影响业务。

环境:Vmware,Centos7.6

  • 添加两块网卡
  •  将第一块网卡的配置文件复制,并重新命名,网卡的名字可以通过命令 ifconfig或者ip addr查看,例如我的是ens32/34
  • 修改网卡ens32的配置文件,内容如下
[root@oraclelinux ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens32
DEVICE=ens32
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
[root@oraclelinux ~]# 
  •  修改网卡ens34的配置文件,内容如下
[root@oraclelinux ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens34
DEVICE=ens34
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
[root@oraclelinux ~]# 
  • 创建网卡bond0的配置文件,内容如下
[root@oraclelinux ~]# touch /etc/sysconfig/network-scripts/ifcfg-bond0 

[root@oraclelinux ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0 
DEVICE=bond0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.119.140 # 根据实际配置
GATEWAY=192.168.119.1
NAME=bond0
BONDING_OPTS="miimon=100 mode=1 primary=ens32 fail_over_mac=1" # ens32的名字要根据自己网卡实际名字配置,不要直接复制
  • 加载模块,使系统支持bond模式
[root@oraclelinux~]# cat /etc/modprobe.conf  # 如果文件不存在,需要手动创建
alias bond0 bonding
options bond0 miimon=100 mode=1 fail_over_mac=1  #配置bond0的链路检查时间为100ms,模式为1。

  • 在/etc/rc.d/rc.local 加入以下内容
ifenslave bond0 ens32 ens34
  • 加载bond module
[root@oraclelinux ~]# modprobe bonding
  • 重启网卡,并查看网卡状态如下
[root@oraclelinux ~]# systemctl restart network

  •  测试

通过命令:ifdown ens32或者ifdown ens34 ,关闭任意一个网卡,网络不会中断

<think> 我们参考了用户提供的引用资料,这些资料展示了在CentOS系统中配置bond4(LACP模式)的具体步骤。根据这些信息,我们可以归纳出配置LACP bond(即模式4,802.3ad)的步骤。 配置步骤: 1. 创建bond接口配置文件(ifcfg-bondX) 2. 配置从属接口(eno2和eno3)指向bond接口 3. 设置bond接口的BONDING_OPTS,指定模式为802.3ad(mode=4)以及其他参数 4. 重启网络服务使配置生效 5. 验证bond状态 需要注意的是,在CentOS 7中,我们通常使用network服务来管理网络,但也可以使用NetworkManager。不过,在服务器环境中,通常使用network服务。 具体步骤: 步骤1配置bond接口 创建或编辑文件`/etc/sysconfig/network-scripts/ifcfg-bond4`,内容如下: ```bash DEVICE=bond4 NAME=bond4 TYPE=Bond BONDING_MASTER=yes IPADDR=172.16.32.51 NETMASK=255.255.255.0 GATEWAY=172.16.32.1 DNS1=172.16.32.241 DNS2=172.16.32.243 PEERDNS=yes ONBOOT=yes BOOTPROTO=static BONDING_OPTS="mode=802.3ad miimon=100 lacp_rate=fast xmit_hash_policy=layer3+4" ``` 注意:在引用中,有的使用了`arp_validate=0`,但根据标准配置,我们通常使用`xmit_hash_policy`来指定传输哈希策略。引用[2]中提到了`xmit_hash_policy=layer3+4`,这是推荐的做法,因为这样可以基于IP和端口进行负载均衡。因此,我们在BONDING_OPTS中加入了`xmit_hash_policy=layer3+4`。同时,`arp_validate`参数在LACP模式下不是必需的,可以省略。 步骤2:配置从属接口 编辑eno2的配置文件`/etc/sysconfig/network-scripts/ifcfg-eno2`: ```bash DEVICE=eno2 NAME=eno2 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond4 SLAVE=yes ``` 同样,配置eno3的配置文件`/etc/sysconfig/network-scripts/ifcfg-eno3`: ```bash DEVICE=eno3 NAME=eno3 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond4 SLAVE=yes ``` 步骤3:加载bonding模块(如果需要) 通常情况下,系统已经加载了bonding模块。如果没有,可以按照引用[2]中的方法加载: ```bash modprobe bonding ``` 并且可以创建配置文件`/etc/modprobe.d/bond.conf`,内容如下: ```bash alias bond4 bonding options bond4 miimon=100 mode=802.3ad xmit_hash_policy=layer3+4 ``` 但注意,在bond接口的配置文件中已经通过BONDING_OPTS指定了参数,所以这一步不是必须的。 步骤4:重启网络服务 ```bash systemctl restart network ``` 步骤5:检查bond状态 ```bash cat /proc/net/bonding/bond4 ``` 在输出中,应该可以看到bonding mode为IEEE 802.3ad Dynamic link aggregation,以及当前活动的从属接口。 注意事项: - 在配置之前,请确保交换机端已经配置了LACP聚合(模式为active或passive)。 - 如果重启网络失败,请检查配置文件是否有语法错误。 - 如果使用NetworkManager,可能需要禁用NetworkManager对bond接口的管理,或者禁用NetworkManager服务。 以上就是在CentOS 7系统中配置LACP模式bond的方法。 生成相关问题: 1. 如何验证LACP bond是否正常工作? 2. 在配置bond时,如何选择不同的负载均衡策略? 3. 如果bond接口无法启动,应该如何排查故障? 4. 如何在CentOS 8中配置LACP bond? 5. 在配置bond时,如何设置多个bond接口? </think> ### CentOS 7 配置 LACP Bond 步骤详解 以下是配置 LACP(802.3ad)模式 bond 接口的标准流程: --- #### 1. **创建 bond 接口配置文件** ```bash vim /etc/sysconfig/network-scripts/ifcfg-bond4 ``` 配置文件内容: ```ini DEVICE=bond4 NAME=bond4 TYPE=Bond BONDING_MASTER=yes IPADDR=172.16.32.51 # 替换为您的IP NETMASK=255.255.255.0 # 替换为您的子网掩码 GATEWAY=172.16.32.1 # 替换为您的网关 DNS1=172.16.32.241 # 替换为您的DNS ONBOOT=yes BOOTPROTO=static BONDING_OPTS="mode=802.3ad miimon=100 lacp_rate=fast xmit_hash_policy=layer3+4" ``` **关键参数说明**: - `mode=802.3ad`:启用 LACP 动态聚合 - `miimon=100`:每 100ms 检查链路状态 - `lacp_rate=fast`:LACP 协商使用快速模式(1秒/次) - `xmit_hash_policy=layer3+4`:基于 IP+端口 的负载均衡策略[^1] --- #### 2. **配置物理网卡(以 eno2/eno3 为例)** **eno2 配置**: ```bash vim /etc/sysconfig/network-scripts/ifcfg-eno2 ``` ```ini DEVICE=eno2 NAME=eno2 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond4 SLAVE=yes ``` **eno3 配置**: ```bash vim /etc/sysconfig/network-scripts/ifcfg-eno3 ``` ```ini DEVICE=eno3 NAME=eno3 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond4 SLAVE=yes ``` --- #### 3. **加载 bonding 内核模块** ```bash echo "alias bond4 bonding" >> /etc/modprobe.d/bond.conf echo "options bond4 miimon=100 mode=802.3ad" >> /etc/modprobe.d/bond.conf modprobe bonding ``` --- #### 4. **重启网络服务** ```bash systemctl restart network ``` --- #### 5. **验证配置** ```bash # 检查 bond 状态 cat /proc/net/bonding/bond4 # 预期输出示例: Bonding Mode: IEEE 802.3ad Dynamic link aggregation LACP rate: Fast Slave Interface: eno2 (active) Slave Interface: eno3 (active) ``` --- #### 交换机端配合要求 需在交换机配置 LACP 聚合组: ```cisco interface port-channel 4 channel-group 4 mode active # Cisco 示例 interface GigabitEthernet0/1 channel-group 4 mode active interface GigabitEthernet0/2 channel-group 4 mode active ``` --- **注意事项**: 1. 所有物理网卡需支持 SRIOV 或禁用 NetworkManager 2. 交换机 LACP 模式需与服务器一致(建议双方均设 `active`) 3. 使用 `ethtool` 检查网卡状态:`ethtool eno2`
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值