Ubuntu 16.4 系统基于bond(bond0)接口的网桥(br0)配置教程

本文将会讲述如何在Ubuntu 16.04 LTS 系统下基于现有的以太网接口配置Linux bond 网络,并基于bond设备配置网桥网络
Bond 配置需要安装ifensalve工具包, 网桥配置需要安装bridge-utils工具包。

1# ubuntu下安装ifenslave

执行下面的apt-get命令:

$ sudo apt-get install ifenslave

2# 安装bridge-utils

执行下面的apt-get 命令:

$ sudo apt-get install bridge-utils

命令输出如下:

正在读取软件包列表... 完成
 正在分析软件包的依赖关系树
 正在读取状态信息... 完成
 下列软件包是自动安装的并且现在不需要了:
 gyp javascript-common libjs-inherits libjs-jquery libjs-node-uuid libjs-underscore libnvpair1linux libssl-dev libssl-doc libuutil1linux libuv1-dev
 libzfs2linux libzpool2linux python-pkg-resources zfs-doc zlib1g-dev
 使用'apt autoremove'来卸载它(它们)。
 下列【新】软件包将被安装:
 bridge-utils
 升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 5 个软件包未被升级。
 需要下载 28.6 kB 的归档。
 解压缩后会消耗 102 kB 的额外空间。
 获取:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 bridge-utils amd64 1.5-9ubuntu1 [28.6 kB]
 已下载 28.6 kB,耗时 0秒 (39.9 kB/s)
 正在选中未选择的软件包 bridge-utils。
 (正在读取数据库 ... 系统当前共安装有 67725 个文件和目录。)
 正准备解包 .../bridge-utils_1.5-9ubuntu1_amd64.deb  ...
 正在解包 bridge-utils (1.5-9ubuntu1) ...
 正在处理用于 man-db (2.7.5-1) 的触发器 ...
 正在设置 bridge-utils (1.5-9ubuntu1) ...

3# 编辑网络配置文件增加bond配置信息和网桥接口信息

首先有备份现有的网络接口配置文件/etc/network/interface, 执行命令:

$ cp /etc/network/interface /etc/network/interface.bak

编辑/etc/network/interface文件:

Vi /etc/network/interface

首先要基于两个以太网接口eth0 和eth1 创建bond0 接口,加入下面的配置内容:

auto bond0
 iface bond0 inet manual
 bond-lacp-rate 1
 post-up ifenslave bond0 eth0 eth1
 pre-down ifenslave -d bond0 eth0 eth1
 bond-slaves none
 bond-mode 4
 bond-lacp-rate fast
 bond-miimon 100
 bond-downdelay 0
 bond-updelay 0
 bond-xmit_hash_policy 1

然后编辑eth0 和eth1的配置,参照如下内容:

auto eth0
 iface eth0 inet manual
 bond-master bond0

auto eth2
 iface eth2 inet manual
 bond-master bond0

最后我们开始基于bond0 创建网桥br0,参照下面内容:

auto br0
 iface br0 inet static
 address 192.168.1.58
 network 255.255.255.248
 netmask 255.255.255.0
 gateway 192.168.1.1
 bridge_ports bond0
 bridge_stp off
 bridge_fd 0
 bridge_maxwait 0

保存退出。
如果是通过DHCP获取ip地址,则可以参照下面的配置:

auto br0
 iface br0 inet dhcp
 bridge_ports bond0
 bridge_stp off
 bridge_fd 0
 bridge_maxwait 0

4# 重启网络服务

执行下面命令:

$ sudo /etc/init.d/network restart

$ sudo  systemctl restart network

5# 查看bond状态信息

$ more /proc/net/bonding/bond0

更多阅读:
1. Ubuntu 16.04 系统下网桥(br0,br1)配置教程

Sidebar