实现Linux两张网卡的链路聚合
时间: 2024-08-16 11:09:22 浏览: 164
在Linux系统中,链路聚合(Link Aggregation,也称为LAG或Bonding)是一种技术,用于将两个或更多物理网卡连接组合成一个逻辑网络接口,提高网络带宽、可靠性和容错能力。以下是实现Linux双网卡链路聚合的一般步骤:
1. **启用内核支持**:
- 确保你的内核已开启`bonding`模块,如果没有,可以编辑`/etc/modprobe.conf`,添加 `options bonding mode=0`,然后运行`modprobe bonding`。
2. **配置loif(Loopback Interface)**:
创建一个名为`bond0`的接口,通常作为桥接设备,用于承载聚合后的流量。在`/etc/network/interfaces`或`/etc/sysconfig/network-scripts`文件中,增加类似下面的内容:
```bash
auto bond0
iface bond0 inet manual
bond_mode active-backup
bond_device eth0 eth1
```
或者选择其他模式,如`mode=balance-rr`(轮询)、`mode=802.3ad`(LACP)等。
3. **设置网卡**:
- 配置每个物理网卡(eth0 和 eth1),使其成为`bond0`的一部分,例如:
```
echo "bond0" >> /sys/class/net/eth0/bonding/slaves
echo "bond0" >> /sys/class/net/eth1/bonding/slaves
```
4. **激活并启动接口**:
- 使用`ip addr add`命令为`bond0`分配IP地址和其他网络配置,然后启用和启动它:
```
ip link set bond0 up
ifup bond0
```
5. **验证和检查状态**:
可以使用`ethtool`命令查看每个网卡的状态以及聚合的详细信息:
```
ethtool bond0
```
6. **防火墙规则调整**(如果需要):
需要确保防火墙允许聚合端口间的通信。
阅读全文