双网卡绑定:

1. 首先确定是linux是否支持bonding



[root@ogg02 ~]#  modinfo bonding



 如果没有消息返回,说明内核不支持bonding,需要重新编译内核



 



2. 检查ifenslave工具是否存在



[root@ogg02 ~]#  which ifenslave
/sbin/ifenslave






 如果没有ifenslave,也需要把它单独编译出来



下面将eh0和eth1网卡设备绑定为一个网卡,绑定名称为bond0






网卡绑定:  将两块物理网卡绑定成一个逻辑网卡(bonding技术)
负载均衡(LB)
高可用模式(HA)


1.新建/etc/sysconfig/network-scripts/ifcfg-bond0文件
[root@server network-scripts]#vi ifcfg-bond0 
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.56.44
NETMASK=255.255.255.0




2.更改/etc/sysconfig/network-scripts/ifcfg-eth0网卡属性
DEVICE=eth0
ONBOOT=yes
MASTER=bond0
SLAVE=yes

3.更改/etc/sysconfig/network-scripts/ifcfg-eth1网卡的属性
DEVICE=eth1
ONBOOT=yes
MASTER=bond0
SLAVE=yes




4.编辑/etc/modprobe.conf文件,加入以下内容
alias bond0 bonding
options bond0 miimon=100 mode=1
说明:
mode指定了bond0的工作模式,常用的是0和1,0表示负载均衡方式,1表示主从方式,可根据需要自行配置。
常用的为0,1两种。mode=0表示 load balancing (round-robin)为负载均衡方式,两块网卡都工作。
mode=1表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一块网卡工作,另一块做备份。
bonding只能提供链路监测,即从主机到交换机的链路是否接通。
如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用。
 miimon是用来进行链路监测的。比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路。

5. 重启网卡



[root@ogg02 network-scripts]# service network restart


6. 完成后重启系统,ping 192.168.56.44 -t 测试。






7. 查看ip状态



[root@ogg02 ~]# ifconfig
bond0     Link encap:Ethernet  HWaddr 08:00:27:22:B3:0B 
          inet addr:192.168.56.44  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe22:b30b/64 Scope:Link
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:2591232 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5693383 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1061556320 (1012.3 MiB)  TX bytes:7298514969 (6.7 GiB)

eth0      Link encap:Ethernet  HWaddr 08:00:27:22:B3:0B 
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:2417371 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5691525 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1049012127 (1000.4 MiB)  TX bytes:7298123069 (6.7 GiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:22:B3:0B 
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:173861 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1859 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:12544193 (11.9 MiB)  TX bytes:392054 (382.8 KiB)

可以看到此3块网卡的mac地址 HWaddr 是一样的。









8. 查看bonding状态和网卡信息 : watch  cat /proc/net/bonding/bond0




Ethernet Channel Bonding Driver: v3.4.0 (October 7, 2008)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 08:00:27:22:b3:0b    --可以看到mac地址其实是不一样的

Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 08:00:27:a8:e2:14    --可以看到mac地址其实是不一样的






active-backup: 主备模式






ping 192.168.56.44  –t      #一直测试网络的连通性查看结果






[root@ogg02 ~]# ping 192.168.56.44
PING 192.168.56.44 (192.168.56.44) 56(84) bytes of data.
64 bytes from 192.168.56.44: icmp_seq=1 ttl=64 time=0.009 ms
64 bytes from 192.168.56.44: icmp_seq=2 ttl=64 time=0.015 ms






9. 将eht0 网卡down 掉,再查看网卡状态(在虚拟机上disconnect不是ifconfig eth0 down)






 watch  cat /proc/net/bonding/bond0




Ethernet Channel Bonding Driver: v3.4.0 (October 7, 2008)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: down    eth0状态为down
Link Failure Count: 0
Permanent HW addr: 08:00:27:22:b3:0b   

Slave Interface: eth1
MII Status: up      eht1状态为up
Link Failure Count: 0
Permanent HW addr: 08:00:27:a8:e2:14