linux上行网络聚合,【讲清楚,说明白!】Linux高级网络配置--聚合网络和桥接

目录:

(一)了解什么是聚合链路

(二)配置聚合网络的几种方式

(三)配置桥接网络vim

(一)了解什么是聚合链路

(1.1)在咱们系统中有一个客户端client,还有一台服务器server,在服务器和客户端之间使用交换机进行链接,交换机和服务器的带宽为无限大,没有任何的限制,而客户端和交换机之间是百兆的带宽。此时咱们假设服务器上有100G的内容须要传输到客户端上,假设咱们常规状况下须要1个小时能够将文件所有下载下来。此时咱们感受1个小时下载文件是很是费时的,而此时咱们client客户端上有两张网卡,若是直接将第二张网卡插上一根网线链接到交换机上,但愿时间可以所以下降到0.5小时,这实际上是没法实现的。由于在每一个交换机里存在着mac地址表,例如f0/0和client eth0关联,f0/1和client eth2关联,f0/2和server eth0关联,在局域网内部通讯的时候有一个很重要的因素是mac地址,客户端和服务器通讯的时候,client客户端从eth0网卡出来通过了交换机找到了server服务器端的eth0地址。此时client的源地址是“s:client:eth0”,而此时server的目的地址是“d:client:eth0”,而当通讯的信息从server端返回到交换机的时候,此时交换机会去ARP表中解析client端的eth0对应的mac地址是什么并将其关联起来,因此当使用client端的eth0和server端进行通讯,即便咱们从新插入另一根网线将client端的eth1接入进来,也仍然没法为client端的eth0网卡分担100G数据从server端下载过来的流量。

abd035703a91245a7c5fa2bd61eddb07.png

(1.2)若是咱们但愿client端的多张网卡能够同时工做,分担单个网卡下载流量的压力时,咱们能够将eth0的mac地址和eth1的mac地址使用软件合并成一个mac地址,此时当有数据包从server端返回到交换机的时候,交换机发如今ARP表中f0/0与f0/1对应的是同一个mac地址,所以此时数据包从eth0网卡传输和eth1网卡传输都是能够的。此时数据包是如何分配的呢?咱们能够有两种分配模式,第一种是activebackup高可用备份,数据先从一条链路的网卡eth0进行传输,当出现当前传输的链路断开时,备用的eth1便会马上顶上去继续提供传输服务;第二种是roundrobin轮询,即传输文件时,一部分流量能够从eth0传输,接着一部分流量从eth1传输,这样循环往复进行数据传输,固然相似的方式还有LoadBlanace负载均衡。固然第二种方式除了在主机上进行配置,同时仍是须要在交换机上配置channel。

(1.3)当咱们将client客户端eth0和eth1的mac地址修改成同样后,咱们应该在哪一个网卡上配置IP地址呢?咱们的解决方案是建立一个虚拟的网卡team0关联eth0和eth1,而后在team0网卡上配置IP地址,因为eth0、eth一、team0解析出来的mac地址都是同样的,同时记录在交换机的f0/0和f0/1上,此时当server主机上传送过来的数据包到达交换机后,发现IP地址对应的mac地址既出如今f0/0上,也出如今了f0/1上了,因此此时数据包即可以选择从eth0传输,也能够选择从eth1传输。通常咱们须要实现改变网卡mac地址的需求能够经过两种方式来实现,第一种方式是配置网卡的binding绑定网络,第二种方式是配置网卡的team聚合网络,此处咱们使用第二种方式实现。

67a6c10278dd00d9ecf07d82f97f00b6.png

(1.4)应用场景:当服务器提供比较重要的服务时,只准备一张网卡是远远不够的,由于一旦网卡出现故障,客户就没法访问,这就会形成客户流失,体验感差,这个时候就能够运用链路聚合的方案来解决,将多张网卡绑定在一块儿建立一张虚拟网卡,从而实现网卡热备份、流量轮询式负载均衡,以此来保障服务器可以正常提供服务,给用户以良好的体验。服务器

