网络接口配置-bonding

bonding

     就是将多块网卡绑定同一个IP地址对外提供服务,可以实现高可用或是负载均衡,当 然,直接给两块网卡设置同一个IP地址是不可能的,通过bonding,虚拟一块网卡对外提供链接,这样即使一块网卡坏了可以经行自动切换,而不会影响业务的正常的通信

Bonding的工作模式

mode 0

轮转(round-robin)策略:从头到尾顺序的在每一个slave接口上面发送数据包。本模式提供负载均衡和容错的能力(负载均衡时需要交换的硬件作支撑)物理网卡被修改为相同的mac地址

mode 0bond所绑定的网卡的IP都被修改成相同的mac地址,如果这些网卡都被接在同一个交换机,那么交换机的arp表里这个mac地址对应的端口就有多 个,那么交换机接受到发往这个mac地址的包应该往哪个端口转发呢?正常情况下mac地址是全球唯一的,一个mac地址对应多个端口肯定使交换机迷惑了。所以 mode0下的bond如果连接到交换机,交换机这几个端口应该采取聚合方式(cisco称为 ethernetchannelfoundry称为portgroup),因为交换机做了聚合后,聚合下的几个端口也被捆绑成一个mac地址.我们的解 决办法是,两个网卡接入不同的交换机即可。

 blob.png

mode 1 active-backup

活动备份策略:在绑定中只有一个slave被激活,当且仅当活动的slave接口失败时才会激活其他slave。为了避免交换机发生混乱此时绑定的mac地址只有一个外部端口上可见

blob.png

 mode 3broadcast

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

Bonding 配置

创建banding 设备的配置文件ifcfg-bond0

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

      DEVICE=bond0

      BOOTPROTO=none

      BONDING_OPTS= miimon=100 mode=0//这里的mode就是改变mode

创建bind的网卡eth0

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

DEVICE=eth0

BOOTPROTO=none //激活此接口时使用什么协议来配置接口属性,常用的有dhcp bootp static none

MASTER=bond0

SLAVE=yes

USERCTL=no

创建bind的网卡eth1

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

DEVICE=eth0

BOOTPROTO=none

MASTER=bond0

SLAVE=yes

USERCTL=no

网络接口配置-bonding     blob.png

  mode=6平衡负载模式,有自动备援,不必”Switch”支援及设定。mode6模式下无需配置交换机,因为                 做bonding的这两块网卡是使用不同的MAC地址。

网卡别名

我们都知道在生活中有一个这样一个场景,我们出差到其他地方或是没有那么方便去接入一个有线网络的时候(因为流动性很大,不可能为你提供特定的一个有线网络),我们能用到的只有无线网,但是是回到家里又的自己改回静态网络,又的手工分配地址,这时候该怎么办呢?在windows中我们会这样做,利用windows提供的备用设备这一项来进行设定,把备用设备改成家里的静态地址就可以满足上面的场景。但是在linux中我们依然有解决办法,这的用到网卡别名。

如图所示,把网卡etc1设置成自动获取地址,把网卡别名设置成静态地址,同样也可以满足上述场景。值得一说的是只能把备用地址设置成静态地址,把etc1网卡设置成动态地址。在linux中有更强大的功能,可以把一张网卡地址设置有多个网卡别名,而且这几个网卡地址是同时生效的,这远远比windows灵活的多

linux实现方式如下图:

网络接口配置-bonding blob.png

具体配置:

  blob.png

   blob.png

windows实现方式:如下图

  blob.png

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

(0)
yywan1314yywan1314
上一篇 2016-09-05 08:48
下一篇 2016-09-05 08:49

相关推荐

  • Ubuntu 葵花宝典入门篇——要练此功,可能得自宫?

        此文章给初入ubuntu的小伙伴们写一篇装机篇和使用心得。第二期会给小伙伴介绍软件安装篇。如题目所说,乌班图确实是葵花宝典,练好了天下无敌。只是如果要安装UBUNTU系统,只是在虚拟机上跑跑是不够的,你必须在实际的桌面环境和服务器环境上才能体会到它的运行方式,而桌面环境和服务器环境几乎差不多。所以安装桌面版可以更好的理解…

    Linux干货 2017-03-26
  • Linux基础知识总结

    Linux基础知识 计算机系统 计算机硬件组成 1.控制器:计算机系统的控制中心,协调各部分工作,保证计算机按照预先规定的目标和步骤进行操作及处理。 2.运算器:对数据进行算数运算,逻辑判断以及数据的比较、移位等操作。 3.存储器:存取程序和各种数据信息。  4.输入设备:把信息,如数字、文字、图像等转换为数字形式的“编码”的设备(键盘,扫描仪) …

    2017-05-18
  • 计算机的组成及其功能

    计算机的组成及其功能 计算机由五部分组成 运算器 实现算术运算和逻辑运算(和控制器组成CPU) 控制器 控制总线的使用权限,完成寻址和控制对内存当中的访问权限是做读访问还是写访问 存储器 内存,RAM(Random Access Memory) 输入(Input) 下指令,提供数据 输出(Output) 输出数据加工的结果

    2018-02-22
  • N25-第六周作业

    第6周作业 — 请详细总结vim编辑器的使用并完成以下练习题 vim是模式化的全屏文本编辑器。vim分为三种模式:分别是编辑模式;输入模式;末行模式; 打开文件的方式有:vim +# FILE打开文件FILE并把光标定位到#行的行首;vim +/PATTERN FILE打开文件并让光标处于第一个被PATTERN匹配到的行的行首。(支持正则表达式)…

    Linux干货 2017-02-22
  • KVM部署及简单使用

    KVM特点 KVM必须在具备Intel VT或AMD-V功能的x86平台上运行。KVM包含一个为处理器提供底层虚拟化,可加载的核心模块kvm.ko(kvm-intel.ko或kvm-AMD.ko)。使用一个经过修改的QEMU(qemu-kvm),作为虚拟机上层控制和界面。 由于KVM仅是一个简单的虚拟化模块,所以它的内存管理没有自我实现,需借助于Linux内…

    Linux干货 2016-02-14
  • 马哥教育网络班20期+第5周课程练习

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; grep "^[[:space:]]\+.*" /boot/grub/grub.conf   2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; grep&nb…

    Linux干货 2016-07-12

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-05 11:43

    写的不错,图文并貌,有理论也有实践。继续保持。