网桥,Bond,Team

来源:互联网 发布:淘宝最后发货时间 编辑:程序博客网 时间:2024/06/14 05:08

一,网桥:

这里写图片描述
对于没有网桥的主机1来说,若其上有虚拟机1-1,如果实现主机1和虚拟机1-1之间传输数据,需要虚拟机内核将数据包发送给主机内核,主机内核做地址转换(nat)后再发送给主机客户端。同样,如果是主机向虚拟机发送数据包也一样,这样的数据包传输速率明显会降低。
对于有网桥设备的主机2来说,若要与其上的虚拟机2-2实现数据包转发,主机2将数据包发送给网桥(br0),网桥先前会绑定虚拟机的其中一个网卡,因此,网桥就像是一做真实的桥梁,将主机的网卡和虚拟机的网卡相连接起来,但是一般情况下,在主机上发送数据的网卡和做网桥设备的网卡是同一个,这样可以减少网卡的开销,也便于管理。

对于有网桥的主机来说,在建立虚拟机的时候可以选择网桥(br0)类型的网卡,这样建立的虚拟机默认被分配为和主机网桥同一网段的ip地址。

这里写图片描述

实验一:
[root@foundation92 network-scripts]# mv ifcfg-br0 ifcfg-enp2s0 /mnt/
[root@foundation92 network-scripts]# vim ifcfg-enp2s0
DEVICE=enp2s0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.92
PREFIX=24
重启:reboot
再次开机发现:
这里写图片描述
说明不需要网桥设备br0是完全可以的。

实验二:恢复网桥设备(br0)
首先删除/etc/sysconfig/network-scripts目录下无关的文件:
这里写图片描述
[root@foundation92 network-scripts]# vim ifcfg-enp2s0
这里写图片描述
[root@foundation92 network-scripts]# vim ifcfg-br0
这里写图片描述
reboot重启主机后发现:
这里写图片描述
网桥设备又回来了。

新建网桥设备(原始主机没有网桥设备):
原始主机:
这里写图片描述
可以看出没有网桥设备。
此时是可以ping同172.25.254.92的

查看并添加网桥设备:
这里写图片描述
可以看出此时网桥没有绑定网卡设备

先挂掉eth0:
ifconfig eth0 down
ifconfig br0 172.25.254.96 netmask 255.255.255.0 #为br0添加ip
此时ping不通172.25.254.92

将eth0绑定在网桥设备上:
brctl addif br0 eth0
这里写图片描述

删除eth0的ip配置(可以使用nm-connection-editor)

这里写图片描述
此时可以ping通172.25.254.92

再次挂掉eth0:
ifconfig eth0 down
这里写图片描述
又ping不通172.25.254.92

以上实验说明:当主机只有eth0网卡时,可以ping通同一网段的主机,不可以ping通不同网站的主机。添加了网桥设备后,如果只是给定网桥(br0)的ip,是不可以ping通同网段的主机的,必须要绑定主机的其中一个网卡才可以ping通同网段的网络,即使所绑定的网卡设备没有分配ip也可以,但是必须保证所绑定的网卡是up状态,down状态也是不可以ping通的,所以事实验证了网桥值是一种中间设备,一个“桥梁“。

二,bond网络:

1,什么是bond网路?

简单的说就是把多个物理网接口绑定到一起,使他们就像一个网络接口那样运行。
通过使用bonding技术,可以实现网口冗余,负载均衡,可以达到高可用的目的。
这里写图片描述

2,Bond的七种策略:

bond的策略指的是在传输数据包的时候,如何从已经绑定的多个网络接口选择网络接口传输数据包。

常见的mode:
这里写图片描述
1,mode=0,即balance-rr(Round-robin policy 平衡轮询策略)
特点:传输数据包是依次传输(第一个包走第一个接口,第二个包走第二个接口……)此模式下同一会话或者连接的数据包可能使用不同的接口进行传输,到达目的地的数据可能是无序的,而无序到达的数据包需要重新要求本发送,所以会导致网络的吞吐量下降。
此策略有一定的负载均衡和容错能力。
2,mode=1,即:active-backup(主-备份策略)
特点:只有一个设备处于活跃状态,当正在使用的接口挂掉以后,会自动由好的接口顶替。此策略的有点是可以提供网络连接的可用性,但是它的资源利用率却不高,因为只用一个接口处于工作状态。
此策略有一定的容错能力
3,mode=2,即:balance-xor(平衡策略)
特点:基于指定的传输HASH策略传输数据包,传输策略可以自己指定,此策略下,同一个会话的数据包使用同一个接口传输。
此模式提供负载平衡和容错能力。
4,mode=3,即:broadcast(广播策略)
特点:在每个slave借口上传输数据包
5. mode=4,即:(802.3ad)IEEE 802.3ad Dynamic link aggregation(IEEE802.3ad 动态链接聚合)
6. mode=5,即:(balance-tlb)Adaptive transmit load balancing(适配器传输负载均衡)
7. mode=6,即:(balance-alb)Adaptive load balancing(适配器适应性负载均衡)

实验:创建bond0,绑定eth0和eth1两个接口
给实验主即添加两个网卡:eth0,eth1
添加bdon0:本次实验使用的是active-backup模式:
这里写图片描述
因为eth0上本身被分配了ip,这里需要保持两个网卡是未被分配ip的:
这里写图片描述
删除eth0上的ip:
这里写图片描述

这里写图片描述
可以删除两个网卡设备的ip配置文件,这样它们就不会被分配到ip了

将两个网卡绑定在bond0上:
eth0:
这里写图片描述

eth1:
这里写图片描述

测试:
可以使用:watch -n 1 “cat /proc/net/bonding/bond0”来监控bond0的变化。
这里写图片描述
可以看出当前bond0绑定了两个网卡eth0和eth1,而且eth0处于活跃状态

可以使用:ifconfig eth0 down 或者 nmcli connection delete eth0 这两个命令来挂掉其中一个网卡,可以看见另一个网卡会立刻顶替上去,因为次实验选用的bond模式是“active-backup“,即主备模式。

三,team方式绑定网卡(内核级链路聚合)

team最多支持八块网卡的绑定
添加team0:
这里写图片描述
将eth0,eth1,eth2分别绑定在team0上:
这里写图片描述

可以看见三个网卡被绑定在了team0上:
这里写图片描述

测试:可以宕掉其中活跃的网卡,备份的网卡会立即顶替上去。