(二)配置聚合网络的几种方式

(2.1)配置聚合网络,咱们通常可使用三种方式实现,第一种是图形化界面配置,第二种是命令行的方式配置,第三种是经过修改配置文件的方式操做。咱们首先使用第一种图形化界面的配置方式在vms002主机上进行配置,咱们在vms002主机上添加两张新的网卡,而后发现此时系统中已经存在三张网卡了(图2-3)。

cd14c72086317b3d29f934f22244a498.png

9e751b60c4a43772b59c6a62664e66e1.png

7d02fe79433960a25b0b942e038ee790.png

(2.2)接着咱们将NetworkManager服务启动起来,并打开图形化界面。咱们选择添加一个“组队”网络,而后将链接名称和接口名称设置为team0(图2-6),在IPv4的设置处设置IP地址和子网掩码(图2-7),接着添加一个网卡,并命名为team0-slave1,添加第二张网卡,并命名为team0-slave2,同时还要添加JSON文件“{"runner":{"name":"activebackup"}}”(图2-9),此时咱们保存文件并关闭图形化界面,最后重启网络便可(图2-10)。

# systemctl start NetworkManager

# nm-connection-editor &

fc72ca4f3e86bf51f5865ede16651ca9.png

2d677bc03d0680eeb623242484e59aa0.png

a7802218165d5509a92a04366e7e46df.png

64ea9bdca0987f87b16825f303abbb30.png

821b8f5c371962471cd14de0bd3f2781.png

643805201b8b5e1b0258cdb5229af22b.png

a3055d77e3baa379dbea2c93705457b9.png

f3347da610dac1502dfa1586ef899682.png

(2.3)此时咱们在vms002主机上使用ifconfig命令查看网卡eno3355496八、eno5033219二、team0时,发现网卡的mac地址已经变成同样的了(图2-11)。此时咱们在vms001主机上进行ping操做,发现是能够ping通vms002主机的(图2-12)。

f547435d7dd5936ea3531e3cec15c27a.png

f611069cde41e33fd528b1885e82eb24.png

(2.4)咱们使用teamdctl命令能够查询出当前系统使用的是activebackup备份高可用,当前工做的网卡是eno33554968,而后咱们将该网卡断开(图2-13),此时咱们发现系统仍然是备份高可用状态,而且已经自动链接到了第二张网卡eno50332192(图2-14),并且此时vms001主机ping向vms002主机的链接一直没有断开(图2-15)。

# teamdctl team0 state---查询当前系统的网络状态

# nmcli device disconnect eno33554968---将网卡eno33554968链接断开

1be1e26317dc30402f94a920fa7c9d59.png

19106646038f175060c8b914f252660e.png

bce20c90edc7e07b9e865cfd5b19aa28.png

(2.5)接着咱们在vms002主机上先将eno33554968网卡链接上,而后将eno50332192网卡的链接断开,能够发现因此此时vms002主机的备份高可用的需求仍然是实现了的。

# nmcli device connect eno33554968---咱们将eno33554968网卡从新链接上

# nmcli device disconnect eno50332192---咱们将eno50332192网卡链接断开

# teamdctl team0 state---查询当前网卡的链接状态

# tcpdump -i eno33554968---在vms002主机进行抓包

注意:若是咱们发现当vms001主机没法ping通vms002主机的时候,能够在vms002主机上使用tcpdump命令抓一下包,此时系统之间的链接便会正常。

8a8ba324f9d6596add52a49a8472a6fc.png

(2.6)接着咱们经过第二种命令行的方式进行配置,咱们首先在vms002主机上将以前用图形化设置的组队信息删除,而后从新使用命令行进行设置,咱们添加一个team网卡设置链接名为team0,设置网卡名为team0,并添加备份高可用的JSON信息,而后在将系统中的两张网卡eno33554968和eno50332192设置为从属于team0的team-slave类型。

