CentOS7 实现网卡绑定

Bonding ;理念
将多块网卡绑定同一IP地址对外提供服务,可以实现高可用 或者负载均衡。直接给两块网卡设置同一IP地址是不可以的 。通过bonding,虚拟一块网卡对外提供连接,物理网卡的 被修改为相同的MAC地址
banding工作模式
Mode 0 (balance-rr) 轮转(Round-robin)策略:
从头到尾顺序的在每一个slave 接口上面发送数据包。本模式提供负 载均衡和容错的能力
Mode 1 (active-backup) 活动-备份(主备)策略:
只有一个slave被激活,当且仅当活动 的slave接口失败时才会激活其他slave。为了避免交换机发生混 乱此时绑定的MAC地址只有一个外部端口上可见
Mode 3 (broadcast) 广播策略:
在所有的slave接口上传送所有的报文,提供容错能力
active-backup、balance-tlb 和 balance-alb 模式不需要 交换机的任何特殊配置。其他绑定模式需要配置交换机以便 整合链接。如:Cisco 交换机需要在模式 0、2 和 3 中使用 EtherChannel,但在模式4中需要 LACP和 EtherChannel
实战
首先确认两块网卡是否在一个网络
第一步:添加bonding接口
[root@centos7 15:25:50 network-scripts]#nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.132.29/24 ipv4.dns 114.114.114.114 ipv4.gateway 192.168.136.0
命令解析:nmcli connection add 这个是创建命令必须带的
type bond 指定类型
con-name bond0 可以认为是创建一个文件名
ifname bond0 接口名字
mode active-backup 指定模式
ipv4.method (manual | auto) 如果是manual 表示创建静态地址 需要制定ipv4地址 ,网关 dns
如果是 auto的话表示动态地址后面ipv4 ,网关,dns都不需要指定
ipv4.addresses 指定ipv4静态地址
ipv4.dns 114.114.114.114 dns服务器
ipv4.gateway 192.168.136.0 网关
值得注意的是这条命令会自动创建配置文件,所以就不怕重启机器这些配置会丢失,
第二步:添加两个从属接口
[root@centos7 15:26:18 network-scripts]#nmcli connection add con-name bond-slave0 type bond-slave ifname eth0 master bond0
[root@centos7 15:28:16 network-scripts]#nmcli connection add con-name bond-slave1 type bond-slave ifname eth1 master bond0
自动新建了三个配置文件
111
CentOS7 实现网卡绑定
第三步 : 启动绑定
注意:要启动绑定,则必须首先启动从属接口
1#,[root@centos7 15:46:00 network-scripts]#nmcli connection up bond-slave0
2#,[root@centos7 15:46:28 network-scripts]#nmcli connection up bond-slave1
3#,[root@centos7 15:46:32 network-scripts]#nmcli connection up bond0
在这个文件中能看到binding网卡的详细状态
[root@centos7 15:51:38 network-scripts]#cat /proc/net/bonding/bond0
CentOS7 实现网卡绑定clipboard
ip命令也能看得出来eth0,1网卡都不工作了,
333CentOS7 实现网卡绑定
clipboard
CentOS7 实现网卡绑定
删除bonding设备
第一步:down掉bonding设备
[root@centos7 16:03:10 network-scripts]#nmcli connection down bond0
第二步:卸载binding驱动模块
lsmod | grep bonding 可以过滤出来bonding模块,默认lsmod会显示所有系统安装的驱动模块
CentOS7 实现网卡绑定
卸载:
[root@centos7 16:10:29 network-scripts]#modprobe -r bonding
第四步:删除相关配置文件
nmcli 命令也支持删除功能 ,默认就会把对应的配置文件也删掉 ,可以说非常方便,
[root@centos7 16:13:17 network-scripts]#nmcli connection delete bond0
[root@centos7 16:15:05 network-scripts]#nmcli connection delete bond-slave0
[root@centos7 16:15:05 network-scripts]#nmcli connection delete bond-slave1
bond0,bond-slave0, bond-slave1 三个配置文件被自动删掉了
555
CentOS7 实现网卡绑定
最后把原来的网卡在up起来就可以回到原来的状态了。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/90401

(1)
xiaoli@xiaoli@
上一篇 2017-12-19 16:36
下一篇 2017-12-19

相关推荐

  • Linux发展史

    Linux发展史 摘要:因为学习linux过程中对整个linux发展历史只有一些模糊的理解,以本文来对linux发展史进行梳理来加深学习。   一、linux是什么 linux就是一套操作系统,如下图操作系统就是内核与系统调用接口那 Linux只是一套操作系统并不包含其他应用程序。 Linux提供了一个完整的操作系统当中最底层的硬件控制和资源管理的…

    Linux干货 2016-10-14
  • Linux系统目录结构

    root 管理员家目录home 普通用户家目录bin 系统启动和运行可能会用到的普通命令sbin 管理类命令proc 虚拟文件系统,由内核参数映射而来usr 系统软件资源存放位置include 存放C/C++头文件的目录lib 库文件lib64 64位系统库文件tmp 临时文件目录boot 引导加载器所需文件,系统所需图片保存于此etc 配置文件sys 虚拟…

    Linux干货 2018-03-03
  • Linux基础命令之文本命令

    关于文本的命令:     1.文件查看命令:        a.cat:查看文件,实现参数给的内容一个个显示出来            -n:显示行号(显示的空行的行号)          …

    Linux干货 2016-08-07
  • Linux的发展史

    前言: Linux是什么?    我们知道Linux这玩意儿是在计算机上面运作的,所以说Linux就是一组软件。问题是这个软件是操作系统还是应用程序? 且Linux可以在哪些种类的计算机上面运作?而Linux源自哪里?为什么Linux 还不用钱?这些我们都得来谈一谈先!      计算机系…

    Linux干货 2016-10-13
  • Linux学习 Grep详则。

    grep 功能说明:查找文件里符合条件的字符串。 语  法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][–help][范本样式][文件或目录&…

    Linux干货 2017-07-24
  • JoSQL内存数据库远程代码执行漏洞(含EXP)

    JoSQL全称SQL for Java Objects,提供了应用SQL语句的Java对象的集合的能力开发,JoSQL提供了搜索,排序,group等对Java对象的集合进行类似SQL的查询应该应用的功能。 例如,查找所有在2004年内修改过的html文件: SELECT * FROM   java.io.File WH…

    Linux干货 2015-03-06