如何在 Rocky Linux 9 中使用 nmcli 配置并启用链路聚合(bonding)?

问题浏览数Icon
32
问题创建时间Icon
2025-05-18 19:36:00
作者头像
xiaozhu66

在Rocky Linux 9上用nmcli配链路聚合(bonding)挺简单的。先开终端,用命令 nmcli connection add type bond con-name bond0 ifname bond0 mode balance-alb(这里选mode6聚合模式)。然后给bond设IP,比如 nmcli connection modify bond0 ipv4.addresses 192.168.1.100/24 和 nmcli connection modify bond0 ipv4.gateway 192.168.1.1。接着把网卡加进bond里,比如 nmcli connection add type bond-slave ifname enp1s0 master bond0 和同样的操作给enp2s0。最后用 nmcli connection up bond0 启动,再用 cat /proc/net/bonding/bond0 检查状态就行啦!

更多回答

作者头像
longxiao01

在Rocky Linux 9中使用nmcli配置链路聚合(bonding)时,需重点关注以下几点经验:

  1. 模式选择:优先验证业务需求,若需高可用选mode=1(active-backup),若需负载均衡且交换机支持LACP则用mode=4(802.3ad)。生产环境中mode=6(balance-alb)易引发非预期流量分布。

  2. 参数调优:务必配置miimon=100及updelay=200/downdelay=200(单位ms),避免链路震荡。实际案例中曾因未设downdelay导致HA集群脑裂。

  3. 配置顺序:应先创建bond主接口再绑定从属接口。常见误区是先配从接口导致MAC地址冲突,引发STP阻塞。

  4. 验证方法:配置后执行cat /proc/net/bonding/bond0检查Slave Interface状态,同时通过ethtool [slave]验证链路速率协商。曾有案例因网卡驱动不兼容导致bonding降级为单一链路。

  5. 持久化陷阱:nmcli修改后需确保使用connection.autoconnect yes,曾有运维人员手动重启网络服务导致配置丢失。

完整命令示例:

nmcli con add type bond con-name bond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.1.10/24
nmcli con add type bond-slave ifname enp5s0f0 master bond0
nmcli con add type bond-slave ifname enp5s0f1 master bond0
nmcli con mod bond0 bond.options miimon=100,updelay=200,downdelay=200
nmcli con up bond0

注意:若使用LACP(mode4),需提前在交换机配置静态LAG,否则会导致协商失败。最终必须通过断线测试验证故障切换效果。

作者头像
chaoyang66

在Rocky Linux 9中,使用nmcli配置链路聚合(bonding)的步骤如下:

  1. 创建bond接口:sudo nmcli connection add type bond con-name bond0 ifname bond0 bond.options "mode=active-backup"
  2. 添加从属接口(如enp1s0和enp2s0):sudo nmcli connection add type bond-slave ifname enp1s0 master bond0,对enp2s0重复操作
  3. 设置IP(如静态):sudo nmcli connection modify bond0 ipv4.addresses 192.168.1.10/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8" ipv4.method manual
  4. 激活连接:sudo nmcli connection up bond0

延伸知识点——bonding模式详解: Linux bonding支持6种模式(通过mode参数指定),常用模式包括:

  • mode=0(balance-rr):轮询策略,数据包按顺序在每个接口发送,提供负载均衡但可能乱序
  • mode=1(active-backup):主备模式,仅一个接口活跃,故障时自动切换,提供高可用性
  • mode=4(802.3ad):LACP聚合模式,需交换机支持,动态协商聚合组,实现带宽叠加与故障切换
  • mode=6(balance-alb):自适应负载均衡,自动调整发送/接收负载,无需特殊交换机配置 模式选择需结合网络设备和需求,例如生产环境常用mode=4实现高效聚合,而mode=1适用于简单冗余场景。
作者头像
mistbird77

在Rocky Linux 9中通过nmcli配置链路聚合(bonding)需遵循以下步骤:

  1. 创建Bond接口

    nmcli con add type bond con-name bond0 ifname bond0 mode <mode> ip4 <IP/掩码> gw4 <网关>

    替换<mode>为聚合模式(如802.3adactive-backup),并设置静态IP及网关。

  2. 添加从属接口

    nmcli con add type bond-slave ifname <接口1> master bond0
    nmcli con add type bond-slave ifname <接口2> master bond0

    替换为实际物理接口名(如enp1s0)。

  3. 激活配置

    nmcli con up bond0
    nmcli con up bond-slave-<接口1>
    nmcli con up bond-slave-<接口2>
  4. 验证状态

    cat /proc/net/bonding/bond0  # 查看聚合详情
    ip addr show bond0          # 确认IP配置

注意事项

  • 模式需与交换机配置匹配(如802.3ad需启用LACP)
  • 若需DHCP,替换ip4参数为ipv4.method auto
  • 物理接口需处于未配置状态,可通过nmcli con delete <原有连接名>移除旧配置