Q:什么是BOND?
A:
  将多块网卡虚拟成为一块网卡的技术,通过bond技术让多块网卡看起来是一个单独的以太网接口设备并具有相同的ip地址。
 
Q:为什么要配置bond?
A:
  在linux下配置bond,通过网卡绑定技术既能增加服务器的可靠性,又增加了可用网络宽带,为用户提供不间断的网络服务。
 
原理:
  网卡工作在混杂(promisc)模式,接收到达网卡的所有数据包,tcpdump工作用的也是混杂模式(promisc),将两块网卡的 MAC地址修改为相同接收特定MAC的数据帧,然后把相应的数据帧传送给bond驱动程序进行处理。
 

  mode=1:在主备模式下,只有主网卡eth0工作,eth1作为备份网卡是不工作的,只有当一个网络接口失效时(例如交换机掉电等),为了不会出现网络中断,系统会按照配置指定的网卡顺序启动工作,保证机器仍能对外服务,起到了失效保护功能。
  mode=0:在负载均衡模式下,两块网卡都工作,提供两倍带宽。

 
Q:如何配置BOND
A:配置bond的步骤
 
1、选择2个自己需要的网口,查看有哪些网口
[root@studying ~]# ifconfig  -a
 
2、编辑网口的配置文件
[root@studying ~]# cd  /etc/sysconfig/network-scripts
[root@studying network-scripts]# ls  
以ifcfg-开头
例如:eth0的配置文件名是 ifcfg-eth0
 
[root@studying network-scripts]# vim  ifcfg-eth0
[root@studying network-scripts]# cat  ifcfg-eth0
DEVICE=eth0               #网口名eth0
TYPE=Ethernet            #以太网接口
ONBOOT=yes              #LINUX在启动时激活该网口
BOOTPROTO=none    #使用什么协议激活网口
                                               none表示不使用任何协议
                                               static表示设置静态IP
                                               dhcp表示动态获取IP
MASTER=bond0         #指定虚拟网口的名字(主人)
SLAVE=yes                  #备用(从设备)
 
[root@studying network-scripts]# vim  ifcfg-eth1
[root@studying network-scripts]# cat  ifcfg-eth1
DEVICE=eth1               #网口名eth1
TYPE=Ethernet            #以太网接口
ONBOOT=yes              #LINUX在启动时激活该网口
BOOTPROTO=none    #使用什么协议激活网口
                                              none表示不使用任何协议
                                              static表示设置静态IP
                                              dhcp表示动态获取IP
MASTER=bond0         #指定虚拟网口的名字
SLAVE=yes                  #备用
备注:eth0、eth1的MASTER(主人)是bond0,本身是属于从设备作为bond0的SLAVE(备用)
 
[root@studying network-scripts]# vim  ifcfg-bond0
[root@studying network-scripts]# cat  ifcfg-bond0
DEVICE=bond0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.16.11.99
NETMASK=255.255.0.0
GATEWAY=172.16.1.1
 
3、配置bonding
[root@studying network-scripts]# vim  /etc/modprobe.d/dist.conf
末尾增加以下两行
alias bond0 bonding
options bond0 miimon=100 mode=1
#miimon是用来进行链路监测的:miimon=100表示系统每100ms监测一次链路连接状态,如果有一条线路不同就转入另一条线路。
#mode=1表示属于主备模式。
 
4、在/etc/rc.d/rc.local文件中加入如下语句,是系统启动自动运行
ifenslave  bond0  eth0  eth1
#route  add  -net 172.16.0.0  netmask  255.255.0.0  bond0---如果有需要添加该路由
 
5、reboot重启
 
6、如果查看当前哪个网口是主用网口
[root@studying ~]# cat  /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April , )

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms):
Up Delay (ms):
Down Delay (ms): Slave Interface: eth0
MII Status: up
Speed: Mbps
Duplex: full
Link Failure Count:
Permanent HW addr: :0c::9d::ae
Slave queue ID: Slave Interface: eth1
MII Status: up
Speed: Mbps
Duplex: full
Link Failure Count:
Permanent HW addr: :0c::9d::b8
Slave queue ID:
注意:
  ①UUID是唯一的编号,每个网口唯一
  ②两个配置文件中HWADDR不能一样,可以不要,因为会自动读取
  ③网口切换后 ifconfig bond0查看到的MAC地址还是切换前的MAC地址-->为了防止IP对应MAC地址混乱。

