网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术。

生产环境服务器为:DELL

网卡为:光纤

bond需要修改涉及的网卡配置文件

/etc/network-scripts/ifcfg-em1
/etc/network-scripts/ifcfg-em2

  

需要新增配置文件

/etc/network-scripts/ifcfg-bond0

  

为了方便快速配置,我将配置文件放到了U盘(U盘中需要四个文件,配置好的ifcfg-em1,ifcfg-em2,ifcfg-bond0,脚本cfg.sh)中,通过脚本形式快速配置。

ifcfg-em1内容如下

DEVICE=em1
NAME=em1
HWADDR=80:18:44:ea:8b:b0
TYPE=Ethernet
ONBOOT=yes
MASTER=bond0
SLAVE=yes
NM_CONTROLLED=no
BOOTPROTO=none
USERCTL=no

  

ifcfg-em2内容如下

DEVICE=em2
NAME=em2
HWADDR=80:18:44:EA:8B:B1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=none
USERCTL=no
MASTER=bond0
SLAVE=yes

  

ifcfg-bond0内容如下

DEVICE=bond0
TYPE=Bond
NAME=bond0
BOOTPROTO=none
ONBOOT=yes
IPADDR=10.16.28.216
PREFIX=24
USERCTL=no
BONDING_MASTER=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
BONDING_OPTS="mode=4 miimon=100 downdelay=200 updelay=200 lacp_rate=1 xmit_hash_policy=2"
BONDING_SLAVE_0=em1
BONDING_SLAVE_1=em2
NM_CONTROLLED=no
GATEWAY=10.16.28.4

  

cfg.sh脚本内容如下

#脚本需要两个参数,本机需要配置的IP地址,本机的网关地址
ip=$1
gw=$2
#判断是否给定参数,执行脚本时没有给定参数,脚本退出
if [ $ip = '' -o $gw = '' ]
then
echo 'ip or gateway wrong'
exit
fi
#备份设备上原来的网卡信息,我的网卡名称为em1和em2
cp /etc/sysconfig/network-scripts/ifcfg-em1 /etc/sysconfig/network-scripts/ifcfg-em1.bak
cp /etc/sysconfig/network-scripts/ifcfg-em2 /etc/sysconfig/network-scripts/ifcfg-em2.bak
#将准备好的网卡配置文件拷贝到指定目录
cp /media/OMSA71-CENT/boot/ifcfg-* /etc/sysconfig/network-scripts/
#将原网卡hwaddr信息恢复到配置文件
cd /etc/sysconfig/network-scripts/
sed -i s/`grep HWADDR ifcfg-em1`/`grep HWADDR ifcfg-em1.bak`/ ifcfg-em1
sed -i s/`grep HWADDR ifcfg-em2`/`grep HWADDR ifcfg-em2.bak`/ ifcfg-em2
#替换配置文件中ip地址信息为本机ip地址
sed -i s/10.16.28.216/$ip/ ifcfg-bond0
#替换配置文件中网关地址信息为本机网关地址
sed -i s/10.16.28.4/$gw/ ifcfg-bond0
#查看更改后的配置信息
grep 10.16.28 ifcfg-bond0
#修改服务器启动方式为命令行方式,而不是图形界面形式
sed -i s/id:5:/id:3:/ /etc/inittab
sleep 5
#关闭iptables和selinux
servcie iptables stop
chkconfig iptables --level 12345 off
setenforce 0
sed -i s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config
#人工重启设备,使配置生效[init 6]

  

脚本执行示例

#配置ip地址为10.16.28.200,配置网关地址为10.16.28.5
sh -x cfg.sh 10.16.28.200 10.16.28.5

  

