一、网络拓扑

组建服务器冗余网络_bond

PS:以broadcom 网卡为例,交换机端口模式access。

二、Windows 系统

BASP(Broadcom Advanced Server Program)简介

BASP 是一个用于 Windows 2000、Windows Server 2003、NetWare 和 Linux 的 Broadcom 中间驱动程序,可提供负载平衡、容错和 VLAN 功能。这些功能是通过创建由多个 NIC 接口所组成的分组(虚拟适配器)来提供的。一个分组可由一到八个 NIC 接口组成,每个接口可被指定为主接口或备用* 接口。分组中所有的主接口通过发送和接收一部分总通信量参与负载平衡操作。如果所有主接口断开链路连接,则备用接口将接替它们工作。可将 VLAN 添加到分组中,并允许多个 VLAN 具有不同的 VLAN ID。每个添加的 VLAN 需要创建一个虚拟适配器。负载平衡和容错功能支持任何第三方 NIC 适配器。VLAN 只支持 Broadcom NIC 适配器。

1、 安装驱动

组建服务器冗余网络_bond_02

PS:必须得安装.NET 2.0

2、 安装好驱动后在任务栏出现如下图标

组建服务器冗余网络_休闲_03

3、 双击启动应用程序

组建服务器冗余网络_BASP_04

组建服务器冗余网络_bond_05

4、 选择Team Management

组建服务器冗余网络_网络_06

5、 右键新建Team

组建服务器冗余网络_BASP_07

组建服务器冗余网络_休闲_08

6、 输入命名(自定),这里写balance

组建服务器冗余网络_休闲_09

7、 选择网卡组合模式

组建服务器冗余网络_bond_10

如上图所示有三种模式:SLB(Smart Load Balance?(智能负载平衡)、802.3ad(以太网链路聚合)和通用链路聚集(GEC/FEC,开放式中继)

文档中选择的是SLB,SLB将在两块网卡上分担流量且一块网卡断开时会将流量全部导入到另一块网卡。

8、 将网卡加入Team

组建服务器冗余网络_冗余_11

组建服务器冗余网络_bond_12

组建服务器冗余网络_冗余_13

9、 是否配置逻辑上监控

组建服务器冗余网络_休闲_14

10、 是否配置VLAN,上连交换机的端口是trunk模式时需要配置。

组建服务器冗余网络_休闲_15

11、 最后点完成

组建服务器冗余网络_bond_16

12、 完成后如下图所示

组建服务器冗余网络_休闲_17

在网上邻居也会发现多了一块网卡,且新增网卡两网卡容量之和

组建服务器冗余网络_BASP_18

13、 测试

测试前先注意网卡的MAC信息,如下图所示,balance网卡的MAC和一块网卡的MAC一样的

Balance网卡MAC

组建服务器冗余网络_休闲_19

两块网卡MAC

组建服务器冗余网络_BASP_20

组建服务器冗余网络_BASP_21

当我停用与balace相同Mac的物理网卡时,会发现balace网卡的MAC不变,另一块物理网卡的MAC会变成与balace一样。如下图所示:

组建服务器冗余网络_bond_22

14、 使用

在balance上配置IP,另外两块物理网卡不用也不能配置IP,所以最好清除IP配置信息。

三、Linux系统(CentOS 5.5 i386)

linux下双网卡绑定众所周知,用到bonding技术。

The Linux bonding driver provides a method for aggregatingmultiple network interfaces into a single logical "bonded" interface.The behavior of the bonded interfaces depends upon the mode; generally speaking, modes provide either hot standby or load balancing services.Additionally, link integrity monitoring may be performed.

1、 加载bonding支持模块

编辑/etc/modprobe.conf,添加如下最后两行,表示bond0使用bonding技术。

组建服务器冗余网络_BASP_23

下面对两个选项做说明:

Mode:目前支持有6种,分别是0(负载均衡轮询)、1(主备)、2(源MAC或目标MAC hash负载均衡)、3(广播策略)、4(802.3ad)、5(balance-tlb)和6(balance-alb)

Miimon:监控网卡物理连接状态的周期,单位是秒,默认是0,建议100。当然还提供了另一咱监控网卡连接状态的的选项是arp_interval(详见后面的连接)

2、 修改网卡配置文件

新建网卡bond0配置文件ifcfg-bond0

组建服务器冗余网络_bond_24

修改二块网卡ifcfg-eth0

组建服务器冗余网络_冗余_25

最后重启网络 service network restart

3、 测试

断开网卡eth0的连接,如下图所示,bond0连接状态正常,并且未丢包

组建服务器冗余网络_bond_26

组建服务器冗余网络_冗余_27

其它详细信息参考链接

http://www.kernel.org/doc/Documentation/networking/bonding.txt