首页 > 代码库 > 虚拟网卡实验:网卡别名 与 bond多网卡模式

虚拟网卡实验:网卡别名 与 bond多网卡模式

 一、网卡别名:多IP 绑定一个 Interface

        将多个IP地址绑定到一个NIC上

           网卡别名:

                eth0:1

                eth0:2

                eth0:3

        示例:单网卡多IP

          1.关闭NetworkManager服务

            service NetworkManager stop

            service NetworkManager status  查看启动状态

            chkconfig NetworkManager off   关闭开机自启动

            

          2.在/etc/sysconfig/network_scripts 下,建立别名配置文件ifcfg-ethX:xxx

            (ethX 名字,应以实际名字为准)

               注意: 必须使用静态联网

            配置别名文件内容:

            DEVICE=eth0:0

            IPADDR=10.10.10.10

            NETMASK=255.0.0.0

            (PREFIX=16)

            ONPARENT=yes   # 是否随父网卡启动

            原始网卡配置文件中,只要如下项目即可:

            DEVICE=eth0

            BOOTPROTO=dhcp | none   #  开机自启动dhcp

                  若为none ,需要继续添加IP等信息

            3 service network restart  即可生效

            (详细参考/usr/share/doc/initscripts-*/sysconfig)

            技术分享

 


二、 多网卡绑定一个Ip –bonding

         Bonding

            就是将多块网卡绑定同一IP地址对外提供服务,可以实现高

            可用或者负载均衡。当然,直接给两块网卡设置同一IP地址

            是不可能的。通过bonding,虚拟一块网卡对外提供连接,

            物理网卡的被修改为相同的MAC地址。

         bonding 工作模式:

             Mode 0 (balance-rr)

            轮转( Round-robin)策略:从头到尾顺序的在每一个slave

            接口上面发送数据包。本模式提供负载均衡和容错的能力

             Mode 1 (active-backup)

            活动–备份(主备)策略:在绑定中,只有一个slave被激活。

            当且仅当活动的slave接口失败时才会激活其他slave。为了

            避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上

            可见

             Mode 3 (broadcast)

            广播策略:在所有的slave接口上传送所有的报文。本模式提供

            容错能力。

            

        bonding 示例:

            以mode 1 为例 ,实现双网卡高可用负载均衡

            注意: 需要停用 NetworkManager

            1.创建bonding设备的配置文件

             /etc/sysconfig/network-scripts/ifcfg-bond0

                DEVICE=bond0

                BOOTPROTO=none

                BONDING_OPTS= “miimon=100 mode=0”

                IPADDR=10.1.249.88

                PREFIX=16

                GATEWAY=10.1.0.1

                DNS1=8.8.8.8

            

             /etc/sysconfig/network-scripts/ifcfg-eth0

                DEVICE=eth0

                BOOTPROTO=none

                MASTER=bond0

                SLAVE=yes

                USERCTL=no


             /etc/sysconfig/network-scripts/ifcfg-eth1

                DEVICE=eth1

                BOOTPROTO=none

                MASTER=bond0

                SLAVE=yes

                USERCTL=no

                miimon 是用来进行链路监测的。如果miimon=100,那么系

                统每100ms 监测一次链路连接状态,如果有一条线路不通

                就转入另一条线路


         查看bond0状态: /proc/net/bonding/bond

            技术分享

           

            [root@centos68NO1 ~]# ifconfig

                bond0     Link encap:Ethernet  HWaddr 00:0C:29:E4:F7:56  

                inet addr:10.1.249.188  Bcast:10.1.255.255  Mask:255.255.0.0

                inet6 addr: fe80::20c:29ff:fee4:f756/64 Scope:Link

                UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1

                RX packets:73837 errors:0 dropped:0 overruns:0 frame:0

                TX packets:450 errors:0 dropped:0 overruns:0 carrier:0

                collisions:0 txqueuelen:0

                RX bytes:8117468 (7.7 MiB)  TX bytes:40308 (39.3 KiB)


                eth1      Link encap:Ethernet  HWaddr 00:0C:29:E4:F7:56  

                inet6 addr: fe80::20c:29ff:fee4:f756/64 Scope:Link

                UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1

                RX packets:77308 errors:0 dropped:0 overruns:0 frame:0

                TX packets:440 errors:0 dropped:0 overruns:0 carrier:0

                collisions:0 txqueuelen:1000

                RX bytes:9137117 (8.7 MiB)  TX bytes:39382 (38.4 KiB)


                eth2      Link encap:Ethernet  HWaddr 00:0C:29:E4:F7:56  

                UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1

                RX packets:16056 errors:0 dropped:0 overruns:0 frame:0

                TX packets:79 errors:0 dropped:0 overruns:0 carrier:0

                collisions:0 txqueuelen:1000

                RX bytes:1632129 (1.5 MiB)  TX bytes:7334 (7.1 KiB)

            (可以测试物理断开其中一个网卡,测试高可用行)

                

         关于bonding的详细配置请参照

            /usr/share/doc/kernel-docversion/Documentation/networking/bonding.txt


虚拟网卡实验:网卡别名 与 bond多网卡模式