linu中bonding配置步骤详解

合集下载

Linux Bonding 模式详解

Linux Bonding 模式详解
个slave或者一个非激活的slave重新激活的时候也会导致接收
流量重新分配。接收流量负载是串行(轮转)的分配在bond的一
组速率最高的slave上。
当一个链路重连或者一个新的slave加入的时候,bond会重新
初始化ARP Replies给所有的客户端。updelay参数的值必须
点的硬件地址并且会回应一个包含绑定好的slave的硬件地址的
ARP Reply给发送的节点。用ARP协商的负载均衡的有一个问题是
每次用bond的硬件地址广播ARP报文,那么其他节点发送的数据
全部集中在一个slave上,处理ARP更新给其他所有节点的时候,
每个节点会重新学习硬件地址,导致流量重新分配。当新加入一
balance-xor or 2
XOR策略:基于所选择的传送hash策略。
本模式提供负载均衡和容错的能力。
Байду номын сангаас
broadcast or 3
广播策略:在所有的slave接口上传送所有的报文。本模式提供
容错能力。
802.3ad or 4
IEEE 802.3ad 动态链路聚合。创建共享相同的速率和双工
(ARP回应报文),并且用bond的某一个slave的硬件地址改写ARP报
文的源地址,使得本服务器对不同的设备使用不同的硬件地址。
本服务器建立的连接的接收流量也是负载均衡的。当本机发送
ARP Request时,bonding驱动通过ARP报文复制并保存节点的
IP信息。当从其他节点接收到ARP Reply,bonding驱动获取节
它的硬件地址被新选上的curr_active_slave硬件地址来替换。

Linux网卡Bonding配置

Linux网卡Bonding配置

Linux⽹卡Bonding配置⼀、bonding技术简介 bonding(绑定)是⼀种将n个物理⽹卡在系统内部抽象(绑定)成⼀个逻辑⽹卡的技术,能够提升⽹络吞吐量、实现⽹络冗余、负载等功能,有很多优势。

 Linux 系统下⽀持⽹络 Bonding,也叫 channel Bonding,它允许你将 2 个或者更多的⽹卡绑定到⼀起,成为⼀个新的逻辑⽹卡,从⽽实现故障切换或者负载均衡的功能,具体情况要取决于 mode 参数的具体配置。

 Linux系统bonding技术是内核层⾯实现的,它是⼀个内核模块(驱动)。

使⽤它需要系统有这个模块, 我们可以modinfo命令查看下这个模块的信息, ⼀般来说都⽀持.modinfo bondingbonding的七种⼯作模式bonding技术提供了七种⼯作模式,在使⽤的时候需要指定⼀种,每种有各⾃的优缺点.balance-rr (mode=0) 默认, 有⾼可⽤ (容错) 和负载均衡的功能, 需要交换机的配置,每块⽹卡轮询发包 (流量分发⽐较均衡).active-backup (mode=1) 只有⾼可⽤ (容错) 功能, 不需要交换机配置, 这种模式只有⼀块⽹卡⼯作, 对外只有⼀个mac地址。

缺点是端⼝利⽤率⽐较低balance-xor (mode=2) 不常⽤broadcast (mode=3) 不常⽤802.3ad (mode=4) IEEE 802.3ad 动态链路聚合,需要交换机配置,没⽤过balance-tlb (mode=5) 不常⽤balance-alb (mode=6) 有⾼可⽤ ( 容错 )和负载均衡的功能,不需要交换机配置 (流量分发到每个接⼝不是特别均衡)详细说明请参考⽹络上其他资料,了解每种模式的特点根据⾃⼰的选择就⾏, ⼀般会⽤到0、1、4、6这⼏种模式。

