Linux系统网络属性管理之bond

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设备的配置文件

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

DEVICE=bond0

BOOTPROTO=none

BONDING_OPTS=“miimon=100 mode=0”

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

DEVICE=eth0

BOOTPROTO=none

MASTER=bond0

SLAVE=yes

USERCTL=no

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

miimon是用来进行链路监测的。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路

删除bond0

ifconfig bond0 down

rmmod bonding

详细帮助参看:/usr/share/doc/kernel-doc-version/Documentation/networking/bonding.txt

实验,创建bond0.在vmware虚拟机,首先添加两块网卡,连接模式相同。

blob.png

然后创建一个/etc/sysconfig/network-scripts/ifcfg-bond0
[root@god /etc/sysconfig/network-scripts]#vim ifcfg-bond0 
DEVICE=bond0 #设备名
ONBOOT=yes #开机启动
BOOTPROTO=static #静态地址(必须是)
BONDING_OPTS="miimon=100 mode=0" #链路检测,模式为0
IPADDR=192.168.200.6
PREFIX=24

绑定的两个网卡设备配置

[root@god /etc/sysconfig/network-scripts]#cat ifcfg-eth1 ifcfg-eth2
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0 #主从设置 
SLAVE=yes #主从设置
USERCTL=no
DEVICE=eth2
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0  #主从设置 
SLAVE=yes #主从设置 
USERCTL=no #普通用户不得配置

然后在重启网络服务即可

[root@god /etc/sysconfig/network-scripts]#service network restart
Shutting down interface bond0:                             [  OK  ]
Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface bond0:  Device eth2 does not seem to be present, delaying initialization.
Unable to start slave device ifcfg-eth2 for master bond0.
Determining if ip address 192.168.200.6 is already in use for device bond0...
                                                           [  OK  ]
Bringing up interface eth0:  Determining if ip address 10.1.36.6 is already in use for device eth0...
                                                           [  OK  ]

查看bond0是否完成

[root@god /etc/sysconfig/network-scripts]#ifconfig
bond0     Link encap:Ethernet  HWaddr 3E:6E:AC:F7:A9:16 #配置成功,现在两个网卡虚拟成一个接口从而达到复杂均衡的效果!   
          inet addr:192.168.200.6  Bcast:192.168.200.255  Mask:255.255.255.0
          UP BROADCAST MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
eth0      Link encap:Ethernet  HWaddr 00:0C:29:00:07:39  
          inet addr:10.1.36.6  Bcast:10.255.255.255  Mask:255.0.0.0
          inet6 addr: fe80::20c:29ff:fe00:739/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:16024 errors:0 dropped:0 overruns:0 frame:0
          TX packets:872 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1436100 (1.3 MiB)  TX bytes:115537 (112.8 KiB)
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)

原创文章,作者:ladsdm,如若转载,请注明出处:http://www.178linux.com/47544

(0)
ladsdmladsdm
上一篇 2016-09-18 19:54
下一篇 2016-09-18 20:12

相关推荐

  • linux启动流程

    linux组成 Linux: kernel+rootfskernel: 进程管理、内存管理、网络管理、驱动程序、文件系统、安全功能 rootfs:程序和glibc库:函数集合, function, 调用接口(头文件负责描述)过程调用:procedure,无返回值函数调用:function程序:二进制执行文件 内核设计流派:单内核(monolithic ker…

    2018-01-01
  • 浅谈Openssl与私有CA搭建

        随着网络技术的发展、internet的全球化,信息共享程度被进一步提高,各种基于互联网的应用如电子政务、电子商务日益增多并愈加被人们工作和生活依赖。但是,由于互联网的开放性和通用性,网络上的信息是对所有人公开的,这就使网络上的数据传输过程中存在被窃听、篡改等安全隐患,并极有可能给用户带来不可估量的损失。为此,各种保证数据在互联网上…

    Linux干货 2015-06-04
  • Linux源程序包相关概念整理

    一、      Linux源程序包介绍 1)    linux源程序包基础 1.         遵循常用开源协议:BSD、Apache Licence 2.0、GPL、LGPL、MIT 2.&nbs…

    系统运维 2015-09-22
  • N28-第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。
    2、取出最后登录到当前系统的用户的相关信息。
    3、取出当前系统上被用户当作其默认shell的最多的那个shell。
    4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
    5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
    6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
    7、显示/var目录下一级子目录或文件的总个数。
    8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
    9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
    10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
    (1)、创建组distro,其GID为2016;
    (2)、创建用户mandriva, 其ID号为1005;基本组为distro;
    (3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
    (4)、给用户mageia添加密码,密码为mageedu;
    (5)、删除mandriva,但保留其家目录;
    (6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
    (7)、修改slackware的默认shell为/bin/tcsh;
    (8)、为用户slackware新增附加组admins;

    2017-12-17
  • System作业

    1、求每班总成绩和平均成绩 [root@Centos7 bin]# awk '!/^name/{a[$2]++;b[$2]+=$3}END{for(i in a){print i,b[i],b[i]/a[i]}}' f1 4 100 50 5&nbs…

    Linux干货 2016-09-20
  • 网络接口配置bonding

    Bonding 就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。 Bonding的工作模式 Mode 0 (balance-rr)     轮转(…

    Linux干货 2016-09-09