拓撲圖
步驟一。 IP編址與基本配置
給所有路由器配置IP地址資訊。
Enter system view, return user view with Ctrl+Z。
[Huawei]sysname R1
[R1]interface loopback 0
[R1-LoopBack0]ip address 1。1。1。1 32
[R1-LoopBack0] GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]ip address 10。0。123。1 24
Enter system view, return user view with Ctrl+Z。
[Huawei]sysname R2
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]ip address 10。0。123。2 24
[R2-GigabitEthernet0/0/0]interface GigabitEthernet0/0/1
[R2-GigabitEthernet0/0/1]ip address 192。168。1。2 24
Enter system view, return user view with Ctrl+Z。
[Huawei]sysname R3
[R3]interface GigabitEthernet 0/0/0
[R3-GigabitEthernet0/0/0]ip address 10。0。123。3 24
[R3-GigabitEthernet0/0/0]interface GigabitEthernet0/0/1
[R3-GigabitEthernet0/0/1]ip address 192。168。1。3 24
Enter system view, return user view with Ctrl+Z。
[Huawei]sysname R4
[R4]interface GigabitEthernet 0/0/1
[R4-GigabitEthernet0/0/1]ip address 192。168。1。4 24
Enter system view, return user view with Ctrl+Z。
[Huawei]sysname R5
[R5]interface GigabitEthernet 0/0/1
[R5-GigabitEthernet0/0/1]ip address 192。168。1。5 24
配置完成後,在R1上測試到R2和R3的連通性。
測試R2、R3、R4和R5之間的連通性,以R2為例。
步驟二。 配置OSPF協議和靜態路由
R1的環回口0,R1、R2和R3互連線口執行在OSPF的區域0,R2和R3連線S1交換機的介面也要宣告進OSPF,但不建立鄰居,只為釋出路由,因此使用silent模式。
R4和R5為模擬PC,使用靜態預設路由指向該網段的192。168。1。1(VRRP虛擬地址)。
最終實現的目標是R1可以學到192。168。1。0網段路由,R2和R3可以學到1。1。1。1路由。
[R1]ospf router-id 10。0。0。1
[R1-ospf-1]area 0
[R1-ospf-1-area-0。0。0。0]network 10。0。123。0 0。0。0。255
[R1-ospf-1-area-0。0。0。0]network 1。1。1。1 0。0。0。0
[R2]ospf router-id 10。0。0。2
[R2-ospf-1]silent-interface GigabitEthernet 0/0/1
[R2-ospf-1]area 0
[R2-ospf-1-area-0。0。0。0]network 10。0。123。0 0。0。0。255
[R2-ospf-1-area-0。0。0。0]network 192。168。1。0 0。0。0。255
[R3]ospf router-id 10。0。0。3
[R3-ospf-1]silent-interface GigabitEthernet 0/0/1
[R3-ospf-1]area 0
[R3-ospf-1-area-0。0。0。0]network 10。0。123。0 0。0。0。255
[R3-ospf-1-area-0。0。0。0]network 192。168。1。0 0。0。0。255
[R4]ip route-static 0。0。0。0 0。0。0。0 192。168。1。1
[R5]ip route-static 0。0。0。0 0。0。0。0 192。168。1。1
配置完成後,觀察各裝置的路由表,以R1、R2和R4為例
從以上輸出可以看到,R1可以學習到192。168。1。0/24路由,R2可以學習到1。1。1。1/32路由,R4有一條靜態預設路由指向192。168。1。1。
步驟三。 配置VRRP組和虛擬地址
在R2和R3 的相應介面上啟用VRRP並配置虛擬組ID和虛擬地址。
[R2-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192。168。1。1
由於R2先進行了配置,經歷一個等待週期後發覺組內沒有其他成員,因此自己成為Master。
[R3-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192。168。1。1
配置完成後,在R2和R3上觀察VRRP狀態。
R2成功當選Master路由器,R3為Slave路由器。但此時並沒有配置優先順序,主備優先順序都是100,這種情況下如果R3先啟動,那麼主裝置會變成R3,這種結果不是我們期望的。
步驟四。 配置VRRP裝置優先順序,驗證主備切換
在R2和R3配置VRRP的優先順序,優先順序越大越高,因此R2是120,R3是110。
[R2-GigabitEthernet0/0/1]vrrp vrid 1 priority 120
[R3-GigabitEthernet0/0/1]vrrp vrid 1 priority 110
驗證優先順序修改後的結果。
由輸出資訊,發現優先順序已經成功修改完畢,預設情況下VRRP開啟搶佔,如果修改R3的優先順序更高,那麼產生主備切換。
最後驗證從R4到R1的互通。
由輸出顯示,虛擬閘道器已經正常工作,可以把R4所在LAN的資料轉發到R1。正常情況下,由Master轉發資料,因此流量經過R2。為了驗證故障切換狀態,我們開啟R4到R1的長ping,並關閉R2連線S1的介面。
[R2-GigabitEthernet0/0/1]shutdown
在主備切換的過程中,R4丟了2個數據包,但後續資料正常轉發。
由於主備切換,R3成為Master。
步驟五。 配置跟蹤上行鏈路特性
VRRP主備切換是透過偵聽通告報文實現的,如果Slave路由器偵聽不到Master的訊息或自己優先順序更高,那麼執行搶佔(預設無搶佔等待時間)。
如果故障點發生在上行鏈路,主備不切換,那麼所有上網流量到達R2之後將無法轉發。因此這裡引入一個VRRP的特性——跟蹤上行鏈路。確保在上行鏈路出現故障的時候,R2自動降低自己的優先順序,R3可以執行搶佔,從而將流量引導到備用路由器和備用上行鏈路進行轉發。
在R2上配置跟蹤上行介面,設定懲罰值為30,即當鏈路失效,R2的執行優先順序會變為90,低於R3的110:
[R2-GigabitEthernet0/0/1]vrrp vrid 1 track interface GigabitEthernet 0/0/0 reduced 30
檢查跟蹤配置:
在R4上開啟長ping,同時shutdown R2的上行介面:
[R2-GigabitEthernet0/0/0]shutdown
檢查主備狀態R3成為Master,流量成功引導到R3上網。
將R2上行鏈路恢復,優先順序恢復,重新搶佔成為Master路由器(此過程的R4丟包數量較多,原因是OSPF路由沒有快速收斂的緣故,加快路由收斂部分請閱讀OSPF實驗)。
[R2-GigabitEthernet0/0/0]undo shutdown
注意:因為在介面up之後,R2上行介面要重新建立OSPF鄰居,如果沒有配置OSPF快速收斂,將會有數秒鐘無法轉發資料。因此建議回切時配置搶佔延時,延時時間要大於OSPF收斂時間。
[R2-GigabitEthernet0/0/1]vrrp vrid 1 preempt-mode timer delay 10
再次檢查VRRP,延時搶佔已經配置成功。
步驟六。 配置VRRP多組負載均衡
在正常狀態下,所有流量都從Master裝置轉發,Slave裝置處於閒置狀態。
如果想實現雙閘道器的負載均衡,可以採用VRRP多組的方式:在R2和R3上分別建立VRRP組1,虛擬地址為192。168。1。1,Master裝置是R2,VRRP組2,虛擬地址為192。168。1。254,Master裝置是R3。並且將R4的預設閘道器指向192。168。1。1,R5的預設閘道器指向192。168。1。254。這樣的設計,可以將這個網段上的主機上網流量,分擔到兩臺閘道器上。
下面是具體配置:
[R2-GigabitEthernet0/0/1]vrrp vrid 2 virtual-ip 192。168。1。254
[R2-GigabitEthernet0/0/1]vrrp vrid 2 priority 110
[R3-GigabitEthernet0/0/1]vrrp vrid 2 virtual-ip 192。168。1。254
[R3-GigabitEthernet0/0/1]vrrp vrid 2 priority 120
[R3-GigabitEthernet0/0/1]vrrp vrid 2 track interface GigabitEthernet0/0/0 reduced 30
[R5]undo ip route-static 0。0。0。0 0。0。0。0 192。168。1。1
[R5]ip route-static 0。0。0。0 0。0。0。0 192。168。1。254
在R2和R3上檢視雙組負載均衡狀態:
使用tracert來確認發到兩條預設路由的資料被哪個閘道器來處理,可以看到從R4發出的資料由組1的Master轉發,R5發出的資料由組2的Master轉發:
驗證上行鏈路失效後的流量切換:
觀察切換後的VRRP雙組狀態:
正常狀態R2和R3負載分擔,R2出現故障,R3可以接管R2的所有流量,至此VRRP雙組負載均衡配置完畢。
配置檔案參考
#
sysname R1
#
interface GigabitEthernet0/0/0
ip address 10。0。123。1 255。255。255。0
#
interface LoopBack0
ip address 1。1。1。1 255。255。255。255
#
ospf 1
area 0。0。0。0
network 1。1。1。1 0。0。0。0
network 10。0。123。1 0。0。0。0
#
return
#
sysname R2
#
interface GigabitEthernet0/0/0
shutdown
ip address 10。0。123。2 255。255。255。0
#
interface GigabitEthernet0/0/1
ip address 192。168。1。2 255。255。255。0
vrrp vrid 1 virtual-ip 192。168。1。1
vrrp vrid 1 priority 120
vrrp vrid 1 preempt-mode timer delay 10
vrrp vrid 1 track interface GigabitEthernet0/0/0 reduced 30
vrrp vrid 2 virtual-ip 192。168。1。254
vrrp vrid 2 priority 110
#
ospf 1
silent-interface GigabitEthernet0/0/1
area 0。0。0。0
network 10。0。123。2 0。0。0。0
network 192。168。1。0 0。0。0。255
#
return
#
sysname R3
#
interface GigabitEthernet0/0/0
ip address 10。0。123。3 255。255。255。0
#
interface GigabitEthernet0/0/1
ip address 192。168。1。3 255。255。255。0
vrrp vrid 1 virtual-ip 192。168。1。1
vrrp vrid 1 priority 110
vrrp vrid 2 virtual-ip 192。168。1。254
vrrp vrid 2 priority 120
vrrp vrid 2 track interface GigabitEthernet0/0/0 reduced 30
#
ospf 1
silent-interface GigabitEthernet0/0/1
area 0。0。0。0
network 10。0。123。3 0。0。0。0
network 192。168。1。0 0。0。0。255
#
return
#
sysname R4
#
interface GigabitEthernet0/0/1
ip address 192。168。1。4 255。255。255。0
#
ip route-static 0。0。0。0 0。0。0。0 192。168。1。1
#
return
#
sysname R5
#
interface GigabitEthernet0/0/1
ip address 192。168。1。5 255。255。255。0
#
ip route-static 0。0。0。0 0。0。0。0 192。168。1。254
#
return