⼆、RHEL6 下的 Boding 配置: 在所有的 RHEL 版本下,⽬前都不⽀持在 NetworkManager 服务协作下实现 Bonding 配置.所以要么直接关闭 NetworkManager 服务,并取消其开机启动,要么在所有涉及 Bonding 的⽹卡配置⽂件中(包含ethx 或者 bondY),显式地添加⼀⾏:NM_CONTROLLED=no 要配置⽹卡 Bonding,你必须在/etc/sysconfig/network-scripts/⽬录下建⽴逻辑⽹卡的配置⽂件 ifcfg-bondX,⼀般 X 从 0 开始,依次增加.具体的⽂件内容根据参与 Bonding 的⽹卡类型的不同⼜有所差别,以最最常见的 Ethernet 为例,配置⽂件⼤致是这样的:DEVICE=bond0IPADDR=192.168.0.1NETMASK=255.255.255.0ONBOOT=yesBOOTPROTO=noneUSERCTL=noBONDING_OPTS="bonding parameters separated by spaces"NM_CONTROLLED=no BONDING_OPTS 这⼀⾏填写你需要的 Bonding 模式,⽐如 BONDING_OPTS="miimon=100 mode=1" ,下⾯也会介绍⼏种常见的配置⽅式和它代表的意义,这⾥暂时不展开说明.为了⽅便称呼,我们把Bongding 后的逻辑⽹卡 bondX 称为主⽹卡(Master),参与 Bonding 的物理⽹卡 ethY 称为⼦⽹卡(Slave). 主⽹卡配置⽂件创建完毕以后,⼦⽹卡的配置⽂件也需要做相应的改变,主要是添加 MASTER=和SLAVE=这两项参数,我们假设 2 张⼦⽹卡为 eth0 和 eth1,那么他们的配置⽂件⼤致的样⼦会是这样⼦:DEVICE=ethXBOOTPROTO=noneONBOOT=yesMASTER=bond0SLAVE=yesUSERCTL=noNM_CONTROLLED=no 像这样,分别修改 ifcfg-eth0 和 ifcfg-eth1 配置⽂件,DEVICE=ethX 中的 X ⽤相应的值代替.然后我们重启⽹络服务.service network restart这样⼦,⼦⽹卡为 eth0 和 eth1,主⽹卡为 bond0,模式为 mode 1 的⽹络 Bonding 就完成了rhel6 bonding 实例展⽰系统: rhel6⽹卡: eth2、eth3bond0:10.200.100.90负载模式: mode1(active-backup) # 这⾥的负载模式为1,也就是主备模式.1、关闭和停⽌NetworkManager服务service NetworkManager stopchkconfig NetworkManager offps: 如果有装的话关闭它,如果报错说明没有装这个,那就不⽤管2、加载bonding模块modprobe --first-time bonding3、创建基于bond0接⼝的配置⽂件[root@rhel6.6 network-scripts]# cat ifcfg-bond0DEVICE=bond0BOOTPROTO=noneIPADDR=10.200.100.90NETMASK=255.255.255.0ONBOOT=yesNM_CONTROLLED=noUSERCTL=noBONDING_OPTS="mode=1 miimon=200"4、SLAVE⽹卡的配置⽂件两种⼦⽹卡的配置⽂件如下[root@rhel6.6 network-scripts]# cat ifcfg-eth2DEVICE=eth2#HWADDR=14:58:D0:5A:0F:76NM_CONTROLLED=no#UUID=3b718bed-e8d4-4b64-afdb-455c8c3ccf91ONBOOT=yes#NM_CONTROLLED=yesBOOTPROTO=noneMASTER=bond0SLAVE=yesUSERCTL=no[root@rhel6.6 network-scripts]# cat ifcfg-eth3DEVICE=eth3#HWADDR=14:58:D0:5A:0F:77NM_CONTROLLED=no#UUID=988835c2-8bfa-4788-9e8d-e898f68458f0ONBOOT=yes#NM_CONTROLLED=yesBOOTPROTO=noneMASTER=bond0SLAVE=yesUSERCTL=no5、bonding信息查看重启⽹络服务器后bonding⽣效[root@rhel6.6 network-scripts]# ip a4: eth2: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000link/ether c4:34:6b:ac:5c:9e brd ff:ff:ff:ff:ff:ff5: eth3: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000link/infiniband a0:00:03:00:fe:80:00:00:00:00:00:00:00:02:c9:03:00:0a:6f:ba brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff10: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UPlink/ether c4:34:6b:ac:5c:9e brd ff:ff:ff:ff:ff:ffinet 10.200.100.90/24 brd 10.212.225.255 scope global bond0inet6 fe80::c634:6bff:feac:5c9e/64 scope linkvalid_lft forever preferred_lft forever[root@rhel6.6 network-scripts]# cat /proc/net/bonding/bond0Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)Bonding Mode: fault-tolerance (active-backup) # bond0接⼝采⽤mode1Primary Slave: NoneCurrently Active Slave: eth2MII Status: upMII Polling Interval (ms): 200Up Delay (ms): 0Down Delay (ms): 0Slave Interface: eth2MII Status: upSpeed: 1000 MbpsDuplex: fullLink Failure Count: 0Permanent HW addr: c4:34:6b:ac:5c:9eSlave queue ID: 0Slave Interface: eth3MII Status: upSpeed: 1000 MbpsDuplex: fullLink Failure Count: 0Permanent HW addr: c4:34:6b:ac:5c:9fSlave queue ID: 0进⾏⾼可⽤测试,拔掉其中的⼀条⽹线看丢包和延时情况, 然后在插回⽹线(模拟故障恢复),再看丢包和延时的情况.三、RedHat7配置bonding系统: Red Hat Enterprise Linux Server release 7.6 (Maipo)⽹卡: eno3、eno4bonding:bond0负载模式: mode1(active-backup)服务器上两张物理⽹卡eno3和eno4, 通过绑定成⼀个逻辑⽹卡bond0,bonding模式选择mode1注: ip地址配置在bond0上, 物理⽹卡不需要配置ip地址.1、关闭和停⽌NetworkManager服务RedHat7默认安装了NetworkManager,在配置前先关掉NetworkManager服务,否则可能会对bonding或造成问题。

centos系统网口聚合(bonding)的配置

centos系统网口聚合(bonding)的配置
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Memory:fba00000-fba20000
另外,还可以看/sys/class/net/下面的bonding驱动的模块参数的值,比如:
# cat /sys/class/net/bonding_masters
# ifconfig eth1
eth1 Link encap:Ethernet HWaddr 50:B3:42:00:01:08
UP BROADCAST SLAVE MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
USERCTL=no
然后再修改ifcfg-eth1~ifcfg-eth4文件的内容,记住,先将备份原来的ifcfg-eth1,以便于恢复配置,^_^,例如ifcfg-eth1的内容为:
#cat ifcfg-eth1
DEVICE=eth1
USERCTL=no
ONBOOT=yes
MASTER=bond2 #belong to bond2
SLAVE=yes #is bond1's slave
BOOTPROTO=none
文件ifcfg-eth2~ifcfg-eth4只需要修改对应的DEVIE后面的值即可,记住添加文件的可执行属性。
配置网口聚合的时候,我选择了两种模式:balance-rr和active-backup。balance-rr模式采用的是轮转算法(round-robin),即数据包会按顺序从第一个可用的绑定网口(即该聚合口的slave)到最后一个slave中传输,此时每个slave上都会有数据流量,而active-backup模式采用的是备份算法,此时只有一个slave是激活的,只有该salve上有数据流量,当该slave有问题不能正常工作时,其他的某个slave会被激活,

Linux系统配置双网卡绑定bond0

Linux系统配置双网卡绑定bond0

Linux系统配置双⽹卡绑定bond01、bonding简述双⽹卡配置设置虚拟为⼀个⽹卡实现⽹卡的冗余,其中⼀个⽹卡坏掉后⽹络通信仍可正常使⽤,实现⽹卡层⾯的负载均衡和⾼可⽤性。

现在⼀般的企业都会使⽤双⽹卡接⼊,这样既能添加⽹络带宽,同时⼜能做相应的冗余,可以说是好处多多。

⽽⼀般企业都会使⽤linux操作系统下⾃带的⽹卡绑定模式,当然现在⽹卡产商也会出⼀些针对windows操作系统⽹卡管理软件来做⽹卡绑定(windows操作系统没有⽹卡绑定功能需要第三⽅⽀持)。

1.1 bonding原理⽹卡⼯作在混杂(promisc)模式,接收到达⽹卡的所有数据包,tcpdump⼯作⽤的也是混杂模式(promisc),将两块⽹卡的MAC地址修改为相同接收特定MAC的数据帧,然后把相应的数据帧传送给bond驱动程序进⾏处理。