Linux如何配置bond的更多相关文章

  1. Linux上配置bond

    http://blog.csdn.net/wuweilong/article/details/39720571 一,配置设定文件[root@woo ~]# vi /etc/sysconfig/netw ...

  2. 配置bond

    注意:配置bond要有两个以上的网口 1.配置文件所有目录:/etc/sysconfig/network-scripts 网口配置文件名规则:以ifcfg-开头,然后接着是网口名 例如:eth0的配置 ...

  3. CentOS配置bond

    Bonding的模式一共有7种: #defineBOND_MODE_ROUNDROBIN       0   (balance-rr模式)网卡的负载均衡模式 #defineBOND_MODE_ACTI ...

  4. [转帖]LINUX网络配置---nmtui&nmcli

    LINUX网络配置---nmtui&nmcli https://blog.51cto.com/13625527/2151853?source=dra 两年前曾经打打印过 几页命令 里面就有 n ...

  5. Linux CentOS 配置Tomcat环境

    一.下载Tomcat 下载Tomcat方式也有两种,可以参考我的前一篇博文Linux CentOS配置JDK环境,这边就不再赘述. 二.在Linux处理Tomcat包 1.创建tomcat文件夹 mk ...

  6. Linux下配置一个VNC服务器

    在Linux下配置一个VNC服务器,并设置2个用户,要求其中一个用户登录时不需要输入密码. 然后在客户端使用ssh+vncview的方式访问. 1确认vnc安装 2配置vncserver 3测试vnc ...

  7. Linux网络配置基础

    linux网络配置常见有两种:桥接模式(Bridge)与NAT模式,还有一种Host-Only模式由于其局限性通常被舍弃就不加以说明了,下面我们介绍下桥接模式(Bridge)和NAT模式. 桥接模式( ...

  8. 在 Linux 上配置一个 syslog 服务器

    syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它. 通过设置一个syslo ...

  9. Linux 目录配置

    一.Linux 目录配置标准:FHS FHS(Filessystem Hierarchy Standard) 的重点在于规范每个特定的目录下应该要放置什么样子的数据. FHS依据文件系统使用的频繁与否 ...

随机推荐

  1. [读书系列] 深度探索C++对象模型 初读

    2012年底-2014年初这段时间主要用C++做手游开发,时隔3年,重新拿起<深度探索C++对象模型>这本书,感觉生疏了很多,如果按前阵子的生疏度来说,现在不借助Visual Studio ...

  2. Archlinux 中安装 LyX

    LyX 是 Latex 的 GUI 界面程序.使用效果类似 Office Word 和 wps.可直接生成 PDF 文件. 我使用的是 LyX + TexLive + XeTeX 组合.近期 Arch ...

  3. 【js数据结构】栈解决佩兹糖果盒问题

    现实生活中栈的一个例子是佩兹糖果盒. 想象一下你有一盒佩兹糖果, 里面塞满了红色. 黄色和白色的糖果, 但是你不喜欢黄色的糖果. 使用栈( 有可能用到多个栈) 写一段程序, 在不改变盒内其他糖果叠放顺 ...

  4. Thrift序列化与反序列化的实现机制分析

    Thrift是如何实现序死化与反序列化的,在IDL文件中,更改IDL文件中的变量序号或者[使用默认序号的情况下,新增变量时,将新增的变量不放在IDL文件的结尾,均会导致Thrift文件的反序列后无法做 ...

  5. Office 365开发概述及生态环境介绍(一)

    原文于2017年3月13日首发于LinkedIn,请参考这个链接 离上一篇文章,很快又过去了两星期的时间.今天抓紧晚上的时间,开始了Office 365开发系列文章的第一篇,我会帮助大家回顾一下过去O ...

  6. gcc下c++的对象模型 (1)

    所有示例代码在如下环境中执行 ubuntu 16.04.4 (64位) gcc version 5.4.0 开启std11 gdb version 7.11.1 1. 空类的大小 定义一个空类A,实例 ...

  7. 面试 -- ListView对其指定的子Item进行单独的刷新

    1,最近在面试题目的时候突然看到了问题"ListView对其指定的子Item进行单独的刷新",当时感觉一脸懵逼,还是第一次听到这个问题,也就是不能使用adapter.notifyD ...

  8. SaaS模式应用之多租户系统开发(单数据库多Schema设计)

    SaaS是Software-as-a-Service(软件即服务)的简称,这边具体的解释不介绍. 多租户的系统可以应用这种模式的思想,将思想融入到系统的设计之中. 一.多租户的系统,目前在数据库存储上 ...

  9. 实验楼-4-Linux文件权限

    $ ls -l /*查看文件权限*/ 每一行格式意思: <文件类型和权限 链接数 所有者 所在用户组 文件大小 上次修改时间 文件名> 文件类型和权限如下图: 解释: 软连接:类似于win ...

  10. zsh 简单介绍

    什么是 zsh,要想解释好这个问题,那么得先说明什么是 shell.不负责任的解释说法就是 shell 就是一个壳.这个壳可不是蜗牛的壳,而是计算机的一个壳,当然也不是计算机的外壳啦,这个壳是相对于计 ...