网卡的链路聚合--两个网卡接口变成一个

author author     2022-09-14     191

关键词:

使用环境:由于本实验需要两个或者以上网可,所以建议在虚拟设备中作,可以虚拟出数个网卡









Linux双网卡bond方式简介

随着分步式计算、大数据大规模兴起,不断增长的计算节点之间海量数据传输交互,内部节点处理过程产生大量东西向流量,要求网络具有良好的扩展性和吞吐率,能够充分适应业务突发流量且具备高可靠性,对主机双网卡bond要求既能充分利用链路带宽资源又具备高可靠性显得尤其重要

基于linux的操作系统网卡bond模式有七种,模式 (0~6) mode=0、mode=1、mode=2、mode=3、mode=4、mode=5、mode=6,七种bond模式分别说明如下:

    第一种模式:mode=0,即:(balance-rr) Round-robin policy(负载均衡轮询策略)

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

    第二种模式:mode=1,即: (active-backup) Active-backup policy(主-备用策略)  

    特点:只有一个网卡处于活动状态,当一个宕掉另一个即刻由备用状态转换为主用状态。从交换机上看,bond的MAC地址是唯一的,以避免SwitchARP表项发生混乱。此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有N个网络接口的情况下,资源利用率为1/N。

    第三种模式:mode=2,即:(balance-xor) XOR policy(平衡策略)

    特点:基于指定的传输HASH策略传输数据包。缺省的策略是:通过源和目标mac做hash因子来做xor算法来选路的。其他的传输策略可以通过xmit_hash_policy选项指定,此模式提供负载平衡和容错能力。

    第四种模式:mode=3,即:broadcast(广播策略)

    特点:在每个slave接口上传输每个数据包,一个报文会复制两份往bond下的两个接口分别发送出去,当有对端交换机失效时无感知。此方式过于浪费资源,但有很好的容错机制。

    第五种模式:mode=4,即:(802.3ad) IEEE 802.3ad Dynamic link aggregation(IEEE 802.3ad动态链路聚合)

    特点:创建一个聚合组,它们共享同样的速率和双工设定。根据802.3ad规范将多个slave工作在同一个激活的聚合体下。外出流量的slave选举是基于传输hash策略,该策略可以通过xmit_hash_policy选项从缺省的XOR策略改变到其他策略。

配置bond模式主备网卡的链路聚合

1:火墙

[[email protected] ~]# systemctl start NetworkManager-wait-online.service 
[[email protected] ~]# systemctl start NetworkManager-wait-online.service

2:添加bond

[[email protected] ~]# nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup ip4 172.25.254.120/24
Connection ‘bond0‘ (20ade0e4-397d-446c-bd67-4c3dba8e76a0) successfully added.

##添加 类型为bond的bond0 改名为bond0 模式是主备 ip为172.25.254.120

3:添加网卡

nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0
##给bond0上添加网卡eth0改名为eth0
nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0
##给bond1上添加网卡eth0改名为eth1

4:查看bond0的情况 (监控)

  
[[email protected] ~]# cat /proc/net/bonding/bond0  ##查看bond0的信息
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth1
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 52:54:00:04:a2:1e
Slave queue ID: 0

5:测试

[[email protected] ~]# ifconfig eth0 down        ##使eth0坏掉
[[email protected] ~]# cat /proc/net/bonding/bond0 
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1    ##eth1顶上去
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth1
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 52:54:00:04:a2:1e
Slave queue ID: 0

Linux多网卡team方式简介

网卡(接口)绑定是将多块 网卡 逻辑地连接到一起从而允许故障转移或者提高吞吐率的方法。提高服务器网络可用性的一个方式是使用多个网卡。Linux 绑定驱动程序提供了一种将多个网卡聚合到一个逻辑的绑定接口的方法。这是个新的实现绑定的方法,并不影响 linux 内核中旧绑定驱动。

