确定内核模块是否加载
实验使用root用户权限,非root用户使用sudo 调用root权限
root@ubuntu22:~# lsmod | grep bonding
root@ubuntu22:~# modprobe bonding
root@ubuntu22:~# lsmod | grep bonding
bonding 200704 0
tls 114688 1 bonding
实验网卡
ens37 | ens38 |
---|
bond mode4配置文件如下
network:
version: 2
renderer: networkd
ethernets:
ens37:
addresses: []
dhcp4: no
optional: true
ens38:
addresses: []
dhcp4: no
optional: true
bonds:
bond4:
interfaces: [ens37,ens38]
parameters:
mode: 802.3ad
lacp-rate: fast
mii-monitor-interval: 100
transmit-hash-policy: layer3+4
addresses: [192.168.119.130/24]
routes:
- to: 0.0.0.0
via: 192.168.119.2
nameservers:
addresses: [114.114.114.114]
网络配置(network)
- version: 2:指定Netplan配置文件的版本。
- renderer: networkd:指定使用systemd-networkd作为网络服务的渲染器。
以太网接口(ethernets)
- ens37 和 ens38:定义了两个以太网接口。
- addresses: []:为空列表,表示这些接口没有静态分配的IP地址。
- dhcp4: no:表示这些接口不使用DHCP来获取IPv4地址。
- optional: true:表示这些接口是可选的,即使它们不存在或未配置成功,也不会影响系统的网络启动。
链路聚合接口(bonds)
- bond4:定义了一个名为bond4的链路聚合接口。
- interfaces: [ens37, ens38]:指定bond4由ens37和ens38两个接口组成。
- parameters:定义了bond接口的参数。
- mode: 802.3ad:设置bond模式为802.3ad,这是一种基于LACP(链路聚合控制协议)的动态链路聚合模式。
- lacp-rate: fast:设置LACP的速率为fast,意味着LACP包会更快地发送,以便更快地建立和维护聚合。
- mii-monitor-interval: 100:设置接口状态监测间隔为100毫秒,用于检测链路是否活动。
- transmit-hash-policy: layer3+4:设置流量分配策略,基于层3(IP地址)和层4(端口号)信息来计算哈希值,以决定数据包通过哪个slave接口发送。
- addresses: [192.168.119.130/24]:为bond4接口分配静态IPv4地址。
- routes:
- - to: 0.0.0.0:定义默认路由。
- via: 192.168.119.2:指定下一跳地址,即所有非本地目的地的流量都将通过这个地址转发。
- nameservers:
- addresses: [114.114.114.114]:指定DNS服务器地址,这里使用了公共DNS(114.114.114.114)。
bond mode1 配置文件如下:
network:
version: 2
renderer: networkd
ethernets:
ens37:
addresses: []
dhcp4: no
optional: true
ens38:
addresses: []
dhcp4: no
optional: true
bonds:
bond4:
interfaces: [ens37,ens38]
parameters:
mode: active-backup
mii-monitor-interval: 100
addresses: [192.168.119.130/24]
routes:
- to: 0.0.0.0
via: 192.168.119.2
nameservers:
addresses: [114.114.114.114]
- mode: active-backup 主备模式
使用 netplan apply 使配置生效