linux双网卡绑定为逻辑网卡的更多相关文章

  1. bond绑定两张物理网卡为一张逻辑网卡

    问题:cnetos7同时接入两个独立网络,但两个网络的IP网段相同时只能路由到一个网络 解决方法:使用bond绑定两张物理网卡为一张逻辑网卡 1.新建文件bond.conf,内容如下 alias bo ...

  2. CentOS下多网卡绑定bond/多网卡聚合

    网卡bond我直接理解成网卡聚合了,就是把多张网卡虚拟成1张网卡,出口时,这张网卡无论哪个断线都不影响网络,入口时,需要结合交换机的端口聚合功能实现和网卡配置的bond模式进行负载均衡.bond需要在 ...

  3. Linux网卡高级命令、IP别名及多网卡绑定 转

    http://www.cnblogs.com/xiaoluo501395377/archive/2013/05/26/3100065.html 本篇随笔将详细讲解Linux系统的网卡高级命令.IP别名 ...

  4. Linux下多网卡绑定bond0及模式

    Linux 多网卡绑定 网卡绑定mode共有七种(0~6) bond0.bond1.bond2.bond3.bond4.bond5.bond6 常用的有三种 mode=0:平衡负载模式,有自动备援,但 ...

  5. Linux高级网络设置——将多个网卡设置成一个网卡

    Linux下可以设置网卡模式 模式0:负载均衡 模式1:主备模式,不提高网络带宽 模式3:多网卡同时发送相同的数据 准备实验环境: Redhat 6.4 企业版64位,最小化安装. 给虚拟机添加网卡 ...

  6. Linux下双网卡绑定(bonding技术)

    Linux网卡绑定探析   2013-08-20 15:39:31 现在很多服务器都自带双千兆网口,利用网卡绑定既能增加网络带宽,同时又能做相应的冗余,目前应用于很多的场景.linux操作系统下自带的 ...

  7. Linux双网卡绑定和解除绑定的实现

      双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作.根据交换机可支持的功能不 ...

  8. Linux 双网卡绑定技术

    bond技术是在linux2.4以后加入内核. 一般步骤是1.把bonding模块加入内核, 2 编辑要绑定的网卡设置,去除地址设定 3 添加bond设备,设置地址等配置 4  重启网络 5 在交换机 ...

  9. linux中配置双网卡的目的?如何实现双网卡绑定,以实现负载均衡?

    配置双网卡的目的:========================== 1.你想做路由器,网关 2.实现冗余 3.负载均衡     linux 主机安装双网卡,共享一个IP地址,对外提供访问,实际 同 ...

随机推荐

  1. Oracle数据库之SQLPLUS

    三.SQLPLUS ​ SQLPlus 是 Oracle 数据库提供的一个专门用于数据库管理的交互式工具,使用 SQLPlus 可以管理 Oracle 数据库的所有任务,SQLPlus 通过命令的方式 ...

  2. 深入浅出TypeScript(1)

    前言 在学习TypeScript过程中,我也是遇到了很多的阻力,因为并未有太多深入挖掘的场景,之前做IONIC的时候,也只是用TS,现如今,这一个系列也是记录自己学习和收获,同时希望自己的这系列教程对 ...

  3. Spring学习之旅(四)--高级装配Bean

    条件化 bean 有时候我们要满足某种情况才将bean 初始化放入容器中. 基于环境初始化不同的 bean 1.申明接口并创建两个实现类 public interface Teacher { void ...

  4. HDU 6059

    题意略. 思路:我们要想令 A[i] ^ A[j] < A[j] ^ A[k](i < j < k),由于A[i]和A[k]都要 ^ A[j],所以我们只需研究一下i,k这两个数之间 ...

  5. Oracle - SQL语句实现数据库快速检索

    SQL语句实现数据库快速检索 有时候在数据库Debug过程中,需要快速查找某个关键字. 1:使用PLSQL Dev自带的查找数据库对象,进行对象查找 缺点:查找慢.耗时. 2:使用SQL语句对数据库对 ...

  6. 从入门到入土的JS 随笔day01

    js 的全称是javascript ,JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型. 它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用 ...

  7. CF 551 E GukiZ and GukiZiana

    https://codeforces.com/contest/551/problem/E 分块真强. 题意就是1.区间加,2.询问整个区间中,最远的两个x的距离. 分块,然后,每次找位子用二分找即可. ...

  8. Team Train Recorder

    2014-2015 Petrozavodsk Winter Training Camp, Contest.58 (Makoto rng_58 Soejima contest) contest link ...

  9. codeforces 876 D. Sorting the Coins(线段树(不用线段树写也行线段树写比较装逼))

    题目链接:http://codeforces.com/contest/876/problem/D 题解:一道简单的类似模拟的题目.其实就是看右边连出来有多少连续不需要换的假设位置为pos只要找pos- ...

  10. 原来JS是这样的 - 对象属性

    引子 在上一篇(原来JS是这样的 (2))刚发布的时候就阅读了那篇文章的人可能会注意到那篇曾用过"JavaScript 中万物皆对象"的说法,而在随后我发现错误后立即更新改掉了这个 ...