一.MSTP協議
MSTP協議出現是基於STP協議和RSTP協議的,要了解MSTP協議就需要先了解其它兩個協議
首先,STP協議是交換機生成樹協議,它的出現主要是為了解決二層交換機環路的問題,當多個交換機構成環路時,就會發生網路風暴,即一個資料包不斷的在環路中傳遞,浪費交換機資源
為了解決這一問題,就誕生了生成樹協議STP,有很多交換機也是自執行STP協議,如華為的,STP解決環路的主要方法是阻塞埠,
當環路存在會在交換機中選取根橋交換機,負責資料的轉發,其根橋的埠都是指定埠用來傳送資料的
而其它交換機就會選舉出根埠或指定埠,根埠負責接收資料
當沒有被選上的埠就會阻塞,即不是根埠也不是指定埠
STP也叫單生成樹協議,當環路被阻塞一個埠後,其構成的網路拓撲就好比一棵樹一樣,但是這種STP協議由於出現早,技術不成熟,導致了它對於鏈路的選舉十分慢
所以後面就出現了RSTP快速生成樹協議,它的收斂速度很快,並且在STP的基礎上增加了2種埠標識,並且把埠屬性充分地按照狀態和角色解耦
但是RSTP協議也是單生成樹協議,它和STP應用面臨相同的問題,即無法實現負載均衡
如上圖:
當使用STP或RSTP協議時,以阻塞埠解除環路時,它的問題就是不能實現負載均衡,但是容災能力依舊存在
不管是PC9還是PC10,訪問LSW9和LSW10,路徑都是同樣的路徑3,路徑4,這使得路徑3的開銷會很大,而被阻塞的那個路徑沒有資料傳輸的開銷,這就使得它們不能實現負載均衡
還有一個問題就是次優路徑的問題,我們看圖PC10,如果他要去LSW10應該是透過被阻塞的那條路徑是最短的,但是它是被阻塞的,導致它要繞道LSW9然後到LSW10,所以就產生了鏈路存在最優路徑,而被迫走次優路徑的情況
所以為了解決這些問題,MSTP孕育而生了
MSTP出現解決了STP收斂慢的特點,又解決了RSTP不能實現負載均衡和次優路徑的問題
MSTP協議也叫多生成樹協議,聽名字就知道,它不再是單獨的一棵生成樹,MSTP是基於例項來劃分生成樹的,例項可以有255個,每個例項中裝的都是VLAN,每個例項可以裝多個Vlan
這樣我們大概就可以知道,MSTP中生成樹就是根據Vlan來劃分成的,每個例項都有自己的一些vlan,所以不同的例項就會走自己的生成樹,從而不同的生成樹堵塞埠也不一樣
如上圖:
這就是MSTP生成樹協議的解除環路的方式,它不在統一構建單顆生成樹,而是依舊例項vlan構建多棵生成樹
由於LSW9是PC9的閘道器,而LSW10是PC10的閘道器,在通訊時它們會依據生成樹去找閘道器,這就解決了負載均衡的問題
當到達閘道器後,它可以沿著閘道器去任何一條路徑,並且兩個例項的路徑時對立的,不存在走重的路徑,這就解決了一個PC去閘道器需要去另外一個PC的路徑借道到閘道器,使得發生次優路徑的情況
理論我們已經清楚了,記住提到MSTP協議一定要想到多生成樹,現在來看看實現
二.MSTP配置(ENSP)
配命令:
LSW9:
vlan batch 10 20
stp instance 1 root primary
stp instance 2 root secondary
stp region-configuration
region-name huawei
instance 1 vlan 10
instance 2 vlan 20
active region-configuration
interface Ethernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 4094
interface Ethernet0/0/2
port link-type trunk
port trunk allow-pass vlan 2 to 4094
LSW10:
vlan batch 10 20
stp instance 1 root secondary
stp instance 2 root primary
stp region-configuration
region-name huawei
instance 1 vlan 10
instance 2 vlan 20
active region-configuration
interface Ethernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 4094
interface Ethernet0/0/2
port link-type trunk
port trunk allow-pass vlan 2 to 4094
LSW11:
vlan batch 10 20
stp region-configuration
region-name huawei
instance 1 vlan 10
instance 2 vlan 20
active region-configuration
interface Ethernet0/0/1
port link-type access
port default vlan 10
interface Ethernet0/0/2
port link-type access
port default vlan 20
interface Ethernet0/0/21
port link-type trunk
port trunk allow-pass vlan 2 to 4094
interface Ethernet0/0/22
port link-type trunk
port trunk allow-pass vlan 2 to 4094
提出MSTP協議的關鍵配置:
stp mode mstp
切換預設STP協議為MSTP協議
stp region-configuration
進入MSTP協議的配置
region-name huawei
配置服務為華為雲服務區域名稱
instance 1 vlan 10
將Vlan10加入例項1
instance 2 vlan 20
將Vlan20加入例項2
active region-configuration
啟用MSTP配置
三.抓包分析MSTP
如上圖:
例項10的路徑是沿著LSW11 到 LSW9 在到LSW10因為ping的是對方的閘道器,自己的閘道器是LSW9
根據抓包路徑就可以看到例項10是阻塞的LSW11 到 LSW10這條路徑,
如果是STP協議那麼例項20也應該是堵塞的這條路徑,但是這是MSTP協議,我們在看看例項20的抓包,相同的也是ping對方的閘道器,也就是例項10的閘道器
如上圖
例項20走的路徑則是和例項10相反,為什麼呢?因為多生成樹協議,解決了次優路徑的問題,
透過圖就可以看到LSW11 到 LSW10的路徑到閘道器是最短的,LSW10是例項20的閘道器,因為要先到閘道器再到例項10的閘道器
同時我們也可以發現LSW11 到 LSW9這段路徑被阻塞了,然後具體分析一下
例項10堵塞的是路徑:LSW11----LSW10
例項20堵塞的是路徑:LSW11----LSW9
透過上面的抓包就大概可以瞭解到為什麼MSTP是多生成樹協議了吧,因為它真的生成了多棵樹,而且是更具最優路徑來生成樹
補充:
要想例項10去閘道器都走LSW9,其實相對於LSW9來說,它就是例項10這顆生成樹的根橋交換機,所以要想它被選為例項10的根橋交換機,就可以對其進行配置:
stp instance 10 root primary
在LSW9交換機上配置stp例項10為其根橋
相同的道理,例項20去閘道器都走LSW10,那麼LSW10也是例項20的根橋交換機,對其配置:
stp instance 20 root primary
如上,配置LSW10後它就是例項10這顆生成樹的根橋了,資料包會優先到根橋交換機,然後轉發
這樣它即是根橋交換機又是閘道器,二者兼得
四.VRRP協議
什麼是VRRP協議?
VRRP叫路由冗餘協議,是一種提高網路可靠性的容錯協議,它可以在主機的下一跳裝置故障時,及時將業務切換到備份裝置,從而保證網路的正常通訊
從定義中我們需要抓住一個關鍵字,備份,路由冗餘協議需要備份什麼,當然是路由
VRRP常常用於備份閘道器,它和MSTP協議結合使用,首先我們要知道VRRP是怎麼來備份的,
它在備份的裝置上設定一個閘道器,且優先順序大於100,因為預設的VRRP虛擬介面是100,大於100則表示在本機未故障的時候優先順序是最高的,而其它裝置上就需要備份設定相同的閘道器,不更改優先順序就是100,那麼它就是次優閘道器
當然,多備份的時候,只要小於主交換機的時候,也是可以當作備份的閘道器
這就和浮動路由很像,有兩條路徑都可以到達目的地址,但是在路由表中會記錄最優的那條路徑,當最優路徑down掉以後,另外一條次優路徑才會浮起來,保證鏈路通暢
相同的VRRP的配置中只要主閘道器還存在,那麼其它的閘道器都是浮動的,無效路由,只有主閘道器(優先順序最高的)當機以後,其它的備份閘道器才會浮起來
VRRP配置的閘道器也是一個在虛介面上,所以它可以在物理層上將兩個或多個路由器邏輯的劃分為一個,根據優先順序來決定去那個路由器
這也是VRRP主要的實現方式,邏輯的將多個路由器閘道器構成一個閘道器
如上圖:
當兩個VRRP虛擬介面閘道器都存在的時候,則是優先順序高的來當閘道器,提供閘道器服務
當優先順序高的閘道器2當機以後,備份閘道器1也就浮動起來了,然後由閘道器1來當閘道器,然後繼續提供閘道器服務
VRRP實驗(ENSP)
實現的目的
LSW9作為192.168.1.0網段的主閘道器,並且作為192.168.2.0的備份閘道器
LSW10作為192.168.2.0網段的主閘道器,並且作為192.168.1.0的備份閘道器
然後來看配置:
LSW9:
interface Vlanif10
ip address 192.168.1.200 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.1.254
vrrp vrid 1 priority 200
interface Vlanif20
ip address 192.168.2.200 255.255.255.0
vrrp vrid 2 virtual-ip 192.168.2.254
LSW10:
interface Vlanif10
ip address 192.168.1.200 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.1.254
interface Vlanif20
ip address 192.168.2.200 255.255.255.0
vrrp vrid 2 virtual-ip 192.168.2.254
vrrp vrid 2 priority 200
如上,
在交換機上配置IP地址是需要先進入Vlanif中的,如果是在路由器上配置就進入介面中就行了
首先給Vlanif增加一個IP地址,因為VRRP是虛擬介面,所以不需要直接配置在Vlanif介面上
而是在此介面上虛擬化一個VRRP,在LSW9上192.168.1.254的優先順序為200,而192.168.2.254的優先順序為100(預設)
且在LSW10上192.168.1.254優先順序為100,192.168.2.254的優先順序為200
由此LSW9為192.168.1.0的主閘道器,為192.168.2.0的備份閘道器
LSW10為192.168.2.0的主閘道器,為192.168.1.0備份閘道器
在任何一個交換機故障後,VRRP配置會使備份頂上來,維護鏈路完整通訊。