1.2 Bonding模式(bonding mode)轮询策略(round robin),mode=0,按照设备顺序依次传输数据包,提供负载均衡和容错能⼒主备策略(active-backup),mode=1,只有主⽹卡处于⼯作状态,备⽹卡处于备⽤状态,主⽹卡坏掉后备⽹卡开始⼯作,提供容错能⼒异或策略(load balancing (xor)),mode=2,根据源MAC地址和⽬的MAC地址进⾏异或计算的结果来选择传输设备,提供负载均衡和容错能⼒⼴播策略(fault-tolerance (broadcast)),mode=3,将所有数据包传输给所有接⼝通过全部设备来传输所有数据,⼀个报⽂会复制两份通过bond下的两个⽹卡分别发送出去,提供⾼容错能⼒动态链接聚合(lacp),mode=4,按照802.3ad协议的聚合⾃动配置来共享相同的传输速度,⽹卡带宽最⾼可以翻倍,链路聚合控制协议(LACP)⾃动通知交换机聚合哪些端⼝,需要交换机⽀持 802.3ad协议,提供容错能⼒输出负载均衡模式(transmit load balancing),mode=5,输出负载均衡模式,只有输出实现负载均衡,输⼊数据时则只选定其中⼀块⽹卡接收,需要⽹卡和驱动⽀持ethtool命令输⼊/输出负载均衡模式(adaptive load balancing),mode=6,输⼊和输出都实现负载均衡,需要⽹卡和驱动⽀持ethtool命令2、⽹卡配置⽂件的配置2.1 配置环境 环境:系统CentOS 6.7 + 虚拟机 VMware 12 ⾄少两块物理⽹卡(VMware上添加eth0,eth1) 2.2 需要添加或修改的配置⽂件有5个(mode=1) 这5个配置⽂件是: /etc/sysconfig/network-scripts/ifcfg-eth{0,1} /etc/sysconfig/network-scripts/ifcfg-bond0 /etc/modprobe.d/dist.conf /etc/rc.local2.2.1 /etc/sysconfig/network-scripts/ifcfg-{eth0,eth1,bonding0}修改或添加提⽰:先备份好eth0和eth1,再修改这⼏个⽂件以下是修改好的三个⽹卡配置⽂件的参数[root@ant network-scripts]# vimdiff ifcfg-eth0 ifcfg-eth1 ifcfg-bond02.2.2 修改/etc/modprobe.d/dist.conf⽂件在此⽂件中添加以下内容:alias bond0 bonding,表⽰系统在启动时加载bonding模块,对外虚拟⽹络接⼝设备为 bond0miimon=100,表⽰系统每100ms监测⼀次链路连接状态,如果有⼀条线路不通就转⼊另⼀条线mode=1,表⽰绑定模式为1primary=eth0,系统⾸先eth0作为bond0接⼝与外界信息的传输接⼝2.2.3 修改配置⽂件/etc/rc.local在此⽂件中添加以下内容:modprobe bonding miimon=100 mode=12.2.4 重启⽹络(service network restart),并查看三个接⼝的mac地址使⽤ifconfig命令显⽰,bond0,eth1,eth2物理地址相同,提⽰三个⽹卡均通过⼀个ip主机端⼝与外界通信但是,我们可以看到,在mode=1的情况下,当前bond0采⽤eth0通信,实际的物理⽹卡地址见下图:3、验证⽹络的连通性没有丢包,⽹络连通性可。

linux 双网卡配置

linux 双网卡配置

To show all interfaces info
# ifenslave {-a|--all-interfaces}
To be more verbose
# ifenslave {-v|--verbose} ...
# ifenslave {-u|--usage} Show usage
# ifconfig bond0 down
To detach a dead interface without setting the bond device down :
# ifenslave {-d|--detach} bond0 eth0 [eth1 [eth2]...]
ifenslave --help

To create a bond device, simply follow these three steps :
- ensure that the required drivers are properly loaded :
IPADDR=10.198.85.5
NETMASK=255.255.255.0
GATEWAY=10.198.85.254
ONBOOT=yes
BOOTPROTO=static
USERCTL=no
TYPE=Ethernet
vi ifcfg-eth0
DEVICE=eth0
HWADDR=MAC 地址
添加如下内容:
alias bond0 bonding
options bond0 miimon=100 mode=1 primary=eth0
3、编辑:
#cd /etc/sysconfig/network-scripts/

linux下网卡bond配置

linux下网卡bond配置

Linux 7.x OS bond配置一、bonding技术bonding(绑定)是一种linux系统下的网卡绑定技术,可以把服务器上n个物理网卡在系统内部抽象(绑定)成一个逻辑上的网卡,能够提升网络吞吐量、实现网络冗余、负载等功能,有很多优势。

bonding技术是linux系统内核层面实现的,它是一个内核模块(驱动)。

使用它需要系统有这个模块, 我们可以modinfo命令查看下这个模块的信息, 一般来说都支持.# modinfo bondingfilename:/lib/modules/2.6.32-642.1.1.el6.x86_64/kernel/drivers/net/bonding/bonding.koauthor: Thomas Davis, tadavis@ and many othersdescription: Ethernet Channel Bonding Driver, v3.7.1version: 3.7.1license: GPLalias: rtnl-link-bondsrcversion: F6C1815876DCB3094C27C71depends:vermagic: 2.6.32-642.1.1.el6.x86_64 SMP mod_unloadmodversionsparm: max_bonds:Max number of bonded devices (int)parm: tx_queues:Max number of transmit queues (default = 16) (int)parm: num_grat_arp:Number of peer notifications to send on failover event (alias of num_unsol_na) (int)parm: num_unsol_na:Number of peer notifications to send on failover event (alias of num_grat_arp) (int)parm: miimon:Link check interval in milliseconds (int)parm: updelay:Delay before considering link up, in milliseconds (int)parm: downdelay:Delay before considering link down, in milliseconds (int)parm: use_carrier:Usenetif_carrier_ok (vs MII ioctls) in miimon; 0 for off, 1 for on (default) (int)parm: mode:Mode of operation; 0 for balance-rr, 1 for active-backup, 2 for balance-xor, 3 for broadcast, 4 for 802.3ad, 5 for balance-tlb, 6 for balance-alb (charp)parm: primary:Primary network device to use (charp)parm: primary_reselect:Reselect primary slave once it comes up; 0 for always (default), 1 for only if speed of primary is better, 2 for only on active slave failure (charp) parm: lacp_rate:LACPDUtx rate to request from 802.3ad partner; 0 for slow, 1 for fast (charp)parm: ad_select:803.ad aggregation selection logic; 0 for stable (default), 1 for bandwidth, 2 for count (charp)parm: min_links:Minimum number of available links before turning on carrier (int)parm: xmit_hash_policy:balance-xor and 802.3ad hashing method; 0 for layer 2 (default), 1 for layer 3+4, 2 for layer 2+3 (charp)parm: arp_interval:arp interval in milliseconds (int)parm: arp_ip_target:arp targets in n.n.n.n form (array of charp)parm: arp_validate:validatesrc/dst of ARP probes; 0 for none (default), 1 for active, 2 for backup, 3 for all (charp)parm: arp_all_targets:fail on any/all arp targets timeout; 0 for any (default), 1 for all (charp)parm: fail_over_mac:For active-backup, do not set all slaves to the same MAC; 0 for none (default), 1 for active, 2 for follow (charp)parm: all_slaves_active:Keep all frames received on an interface by setting active flag for all slaves; 0 for never (default), 1 for always. (int)parm: resend_igmp:Number of IGMP membership reports to send on link failure (int)parm: packets_per_slave:Packets to send per slave in balance-rr mode; 0 for a random slave, 1 packet per slave (default), >1 packets per slave. (int)parm: lp_interval:The number of seconds between instances where the bonding driver sends learning packets to each slaves peer switch. The default is 1. (uint)modinfo bondingbonding的七种工作模式:bonding技术提供了七种工作模式,在使用的时候需要指定一种,每种有各自的优缺点. 1.balance-rr (mode=0) 默认, 有高可用(容错) 和负载均衡的功能, 需要交换机的配置,每块网卡轮询发包(流量分发比较均衡).2.active-backup (mode=1) 只有高可用(容错) 功能, 不需要交换机配置, 这种模式只有一块网卡工作, 对外只有一个mac地址。

