网络是主机之间交互的必备条件。联网就是将主机互联来形成网络,使得网络中的主机得以交换信息。
现在网络上广泛应用的网站栈就是TCP/IP协议栈,它给每个节点都分配了一个用作标识的唯一的IP地址。而这里面又被划分成了很多的层次,每个层次之间都有不同的作用。通过这些参数就可以实现主机之间的精确传输数据。
TCP服务是一个高可靠的数据传输协议,它是工作在传输层面的全双工连接协议,它具有错误检查机制,具有确认机制,当数据传输失败后它可以使数据恢复、重传。当然这些都是面对网络链路的层面。如果是面对物理层面的硬件损坏,这些就起不了太大的作用了。
所以在这里就来介绍一种单网址的多网卡绑定机制,他就叫做bonding。它就是将多块网卡绑定同一IP 地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP 地址是不可能的。通过bonding ,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC 地址。
Bonding具有多种工作模式。我们把它分成了mode0-6,今天就来搭配一个mode0(round-robin轮转模式)。它是从头到尾顺序的在每一个slave接口上面发送数据包。本模式提供负载均衡和容错的能力。
第一步:编写bond的配置文件,这个文件都放置在/etc/sysconfig/network-scripts/这个目录里。
直接用命令编写这个目录# vim /etc/sysconfig/network-scripts/ifcfg-bond0
这一步我们只是确定了bond的模式和配置了这个服务的IP地址
第二步就需要我们来给bond配置网卡设备了,先确定好两块网卡设备的名称
编写第一块网卡 # vim /etc/sysconfig/network-scripts/ifcfg-eth0
编写第二块网卡# vim /etc/sysconfig/network-scripts/ifcfg-eth1
第三步:如果是在图形界面系统里,一定记得要关闭图形化下的网络管理服务
# service NetworkManager stop
第四步:重启网络服务
# service network restart
到这里这个服务已经搭建完成 。
下面就来看看这个服务的原理。它是将两个网卡的MAC地址虚拟成同一个地址,从而实现MAC地址欺骗来完成这个工作的。
所以当这两个网卡之中的一个出现故障时,另一块网卡就会开始工作。重而来实现数据传输的高可靠性。
我们来看看这两块网卡的工作情况是怎样的
当然,这样的模式不容易给你看出差别。下面再来介绍另一种模式。mode3(broadcast)广播模式,它是将同样的数据通过两块网卡都转发进来,也就是同样的数据他会接收两次。
来看看mode3的配置方式
它与mode0的配置方法相同,只需要更改配置文件中的模式选项就可以了,其他步骤相同
# vim /etc/sysconfig/network-scripts/ifcfg-bond0
其他步骤同mode0
配置完成后我们就来看看他的数据传输模式吧
这种模式下每个数据包它都会接收两遍,所以在bond模式下大大提高了数据的传输高可靠性。通过物理和链路的两种模式的保证,网络数据的传输就得到了保证
原创文章,作者:gong,如若转载,请注明出处:http://www.178linux.com/85065