网卡Team概述在网络管理实践中,为了预防网络设备之间的链路故障,通常会采取多链路聚合Trunking技术来提供端口级或交换机级别的冗 余容错,同时实现负载均衡。对于服务器的网络连接而言,同样也可以通过类似的技术来提供容错能力,这就是Teaming技术。简单来讲,Teaming技 术就是通过专用工具将一台服务器的两块或最多八块物理网卡绑定成一个Team,这个Team中所有与交换机的物理连接共同形成一个虚拟的链路。不论这个 Team是由几个网卡构成的,对客户机来讲,对服务器的访问只能通过一个IP地址进行,也就是说,服务器的网卡是否配置成Team,客户机对服务器的访问 方式都不会发生改变。

服务器的两个或以上的网卡配置成Team后,能够带来的最大好处是可以实现服务器数据传输链路的冗余容错,有效消除单点故障隐患。当Team中的一 个物理网络连接失效时,其它的可用网络连接会自动接管负载,从而保证数据传输的可持续性。其应用效果如下图所示,当在线链路失效时,负载会自动切换到待用 链路,链路的中断和切换不会影响到正常的应用运行。

在实际应用中也可以更进一步,将服务器的两个或多个网卡分别接入到两台交换机上,通过交换机相关协议的支持,就可以实现服务器网络接入的交换机级别的冗余,从而提供更高级别的容错能力。

除 了提供传输链路的冗余容错外,网卡Team还可以带来的第二个好处,那就是能够实现服务器数据传输的负载均衡。在不考虑交换机协议支持或进行任何配置的情 况下,将服务器的多块网卡配置成负载均衡模式的Team后,服务器的网络连接带宽将变为构成Team的所有物理连接的带宽之和,所有的网络连接共同参与完 成服务器数据传输工作。

配置team模式主备网卡的链路聚合

1:添加team

nmcli connection add type team con-name team0 ifname team0 config ‘{"runner":{"name":"activebackup"}}‘ ip4 172.25.254.120/24           ##添加team0

2:添加网卡

nmcli connection add con-name eth0 ifname eth0 type team-slave master team0  ##给team0添加eth0 
nmcli connection add con-name eth1 ifname eth1 type team-slave master team0

3:测试

4:监控

teamdctl team0 state


本文出自 “12462896” 博客,请务必保留此出处http://12472896.blog.51cto.com/12462896/1955737

聚合链路与桥接测试

用途:将主机上的两块网卡绑定在一起,构成一个逻辑端口。交换机根据用户配置的端口负荷分担策略决定报文从哪一个成员端口发送到对端的交换机。当其中一块网卡发生故障时,则继续使用另外一块正常的网卡。RHEL5/6叫网... 查看详情

win10怎样绑定双网卡或多网卡做nicteaming链路聚合

...带宽。broadcomgigabitethernetadapterteaming任何可用的千兆brodcom网卡都可以配置为team的一部分。teaming是一种将多块千兆brodcom网卡绑定作为一个虚拟网卡。好处就是负载均衡。通过选择每一个可用的千兆brodcom网卡并添加它们到负载均衡... 查看详情

华为交换机配置链路聚合(手工模式链路聚合和lacp模式聚合)ubuntu20.04服务器配置多网卡链路聚合