# nmcli connection delete team0

# nmcli connection delete team0-slave1

# nmcli connection delete team0-slave2

# nmcli connection add type team con-name team0 ifname team0 config '{"runner":{"name":"activebackup"}}---添加一个team网卡设置链接名为team0,设置网卡名为team0,并添加备份高可用的JSON信息

# nmcli connection modify team0 ipv4.addresses 192.168.26.200/24 ipv4.gateway 192.168.26.2 ipv4.dns 192.168.26.2 ipv4.method manual---设置team0网卡的IP地址、网关、DNS,并设置team0网卡为手动

# nmcli connection add type team-slave con-name team0-slave1 ifname eno33554968 master team0---在team0网卡中添加一个team-slave,设置链接名为team0-slave1,网卡名为eno33554968,且从属于team0网卡

# nmcli connection modify team0-slave1 connection.autoconnect yes---设置开机的时候网卡能够自动链接

# nmcli connection add type team-slave con-name team0-slave2 ifname eno50332192 master team0---在team0网卡中添加一个team-slave,设置链接名为team0-slave2,网卡名为eno50332192,且从属于team0网卡

# nmcli connection modify team0-slave2 connection.autoconnect yes---设置开机的时候网卡能够自动链接

a356772906ebc66b051c1ab9358820b5.png

5077b11ca0f12c629f839d7f0aad2316.png

(2.7)咱们将网络重启后发现此时vms002主机设置组队的三张网卡的mac地址已经彻底一致了,此时咱们发现vms001主机已经能够正常的ping同vms002主机的组队网络team0了。

# systemctl restart network---将网路重启一下

# tcpdump -i eno33554968---对网卡eno33554968抓包

007127022f089e9b5ceb63a771c16bbc.png

b0918279969363c192bdb5d19b0436f0.png

(2.8)而后咱们使用第三种修改配置文件的方式进行配置,咱们首先进入到/usr/share/doc/teamd-1.15/example_ifcfgs/1目录中,将三个模板文件拷贝到/etc/sysconfig/network-scripts/目录中(图2-22),咱们将ifcfg-eth1重命名为ifcfg-eno33554968,将ifcfg-eth2重命名为ifcfg-eno50332192,并在ifcfg-eno33554968配置文件和ifcfg-eno50332192配置文件中配置对应的信息(图2-22至图2-25)。

# nmcli connection delete team0

# nmcli connection delete team0-slave1

# nmcli connection delete team0-slave2

# cd /usr/share/doc/teamd-1.15/example_ifcfgs/1

fdcbd20d2ab550334f9385cf18650c6e.png

1a7a03982bbe76c2387af3e31d15b2c5.png

cbe2e2a86f7caaf66b8bdcb7dda2e1a6.png

4c504bfefdbb04c5fc2557b04ebaef7a.png

03976fc07921718fdaafd9193e875b9b.png

(2.9)最后咱们还要编辑ifcfg-team_test0配置文件,并填写相关的配置信息,最后咱们将网络重启一下,此时能够发现系统的组队网络team0已经生效了,而且三张网卡的mac地址已经彻底一致了(图2-28)。此时咱们在vms001主机上ping向vms002主机的聚合网络时,是可以ping通的(图2-29)。

# systemctl restart network

# teamdctl team_test0 state---查询team_test0组队网路的状态

# nmcli device disconnect eno33554968---断开eno33554968网卡的链接

# nmcli device connect eno33554968---从新链接eno33554968网卡

af7448dfe898036e90c897b92a7c91e2.png

7006ebd75ef2f0dd2918e77df3805f08.png

ace4ec100178e7b6ea45cb595a8d4af1.png

8c13190db8bd21718c32bbed9f1c1586.png网络

(三)配置桥接网络