bonding双网卡配置

bonding双网卡配置

网络设备热备方案为了提供网络的高可用性,我们可能需要将多块网卡绑定成一块虚拟网卡对外提供服务,这样即使其中的一块物理网卡(或者其所连接的交换机)出现故障,也不会导致连接中断。

在Linux下叫bonding,效果是将两块或更多的网卡当做一块网卡使用,可以提高冗余性。

测试方案将服务器的eth0和eth1绑定成虚拟网卡bond0,bongding1服务器的虚拟网卡ip为192.168.3.60;bonding2服务器的虚拟网卡ip为192.168.3.61。

如图:一、配置双网卡绑定同一个ip地址:1.插件安装:apt-get install ifenslave2.在/etc/modules文件末尾加入:bonding3.编辑网卡配置:vi/etc/network/inerfaces:auto loiface lo inet loopbackauto bond0iface bond0 inet staticaddress 192.168.3.60netmask 255.255.252.0network 192.168.0.0broadcast 192.168.3.255gateway 192.168.0.66bond-mode 1bond-miimon 100bond-slaves nonepost-up /sbin/ifenslave bond0 eth0 eth1pre-down /sbin/ifenslave -d bond0 eth0 eth1auto eth0iface eth0 inet manualbond-master bond0bond-primary eth0 eth1auto eth1iface eth1 inet manualbond-maser bond0bond-primary eth0 eth1说明:miimon是用来进行链路监测的。

比如:miimon 100,那么系统每100 ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式,常用的为0,1两种。

linux中bonding配置步骤详解

linux中bonding配置步骤详解

本文介绍linux下的bonding 技术,linux 2.4.x 的内核中采用了这种技术,利用bonding 技术可以将多块网卡接口通过绑定虚拟成为一块网卡,在用户看来这个聚合起来的设备好像是一个单独的以太网接口设备,通俗点讲就是多块网卡具有相同的IP 地址而并行连接聚合成一个逻辑链路工作。

二、bond的几种算法Linux的bond支持7种工作模式,可以参考内核源码包文件:Documentation/networking/bonding.txt 。

这里逐一介绍。

模式1:mode=0 ,即:(balance-rr) Round-robin policy(平衡轮循策略)特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降。

模式2:mode=1,即:(active-backup) Active-backup policy(主-备份策略)特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。

mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。

此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有N 个网络接口的情况下,资源利用率为1/N模式3:mode=2,即:(balance-xor) XOR policy(平衡策略)特点:基于指定的传输HASH策略传输数据包。

缺省的策略是:(源MAC地址XOR 目标MAC地址) % slave数量。

其他的传输策略可以通过xmit_hash_policy选项指定,此模式提供负载平衡和容错能力。

bonding配置和介绍

bonding配置和介绍

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

mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。

mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。

需要说明的是如果想做成mode 0的负载均衡,仅仅设置这里options bond0 miimon=100 mode=0是不够的,与网卡相连的交换机必须做特殊配置(这两个端口应该采取聚合方式),因为做bonding的这两块网卡是使用同一个MAC地址.从原理分析一下(bond运行在mode 0下):mode 0下bond所绑定的网卡的IP都被修改成相同的mac地址,如果这些网卡都被接在同一个交换机,那么交换机的arp表里这个mac地址对应的端口就有多个,那么交换机接受到发往这个mac地址的包应该往哪个端口转发呢?正常情况下mac地址是全球唯一的,一个mac地址对应多个端口肯定使交换机迷惑了。

所以 mode0下的bond如果连接到交换机,交换机这几个端口应该采取聚合方式(cisco称为 ethernetchannel,foundry称为portgroup),因为交换机做了聚合后,聚合下的几个端口也被捆绑成一个mac地址.我们的解决办法是,两个网卡接入不同的交换机即可。

mode6模式下无需配置交换机,因为做bonding的这两块网卡是使用不同的MAC地址。

七种bond模式说明:第一种模式:mod=0 ,即:(balance-rr) Round-robin policy(平衡抡循环策略)特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降第二种模式:mod=1,即: (active-backup) Active-backup policy(主-备份策略)特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。

linux bind 用法

linux bind 用法

linux bind 用法Linux Bind 用法Bind(Berkeley Internet Name Daemon)是一个开放源代码的DNS (Domain Name System)软件。

它被广泛用于Unix-like操作系统,包括Linux。

Bind的作用是将域名转换为对应的IP地址,并且能够支持一些高级的DNS功能。

在本文中,我们将一步一步地介绍Bind的用法,并探索其在Linux系统中的重要性。

第一步:安装Bind要开始使用Bind,首先需要在Linux系统上安装它。

