Ubuntu设置绑定设备并奴役两个真实的以太网设备

时间:2020-01-09 10:45:40  来源:igfitidea点击:

如何在Ubuntu Linux 140.04或者16.04 LTS服务器上设置绑定设备bond0并将两个实际的以太网设备(例如eth0和eth2)奴役到该设备?
如何在Ubuntu Linux 16.04 LTS服务器上创建802.3ad绑定模式(IEEE 802.3ad动态链接聚合)?
您需要安装并使用一个名为ifenslave的工具。
它将从属网络设备连接和分离到绑定设备。

Linux内核带有绑定驱动程序,该驱动程序提供了一种将多个网络接口聚合为单个逻辑绑定接口的方法。
您需要进行"绑定"以获得更高的数据速率以及链接故障转移。

在Ubuntu上安装ifenslave

执行以下命令:

$ sudo apt install ifenslave

配置示例

  • 绑定接口名称:bond0
  • 链路聚合类型:802.3ad(模式4)
  • 物理接口:eth0和eth2(根据您的需要)
  • IP地址仅分配给:bond0(请勿将任何IP地址分配给eth0和eth2接口)

如何在Ubuntu Linux上设置绑定设备

以下示例显示了如何设置绑定设备并将两个实际的以太网设备从命令提示符奴役到该设备:

  • 加载驱动程序,运行:#modprobe bonding
  • 使用IP地址设置bond0,运行:#ifconfig bond0 192.168.1.254 netmask 255.255.255.0
  • 奴隶两个接口,运行:#ifenslave bond0 eth0 eth2
  • 验证它:#ifconfig bond0
  • 查看绑定信息:#more/proc/net/bonding/bond0

持久绑定0配置

编辑/etc/network/interfaces文件,运行:

$ sudo vi /etc/network/interfaces

编辑/更新您的配置文件,如下所示:

auto bond0
iface bond0 inet static
# Example add eth0 speed if needed (I'm going with auto detect/nego)
#pre-up /usr/sbin/ethtool -s bond0 speed 1000 duplex full autoneg on
post-up ifenslave bond0 eth0 eth2
pre-down ifenslave -d bond0 eth0 eth2
bond-slaves none
# 802.3ad mode
bond-mode 4
bond-lacp-rate fast
bond-miimon 100
bond-downdelay 0
bond-updelay 0
bond-xmit_hash_policy 1
address 192.168.1.254
netmask 255.255.255.192
# Add static route example if you needed #
# up route add -net xx.tt.yy.zz/X gateway a.b.c.d
# down route del -net xx.tt.yy.zz/X
 
auto eth0
iface eth0 inet manual
# Example add eth0 speed if needed
#pre-up /usr/sbin/ethtool -s eth0 speed 1000 duplex full autoneg on
 
auto eth2
iface eth2 inet manual
# Example add eth2 speed if needed
#pre-up /usr/sbin/ethtool -s eth2 speed 1000 duplex full autoneg on

保存并关闭文件。
在Ubuntu Linux 14.04 LTS或者更早版本上重新启动网络服务:

$ sudo /etc/init.d/networking restart

对于Ubuntu Linux 16.04 LTS,执行:

$ sudo systemctl restart networking

验证新设置

$ ip a show bond0

或者

$ ifconfig bond0

输出示例:

6: bond0:  mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:25:90:4f:b0:6c brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.254/26 brd 10.86.115.127 scope global bond0
       valid_lft forever preferred_lft forever
    inet6 fe80::225:90ff:fe4f:b06c/64 scope link 
       valid_lft forever preferred_lft forever

要查看Linux内核绑定驱动程序和bond0接口类型的当前状态,请执行以下操作:

$ more /proc/net/bonding/bond0