|
【背景介绍】 Linux双网卡绑定 就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。其实这项 技术在Sun和Cisco中早已存在,被称为Trunking和Etherchannel技术,在Linux的2.4.x的内核中也采用这这种技术,被称为bonding。bonding技术的最早应用是在集群——beowulf上,为了提高集群节点间的数据传输而设计的。 bonding 的原理 什么是bonding需要从网卡的混杂(promisc)模式说起。我们知道,在正常情况下,网卡只接收目的硬件地址(MAC Address)是自身Mac的以太网帧,对于别的数据帧都滤掉,以减轻驱动程序的负担。但是网卡也支持另外一种被称为混杂promisc的模式,可以接收网络上所有的帧,比如说tcpdump,就是运行在这个模式下。bonding也运行在这个模式下,而且修改了驱动程序中的mac地址,将两块网卡的Mac地址改成相同,可以接收特定mac的数据帧。然后把相应的数据帧传送给bond驱动程序处理。 【需求分析】 实验的操作系统:Redhat Linux Enterprise 5.4 绑定的前提条件: ①芯片组型号相同,网卡具备自己独立的BIOS芯片。 ②Eth0,Eth1两块网卡Host-only于同一网段内。 【实现过程】 1.编辑虚拟网络接口bond0配置文件,指定网卡IP . cp /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-bond0 vim /etc/sysconfig/ network-scripts/ ifcfg-bond0
2.编辑网络接口Eth0,Eth1配置文件.
3.编辑 /etc/modprobe.conf文件,以使系统在启动时加载bonding模块,对外虚拟网络接口设备为 bond0
4.编辑/etc/rc.d/rc.local开机脚本,指定主备关系,并开机启动。
5.重新启动虚拟机。 【验证分析】 1.ifconfig查看绑定状态。
2.dmesg查看链路状态。
3.cat查看网卡绑定状态。
4.宿主机ping绑定网卡测试。
5.动态测试主备状态自动切换。
【测试分析】 ①测试:宕掉Eth0
②测试:宕掉Eth1
【扩展介绍】 双网卡绑定实现LB: ①编辑 /etc/modprobe.conf文件,将模式改为0(LB负载均衡模式) 注:在mode=0 负载均衡工作模式,他能提供两倍的带宽. ②重启虚拟机。
|