使用 Ubuntu Server 16.04
我在 eno1 和 eno2 之间创建了一个绑定连接,以在“Round Bobin”配置中创建“bond0”
当我查看网络流量统计数据(ifstat
例如使用)时,它显示 eno1 和 eno2 上的流量,但 bond0 上没有任何流量
这是正常现象吗,或者我可能设置不正确?
一切似乎都指向绑定连接的正确 IP 地址。
我知道这种类型的连接会通过一个连接而不是两个连接来路由单个“进程”,所以对 eno2 的权重并不让我感到惊讶(我下载了一个大文件夹来测试) - 但是 bond0 是否应该显示任何流量(例如,eno1 + 2 的总和)?
或者连接的‘虚拟’性质是否意味着它本身永远不会看到任何流量?
ifconfig 文件...
bond0 Link encap:Ethernet HWaddr 7a:2e:3e:25:27:27
inet addr:192.168.0.210 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST MASTER MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
eno1 Link encap:Ethernet HWaddr 1c:98:ec:0f:47:10
inet addr:192.168.0.202 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::1e98:ecff:fe0f:4710/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:639661 errors:0 dropped:56 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:140614455 (140.6 MB) TX bytes:680 (680.0 B)
Interrupt:16
eno2 Link encap:Ethernet HWaddr 1c:98:ec:0f:47:11
inet addr:192.168.0.203 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::1e98:ecff:fe0f:4711/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3239553542 errors:0 dropped:77 overruns:0 frame:0
TX packets:759036926 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4786541843470 (4.7 TB) TX bytes:254845825782 (254.8 GB)
Interrupt:17
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:1989 errors:0 dropped:0 overruns:0 frame:0
TX packets:1989 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:141834 (141.8 KB) TX bytes:141834 (141.8 KB)
接口文件...
auto eno1
iface eno1 inet static
address 192.168.0.202
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
auto eno2
iface eno2 inet static
address 192.168.0.203
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
auto bond0
iface bond0 inet static
address 192.168.0.210
gateway 192.169.0.1
netmask 255.255.255.0
dsn-nameservers 8.8.8.8 8.8.4.4
up /sbin/ifenslave bond0 eno1 eno2
down /sbin/ifenslave -d bond0 eno1 eno2
答案1
设备 eno1 和 eno2 不需要配置 IP 地址。IP 地址配置由 Bond 设备获取。
以 eno1 和 eno2 作为从属设备,绑定接口 bond0 使用简单的主动备份设置为例,其中 eno1 为主接口
auto eno1
iface eno1 inet manual
bond-master bond0
bond-primary eno1
auto eno2
iface eno2 inet manual
bond-master bond0
auto bond0
iface bond0 inet static
address 192.168.0.210
gateway 192.168.0.1
netmask 255.255.255.0
dsn-nameservers 8.8.8.8 8.8.4.4
bond-mode active-backup
bond-miimon 100
bond-slaves none
还有一件事 - 您对 bond0 设备的网关配置错误(192.169.0.1 应该是 192.168.0.1)。请参阅 bond 配置示例这里和这里。
答案2
注意 bond-mode 很重要!请参阅第页上的“bonding 模式描述”https://help.ubuntu.com/community/UbuntuBonding
在获得双倍带宽方面,主动备份模式并不好:主动备份策略:绑定中只有一个从属设备是主动的。