(3.1)通常桥接网络是应用在虚拟化的环境中,咱们能够经过三种方式配置桥接网络,第一种是图形化界面的配置方式,第二种是命令行的配置方式,第三种是经过修改配置文件的方式。首先咱们使用图形化界面的方式进行配置,咱们在vms002主机上设置两张网卡,而后咱们打开图形化界面,选择桥接模式(图3-3),而后依次配置桥接和IPv4设置(图3-4至图3-6),而后点击保存并关闭。此时咱们便建立了一个桥接网络br0了,且实现了将eno33554968网卡桥接到了bro网卡上(图3-7),最后咱们将网路重启便可。此时咱们从物理机上尝试ping向192.168.26.200的IP地址是能够ping通的(图3-8)。

# nm-connection-editor &

# systemctl restart network

304f5dce105a09ba494446e14385897b.png

897a69978a9c5b70c9be903b92d56752.png

b9090be1fb466fe2bcb349717444388d.png

03fe25d7266772ade4a25a3faef89cb8.png

a7bd5bb644bf1239d1628a81b1bd65a7.png

398af79ee5038febc50c8d193e63e6a9.png

786f887d9ea443c84077a206fe7b8f38.png

dac905c213764166ad7061ea3f2beba1.png

(3.2)而后咱们使用第二种命令行的方式来进行配置,咱们首先将以前配置的信息清理一下(图3-9),而后配置一个br0网桥,并将网卡eno33554968和br0网桥进行关联(图3-10)。此时咱们从物理机上ping向vns002主机的桥接网络时,仍然是能够ping通的(图3-11)。

# brctl show---查询桥接的网络信息

# nmcli connection---查询网卡链接状态

# nmcli connection delete br0---删除br0网卡

# nmcli connection delete br0-slave1---删除br0-slave1网卡

# nmcli connection add type bridge con-name br0 ifname br0---建立一个桥接的网桥,命名为br0,同时设置链接名为br0

# nmcli connection modify br0 ipv4.addresses 192.168.26.200/24 ipv4.gateway 192.168.26.2 ipv4.dns 192.168.26.2 ipv4.method manual connection.autoconnect yes---设置br0网桥的IP地址、网关、DNS的信息,并设置ipv4为手动启动,同时开机自动链接

# nmcli connection add type bridge-slave con-name br0-slave1 ifname eno33554968 master br0---设置从节点链接名为br0-slave1,链接的网卡是eno33554968

# nmcli connection modify br0-slave1 connection.autoconnect yes---设置从节点开机自动链接

2ec66ccfde0146b5c950987e2ea1c241.png

89a5743d9c56436f8d0be937596f675c.png

46e5d50ab5a6803571fe44793b75d785.png

(3.3)接着咱们使用第三种修改配置文件的方式进行配置,咱们进入到/etc/sysconfig/network-scripts/目录中,而后建立一个ifcfg-br0文件,并作以下的配置(图3-12和图3-13),接着建立一个ifcfg-br0-slave1文件,并作以下的配置(图3-14图3-15)。

# vim ifcfg-br0

# vim ifcfg-br0-slave1

36ab52d86f733cef9cbaec136fa755c2.png

ONBOOT=yes表示开机是否自动启动;BOOTPROTO=none表示开机经过什么协议获取IP地址

7a63c5ed3c296cfba35beefcfaece710.png

47c0e77878df0607c55fae9f47d9ffaf.png

8f8f420d4227a3d052ac8ae37a0eb21b.png

(3.4)最后咱们将vms002主机的网络服务重启一下,此时发现br0和网卡eno33554968的mac地址一致,咱们使用物理机也是能够正常的ping通vms002主机的桥接网络的。

# brctl show---查询桥接网络信息

2055ed2d198ba3c7aaec652a7ee3c9e6.png

fdc8766dd2f90220e4068ef73f3f93b3.png

22af3608600592feb119394b9d1ad389.png负载均衡

—————— 本文至此结束,感谢阅读 ——————tcp

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值