在大多数Linux发行版中,Bind都是已经安装的。

您可以通过运行以下命令来检查是否已安装Bind:shellnamed -v如果输出中显示了Bind的版本号,那么说明已经安装了Bind。

如果没有安装,您可以通过以下命令之一来安装Bind:对于Debian、Ubuntu等基于Debian的系统:shellsudo apt-get install bind9对于CentOS、Fedora等基于Red Hat的系统:shellsudo yum install bind安装完成后,您可以通过以下命令来启动Bind服务:shellsudo systemctl start named第二步:配置BindBind的主要配置文件是`named.conf`。

该文件位于`/etc/bind/`(或类似的位置)目录中。

我们可以通过编辑此文件来配置Bind。

shellsudo vi /etc/bind/named.conf在此文件中,您将看到一些已经配置的示例区块。

您可以根据自己的需求进行修改或添加新的区块。

例如,我们可以添加一个新的区域来管理我们的域名。

shellzone "example" IN {type master;file "/etc/bind/db.example";};在上述示例中,我们定义了一个名为"example"的域,并指定了域名的类型为`master`。

bonding配置

bonding配置
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
配置好上面的内容后 重启网络 bond0就启用了
1、关闭SELINUX防火墙,iptables,NetworkManager服务,并在开机自动启动中设置为off
关闭SELINUX方法:
[root@ZFYW_PREPAY01 ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the sห้องสมุดไป่ตู้stem.
DEVICE=eth<N>
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
编辑全局配置文件, 在 /etc/下创建 modprobe.conf 或者 在/etc/modprobe.d/ 创建 bonding.conf
配置文件中写如下内容:
# chkconfig iptables off
# chkconfig NetworkManager off
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted

[转载]Linux下网络聚合的方法

[转载]Linux下网络聚合的方法

[转载]Linux下⽹络聚合的⽅法⽹卡的链路聚合就是将多块⽹卡连接起来,当⼀块⽹卡损坏,⽹络依旧可以正常运⾏,可以有效的防⽌因为⽹卡损坏带来的损失,同时也可以提⾼⽹络访问速度。

⽹卡的链路聚合⼀般常⽤的有"bond"和"team"两种模式,"bond"模式最多可以添加两块⽹卡,"team"模式最多可以添加⼋块⽹卡。

1、bondbond模式的配置步骤如下图所⽰,在配置之前需要有两块⽹卡:a、"nmcli connection add type bond con-name bond0 mode active-backup ip4 172.25.254.102/24"。

表⽰添加⼀个bond,名称为bond0,⼯作模式为主备,IP为"172.25.254.102"。

b、"cat /proc/net/bonding/bond0"。

可以查看bond的信息。

c、"nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0"。

将eth0⽹卡连接添加到这个bond中。

d、"nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0"。

将eth1连接⽹卡添加到这个bond中。

⾄此bond模式的⽹卡链路聚合配置完成,⽹络可以正常使⽤。

bond的常⽤⼯作模式有"active-backup"主备模式和"balance-rr"轮询模式两种。

主备模式是使⽤⼀块⽹卡,这块⽹卡坏了使⽤另⼀块⽹卡。

轮询模式是两块⽹卡轮流使⽤。

测试时可以使⽤"ifconfig eth0 down",去掉⼀块⽹卡,可以发现,⽹络依旧可以正常使⽤。

Linux NIC bonding 模式解释

Linux NIC bonding 模式解释

免费内容:Linux系统提供了网卡绑定(NIC Bonding)功能,关于网卡绑定的设置中中有很6种mode,以下针对OpenFiler Administrative Guide中的资料,进行说明。

1. Balance-rr(Round-robin policy):此模式下,数据包传输将按顺序发送到Bonding中的各个网卡上。

此模式提供负载均衡和容错。

2. Active Backup:此模式下Bonding中只有一块网卡处于激活状态,其余网卡只有在处于工作状态的网卡出错时才会激活。

为了不扰乱交换机,Bonding的MAC地址只有一个是外部可见的。

3. Balance XOR:基于transmit-hash-policy的传输,默认是简单策略。

还有xmit_hash_policy可选。

PS: Hash policy: 散列策略4. Broadcast:广播模式,此模式下对Bonding中所有网卡都进行数据包广播,提供容错能力。

5. 802.3ad(IEEE 802.3ad Dynamic link aggregation): 802.3ad 动态链接汇聚模式,创建链接组后从网卡将有同样的速度和双工设置。

根据802.3ad协议专有的Balance-tlb模式(提供负载均衡),Bonding中的所有网卡将在链路中全部激活,同时信道绑定并不需要专用的交换设备支持。

传出通信流量将根据此时的负载分散于此链接中的各个网卡上,传入通信流量则由当前网卡接收。

若接收的网卡出错,则将另外的网卡取代之,并使用该出错网卡的MAC地址。

6. Balance-alb(Adaptive load balancing): Balance-alb模式提供自适应负载均衡,此模式在IPV4通信下包括balance-tlb模式外加接收负载均衡并且不需要任何专用交换设备的支持。

RLB(Receive Load Balancing)是通过ARP协商完成的。

Linux bonding源码分析

Linux bonding源码分析

1. 目的本文档结合相关内核代码和对Linux 2.6.9内核中Bonding模块的三种主要工作模式的工作原理和流程。

在配置Bond模块时,除了资料[2],本文档也有一定的参考价值。

2. 内容本文档包含下列内容:* Bonding模块工作流程综述。

(第3节)* Bonding链路状态监控机制(mii模式、arp模式)描述。

(第4节)* Bonding模块三种主要工作模式:balance-rr、active- backup和broadcast相关代码分析。

(第5节)* Bonding模块关键数据结构和函数的代码分析。

(第5节)如果想了解bonding模块的原理和工作流程,请阅读3、4节,如果想进一步分析bonding 模块的代码,请阅读5节。

3. Bonding模块工作流程综述Bonding模块本质上是一个虚拟的网卡驱动(network device driver),只不过并没有真实的物理网卡与之对应,而是由这个虚拟网卡去“管辖”一系列的真实的物理网卡,所以它的代码结构和一般网卡驱动的代码结构非常类似,这是共性;除此之外,它还有自己的一些特性功能,例如特别的链路状态监控机制,绑定/解除绑定等。

3.1物理网卡的活动状态和链路状态在bonding模块中为每一个被绑定的物理网卡定义了两种活动状态和四种链路状态:注意,这里的链路状态和实际网卡真实的链路状态(是否故障、是否有网线连接)没有直接的关系,虽然bonding模块通过MII或者ARP侦测到实际网卡故障时也会改变自定义的链路状态值(例如从BOND_LINK_UP切换到BOND_LINK_FAIL随后切换到 BOND_LINK_DOWN状态),但是概念上应该把这两类链路状态区分开。

在本文档随后的内容中,除非特别指出,“链路状态”都指bonding模块自定义的链路状态。

活动状态:* BOND_STATE_ACTIVE:处于该状态的网卡是潜在的发送数据包的候选者* BOND_STATE_BACKUP:处于该状态的网卡在选择发送数据的网卡时被排除链路状态:* BOND_LINK_UP:上线状态(处于该状态的网卡是是潜在的发送数据包的候选者) * BOND_LINK_DOWN:故障状态* BOND_LINK_FAIL:网卡出现故障,向状态BOND_LINK_DOWN 切换中* BOND_LINK_BACK:网卡恢复,向状态BOND_LINK_UP切换中一个网卡必须活动状态为BOND_STATE_ACTIVE并且链路状态为 BOND_LINK_UP,才有可能作为发送数据包的候选者,注意,这里所说的数据包并不包含ARP请求,在使用ARP链路状态监控时,一个处于BOND_LINK_BACK状态的网卡也可能发送ARP请求。

linux配置bond

linux配置bond

以将eth0和eth1加入bond0为例,配置主备bondbond的操作系统级配置如下:1、查看是否支持bonding,执行如下命令:modinfo bonding2、配置bond0[root@support ~]# vi /etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0BOOTPROTO=staticIPADDR=10.8.0.231NETMASK=255.255.0.0BROADCAST=10.8.255.255ONBOOT=yesUSERCTL=NOBONDING_OPTS="mode=1 miimon=100"说明:这里使用了BONDING_OPTS选项,则不需要再使用/etc/modprobe.conf 配置文件对绑定设备进行配置。

参数mode=1,指主备模式。

miimon是用来进行链路监测的,其原理是检测网上的链路状态,一般将miimon值设为100,表示系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路。

3、配置eth0[root@support ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPROTO=noneHWADDR=00:30:48:56:DA:72ONBOOT=yesMASTER=bond0SLAVE=yes4、配置eth1DEVICE=eth1BOOTPROTO=noneHWADDR=00:30:48:56:DA:73ONBOOT=yesHOTPLUG=noDHCP_HOSTNAME=supportMASTER=bond0SLAVE=yes说明:修改单个网卡配置,主要是去掉IP 地址、子网掩码等信息。

同时添加MASTER及SLAVE 两项参数。

MASTER=<bond-interface>:<bond-interface> 的值是以太网卡连接到的通道绑定接口的名称,这个指令与 SLAVE 指令配合使用。

Suse-linux网卡绑定bonding方法

Suse-linux网卡绑定bonding方法

Suse-linux网卡绑定bonding方法SueLinu某系统的网卡冗余bonding方法有两种:一种是在命令模式下直接配置,一种是用Sue系统里面的yat管理工具对网络配置里面直接绑定。

Yat管理工具进去之后可以看到已通电网卡,直接编辑设置为绑定网卡,再添加bond0网卡,直接进行绑定设置即可。

下面介绍命令模式绑定的步骤:首先确定有两块以上的网卡ifconfig–a1.在/etc/yconfig/network/建立一个ifcfg-bond0ifcfg-bond0文件名是启用网卡时,优先使用模式的配置文件BONDING_MASTER='ye' BONDING_MODULE_OPTS='mode=active-backupmiimon=100'##主备状态BONDING_SLAVE0='eth0'##根据环境而定BONDING_SLAVE1='eth1'##根据环境而定BOOTPROTO='tatic'BROADCAST=''ETHTOOL_OPTIONS='' IPADDR='192.168.217.128/24'##根据环境而定MTU=''NAME=''NETWORK=''REMOTE_IPADDR=''STARTMODE='auto'USERCONTROL='no'2.新建了ifcfg-bond0这个文件配置写好之后,重启网络服务:rcnetworkretartIfconfig会看到如下信息:Bond0,eth0,eth1的MAC地址都是一样的运行cat/proc/net/bonding/bond0会看到如下信息如果绑定不成功/proc/net/bonding/不会有bond0这个文件这里可以看到绑定信息,以及两块网卡的真实MAC地址,可以看出eth0是主卡,因为MAC地址用的是eth0的地址。

基于linux的bond技术

基于linux的bond技术

Linux网口绑定通过网口绑定(bond)技术,可以很容易实现网口冗余,负载均衡,从而达到高可用高可靠的目的。

前提约定:2个物理网口分别是:eth0,eth1绑定后的虚拟口是:bond0服务器IP是:192.168.0.100第一步,配置设定文件:/etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0BOOTPROTO=noneONBOOT=yesIPADDR=192.168.0.100NETMASK=255.255.255.0NETWORK=192.168.0.0BROADCAST=192.168.0.255#BROADCAST广播地址/etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPROTO=noneMASTER=bond0SLAVE=yes/etc/sysconfig/network-scripts/ifcfg-eth1DEVICE=eth1BOOTPROTO=noneMASTER=bond0SLAVE=yes第二步,修改modprobe相关设定文件,并加载bonding模块:1.在这里,我们直接创建一个加载bonding的专属设定文件/etc/modprobe.d/bonding.conf[root@test ~]# vi /etc/modprobe.d/bonding.conf#追加alias bond0 bondingoptions bonding mode=0 miimon=2002.加载模块(重启系统后就不用手动再加载了)[root@test ~]# modprobe bonding3.确认模块是否加载成功:[root@test ~]# lsmod | grep bondingbonding 100065 0第三步,重启一下网络,然后确认一下状况:[root@test ~]# /etc/init.d/network restart[root@test ~]# cat /proc/net/bonding/bond0Ethernet Channel Bonding Driver: v3.5.0 (November 4, 2008) Bonding Mode: fault-tolerance (active-backup)Primary Slave: NoneCurrently Active Slave: eth0MII Status: upMII Polling Interval (ms): 200Up Delay (ms): 0Down Delay (ms): 0Slave Interface: eth0MII Status: upLink Failure Count: 0Permanent HW addr: 00:16:36:1b:bb:74Slave Interface: eth1MII Status: upLink Failure Count: 0Permanent HW addr: 00:16:36:1b:bb:80[root@test ~]# ifconfig | grep HWaddrbond0 Link encap:Ethernet HWaddr 00:16:36:1B:BB:74eth0 Link encap:Ethernet HWaddr 00:16:36:1B:BB:74eth1 Link encap:Ethernet HWaddr 00:16:36:1B:BB:74从上面的确认信息中,我们可以看到3个重要信息:1.现在的bonding模式是active-backup2.现在Active状态的网口是eth03.bond0,eth1的物理地址和处于active状态下的eth0的物理地址相同,这样是为了避免上位交换机发生混乱。

Linux网卡bond配置详解

Linux网卡bond配置详解

Linux⽹卡bond配置详解⽹卡bonding模式共有0、1、2、3、4、5、6共7种mode1、5、6不需要要交换机设置mode0、2、3、4需要交换机设置1、mode=0 (round-robin)轮询策略,数据包在每个slave⽹卡上都进⾏数据传输,以逐包形式在两个物理⽹卡上转发数据。

这种模式提供了数据的负载均衡和容错能⼒。

2、mode=1 (active-backup)主备策略,只有⼀个slave被激活,只有当active的slave的接⼝down时,才会激活其它slave接⼝。

主备模式下发⽣⼀次故障切换,在新激活的slave接⼝上会发送⼀个或者多个gratuitous ARP。

主salve接⼝上以及配置在接⼝上的所有VLAN接⼝都会发送gratuitous ARP,需要在这些接⼝上配置了⾄少⼀个IP地址。

VLAN接⼝上发送的的gratuitous ARP将会附上适当的VLAN id。

本模式提供容错能⼒。

3、mode=2(XOR)基于所选择的hash策略,本模式也提供负载均衡和容错能⼒4、mode=3(broadcast)⼴播策略,向所有的slave接⼝发送数据包,本模式提供容错能⼒5、mode=4(802.3ad)动态链路聚合,根据802.3ad标准利⽤所有的slave建⽴聚合链路。

slave接⼝的出⼝取决于传输的hash策略,默认策略是简单的XOR策略,⽽hash策略则可以通xmit_hash_policy选项配置。

前提:每个slave⽹卡⽀持ethtool获取速率和双⼯状态交换机⽀持IEEE 802.3ad标准(可能需要配置启⽤)IEEE 802.3ad 是执⾏的标准⽅法。

将多个适配器聚集到单独的虚拟适配器⽅⾯与“(EtherChannel)”的功能相同,能提供更⾼的防⽌发⽣故障。

例如,eth0 和 eth1 可以聚集到称作eth3 的 IEEE 802.3ad;然后⽤ IP 地址配置接⼝ eth3。

linux 网卡 绑定 bond 主备

linux 网卡 绑定 bond 主备

linux 网卡绑定 bond 主备一、做linux双网卡bond1. 编辑文件:#vi /etc/modprobe.conf添加:alias bond0 bondingoptions bond0 miimon=100 mode=1(mode=0 表示load blance 简称AA模式;mode=1 表示热备,简称AB 模式)注:millmon是用来进行链路监测的,millmon=100,表示每100ms监测一次链路连接状态,如果有一条不通,就转入另一条,这个值建议为100, 设成其它值可能导致不稳定)2. 创建bond0起动配置文件:cd /etc/sysconfig/network-scripts/cp ifcfg-eth0 ifcfg-bond0vi ifcfg-bond0内容如下:DEVICE=bond0ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.0.12NETMASK=255.255.255.0GATEWAY=192.168.0.1USERCTL=no3. 编辑ifcfg-eth0 , ifcfg-eth1两个网卡配置文件,内容如下: #vi ifcfg-eth0DEVICE=eth0USERCTL=noONBOOT=yesMASTER=bond0 //这两行主要是用于系统service network restart SLAVE=yes //后自动启用BOOTPROTO=noneHWADDR=XXXXXXXXXXXXXX (本网卡的MAC,可加可不加)#cp ifcfg-eth0 ifcfg-eth1#vi ifcfg-eth1DEVICE=eth1USERCTL=noONBOOT=yesMASTER=bond0 //这两行主要是用于系统service network restartSLAVE=yes //后自动启用BOOTPROTO=noneHWADDR=XXXXXXXXXXXXXX (本网卡的MAC,可加可不加)至此,linux服务器端配置完毕,重启(命令:reboot)或重启网络服务(命令:service network restart)看到bong0激活成功。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

l i n u中b o n d i n g配置步骤详解Revised by Petrel at 2021本文介绍linux下的bonding技术,linux2.4.x的内核中采用了这种技术,利用bonding技术可以将多块网卡接口通过绑定虚拟成为一块网卡,在用户看来这个聚合起来的设备好像是一个单独的以太网接口设备,通俗点讲就是多块网卡具有相同的IP地址而并行连接聚合成一个逻辑链路工作。

二、bond的几种算法Linux的bond支持7种工作模式,可以参考内核源码包文件:Documentation/networking/bonding.txt。

这里逐一介绍。

模式1:mode=0,即:(balance-rr)Round-robinpolicy(平衡轮循策略)特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降。

模式2:mode=1,即:(active-backup)Active-backuppolicy(主-备份策略)特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。

mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。

此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有N个网络接口的情况下,资源利用率为1/N模式3:mode=2,即:(balance-xor)XORpolicy(平衡策略)特点:基于指定的传输HASH策略传输数据包。

缺省的策略是:(源MAC地址XOR目标MAC地址)%slave数量。

其他的传输策略可以通过xmit_hash_policy选项指定,此模式提供负载平衡和容错能力。

模式4:mode=3,即:broadcast(广播策略)特点:在每个slave接口上传输每个数据包,此模式提供了容错能力。

模式5:mode=4,即:(802.3ad)IEEE802.3adDynamiclinkaggregation(IEEE802.3ad动态链接聚合)特点:创建一个聚合组,它们共享同样的速率和双工设定。

根据802.3ad规范将多个slave 工作在同一个激活的聚合体下。

外出流量的slave选举是基于传输hash策略,该策略可以通过xmit_hash_policy选项从缺省的XOR策略改变到其他策略。

需要注意的是,并不是所有的传输策略都是802.3ad适应的,尤其考虑到在802.3ad标准43.2.4章节提及的包乱序问题。

不同的实现可能会有不同的适应性。

必要条件:条件1:ethtool支持获取每个slave的速率和双工设定条件2:switch(交换机)支持IEEE802.3adDynamiclinkaggregation条件3:大多数switch(交换机)需要经过特定配置才能支持802.3ad模式模式6:mode=5,即:(balance-tlb)Adaptivetransmitloadbalancing(适配器传输负载均衡)特点:不需要任何特别的switch(交换机)支持的通道bonding。

在每个slave上根据当前的负载(根据速度计算)分配外出流量。

如果正在接受数据的slave出故障了,另一个slave 接管失败的slave的MAC地址。

该模式的必要条件:ethtool支持获取每个slave的速率。

模式7:mode=6,即:(balance-alb)Adaptiveloadbalancing(适配器适应性负载均衡)特点:该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receiveloadbalance,rlb),而且不需要任何switch(交换机)的支持。

接收负载均衡是通过ARP 协商实现的。

bonding驱动截获本机发送的ARP应答,并把源硬件地址改写为bond中某个slave的唯一硬件地址,从而使得不同的对端使用不同的硬件地址进行通信。

平时经常用到的是mode=0、mode=1、mode=4、mode=6算法。

三、bond配置A、centos/redhat下的配置11、dist.conf配置#vim/etc/modprobe.d/dist.conf#编缉该配置文件,在行尾增加如下内容aliasbond0bondingoptionsbond0miimon=100mode=1aliasbond1bondingoptionsbond1miimon=10 0mode=1aliasnet-pf-10off//这行是关闭ipv6支持,也可以不要说明:miimon是用来进行链路监测的。

如果miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式。

一些老的redhat/centos发行中已使用/etc/modprobe.conf配置文件。

2、网卡配置#catifcfg-eth0DEVICE=eth0TYPE=EthernetONBOOT=yesBOOTPROTO=noneUSERCTL=noMASTER= bond1SLAVE=yes这里只列出了eth0网卡的配置。

假设目前服务器有四快网卡,eth0、eth1配置为bond1,eth2、eth3配置为bond0。

参照上面的配置,同理eth1网卡只需复制一份eth0的配置,修改下设备名;再复制两份为eth2、eth3,需要修改DEVICE和MASTERbond名称即可。

3、bond网卡配置以bond1网卡为例:#catifcfg-bond1DEVICE=bond1TYPE=EthernetONBOOT=yesBOOTPROTO=staticUSERCTL=no注:centos/redhat下有network和NetworkManager两个服务管理网卡,两个服务同时开启在配置bond生效后会有报错。

可以通过以下配置命令关闭NetworkManager服务:#/etc/init.d/NetworkManagerstop#chkconfigNetworkManageroffB、centos/redhat下的配置2 bond选择的配置也可以不配置在dist.conf文件,而直接配置在ifcfg-bond网卡接口中,具体如下:#vim/etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0BOOTPROTO=noneONBOOT=yesUSERCTL=noBONDING_OPTS="m ode=1miimon=100"C、sles(suse)下的配置suse类似于redhat/centos,即支持写到modprobe配置文件,也支持在bond网卡配置文件中增加。

以下是在bond网卡中的配置(注意和上面使用BONDING参数项略有不同):#vim/etc/sysconfig/network/ifcfg-bond0BOOTPROTO='static'STARTMODE='onboot'BONDING_MASTER='yes'BONDING_MO DULE_OPTS='mode=1miimon=200use_carrier=1'BONDING_SLAVE0='eth1'BONDING_SLA VE1='eth2'四、删除bonding设备如由于最初配置的bonding设备取名为bond0,而后改名为了bond1,造成了两个bonding 设备的存在,现在需删除bond0。

先查看下网络设备:#ls/sys/class/netbond0bond1bonding_masterseth0eth1lo直接删除bond0,会提示无权限。

可以通过bonding_masters文件删除bond设备:#catbonding_mastersbond0?bond1直接编辑bonding_masters文件会提示权限问题#echo-bond0>bonding_mastersecho后的-号表示删除设备,+号表示添加设备#catbonding_mastersbond1#ls/proc/net/bondingbond1可以看出bond网口已经删除成功。

把eth0加入bond(bond0):#echo+eth0>/sys/class/net/bond0/bonding/slaves从bond(bond0)里移除eth0:#echo-eth0>/sys/class/net/bond0/bonding/slaves增加第一个bond,带有两个e1000接口,工作于active-backup模式,使用ARP监控,可以通过如下命令:#modprobee1000#echo+bond1>/sys/class/net/bonding_masters#echoactive-backup>/sys/class/net/bond1/bonding/mode或echo1>/sys/class/net/bond1/bonding/mode#ifconfigbond1netmaskup增加arp目标地址:#echo/sys/class/net/bond1/bonding/arp_ip_target#echo2000>/sys/class/net/bond1/bonding/arp_int erval#echo+eth2>/sys/class/net/bond1/bonding/slaves#echo+eth3>/sys/class/net/bond1/bonding/sl aves查看bond接口信息:#cat/proc/net/bonding/bond1EthernetChannelBondingDriver:v3.6.0(September26,2009)BondingMode:fault-tolerance(active-backup)PrimarySlave:NoneCurrentlyActiveSlave:eth0MIIStatus:upMIIPollingInterval(ms):100UpDelay(ms):0DownDelay(ms):0SlaveInterface:eth0MIIStatus:upSpeed:1000Mb ps Duplex:fullLinkFailureCount:0PermanentHWaddr:a0:b3:cc:e5:97:68Slavequeue ID:0SlaveInterface:eth1MIIStatus:upSpeed:1000MbpsDuplex:fullLinkFailureCount:0PermanentH Waddr:a0:b3:cc:e5:97:6cSlavequeueID:0五、ifensalve工具ifensalve是一款linux下的负载均衡工具,使用ifensalve配置bonding,如下:#modprobebondingmode=1miimon=100#ifconfigbond0netmask#ifenslavebond0eth0?eth1也可以使用ifensalve工具从bond接口里删除一个物理接口,如:#ifenslave-dbond0eth0同样可以使用ifensalve工具将一个物理接口作为active接口:#ifenslave-cbond0eth0还可以使用ifenslavebond0显示接口的详细信息。

相关文档
最新文档