一.华为交换机配置链路聚合(Eth-Trunk),是将多个物理接口捆绑为一个逻辑接口,实现增加链路带宽、提高可靠性、提供负载分担的目的。链路聚合两种模式:手工负载分担模式(默认模式,默认负载均衡方式src-dst-ip适用于:... 查看详情

win10怎样绑定双网卡或多网卡做nicteaming链路聚合

1、重命名网卡名win10左下角LOGO->设置->网络和internet->(左侧)以太网->(右侧)网络和共享中心->(左侧)更改适配器设置,默认情况下两个网卡名称改为“nic1”,“nic2”。2、PowerShell打开Win10的powershell使用命令行设... 查看详情

linux系统配置链路聚合

1、虚拟机添加一张网卡2、通过ipaddr可以看到多了一张ens36网卡ipaddr3、创建bond0nmcliconnectionaddtypebondcon-namemybond0ifnamebond0modeactive-backupipv4.methodmanualipv4.address192.168.100.100/24#添加bonding接口,模式为主备模式并设置ipnmcliconnectionaddtypebond... 查看详情

配置双网卡聚合(代码片段)

一服务器多网卡聚合的意义1、多网卡聚合,可以起到网络链路冗余作用,当故障发生时,网络自动切换,保证业务数据不中断。2、多网卡聚合成一条虚拟链路,可实现网络带宽提升,如2个1000Mbps的网卡聚... 查看详情

3-双网卡的网络配置

#####双网卡网络配置######*链路聚合*作用:主动备份模式一次只能只能使用一个接口,如果接口故障,另一个会接替它命令:nmcliconnectionaddcon-namebond0ifnamebond0typebondmodeactive-backupip4172.25.254.162/24   ##添加主动备份模式的bon... 查看详情

centos7网卡绑定(链路聚合)

参考技术A内核参数调优查看详情 查看详情

网卡链路聚合

给虚拟装上两块网卡,并且删除掉所有网卡配置配置bond650)this.width=650;"src="https://s4.51cto.com/wyfs02/M01/96/0E/wKioL1kcUP6QfMvKAAB3d3KSwLg243.png"title="Screenshotfrom2017-05-1711-44-05.png"alt="wKioL1kcUP6QfMvKAAB3d3KSwL 查看详情

链路聚合

环境准备:centos7.0  双网卡或者多网卡聚合后的IP地址:10.2.2.100网卡名分别为:enp0s8和enp0s9具体配置一、查看当前网卡信息:nmcliconnectionshow 二、创建网卡组(聚合后的网卡组)##格式如下:nmcliconnectionadd con-name 逻... 查看详情

win10怎样绑定双网卡或多网卡做nicteaming链路聚合

参考技术A一般情况下双网卡需要安装局域网上网分享软件,sygate或者wingate。 查看详情

如何在vmwareesx上实现网卡聚合

网卡(NIC:NetworkInterfaceCard)聚合意思就是把若干个网卡规整到一个网卡上。如果配置合理的话,VMwareESX上面的网卡聚合可以同时为客体虚拟机提供入站和出站的负载均衡。负责均衡使得把多个可用网卡均分到更多的服务器上,... 查看详情

理解linux下网卡的bonding

参考技术A发现工作中可能会用到Linux下网卡绑定相关的知识。找了些文章看,然后一通混剪,各家所长为我所用。网卡bond,即网卡绑定,也称作网卡捆绑。网卡绑定有多种称谓:PortTrunking,ChannelBonding,LinkAggregation,NICteaming等等,... 查看详情

配置双网卡聚合(代码片段)

一服务器多网卡聚合的意义1、多网卡聚合,可以起到网络链路冗余作用,当故障发生时,网络自动切换,保证业务数据不中断。2、多网卡聚合成一条虚拟链路,可实现网络带宽提升,如2个1000Mbps的网卡聚... 查看详情

redha7链路聚合(代码片段)

...链路聚合在Redhat7链路聚合有两种:bond和teambond是把多个网卡绑定在一起,逻辑出一个接口,这样可以提高吞吐量,和冗余功能bond是依赖bonding.ko这个内核模块。查看内核有没有加载bonding.ko模块#modinfobinding可以查看模块信息。如... 查看详情

主机与虚拟机网桥制作与网卡链路聚合

(一)配置网络桥接网络桥接的管理命令brctl   桥接管理命令show   显示addbr  添加网桥delbr  删除网桥addif   添加网桥连接delif   删除网桥连接初始化的时候是没有br0的[[em... 查看详情

linux实现多网卡聚合绑定bonding(代码片段)

多网卡聚合bonding生产环境通常需要将多块网卡绑定同一IP地址对外提供服务,以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通过bonding技术,将多块物理网卡虚拟成一块网卡对外提供连接,... 查看详情

聚合链路及故障排查

一、聚合链路1、首先准备两块网卡2、配置slave,即将eno16777736和eno33554960两块网卡加入到team03、使用 #nmcliconnectionupteam0-1命令重新连接4、执行#nmcliconnectionshow命令查看team0-1和team0-2状态5、最后给team0分配一个IP地址   &n... 查看详情