VRRPv2協議原理與配置

前提概要:
VRRP(Virtual Router Redundancy Protocol):虛擬路由冗餘協議。
VRRP是非常重要的協議,是公有的協議。常用於出口對於雙ISP進行部署,當然也是防火牆進行雙機熱備的協議之一。

此技術出現原因:局域網中的用戶終端通常採用配置一個默認網關的形式訪問外部網絡,如果當唯一的網關設備出現故障(單點故障),那麼就會影響整個局域網的通信,影響用戶通信。因此爲了解決這個問題,就新出現了部署多個網關的辦法,但是需要多個網關協同工作,因此出現了VRRP協議。

多網關存在問題
在這裏插入圖片描述

存在問題(直接加入多個網關)
①網關IP地址衝突:在一個網段裏面如果存在多個網關,那麼會導致IP地址衝突
②主機頻繁切換網絡出口:由於主機發起ARP請求時,多臺網關設備都會進行迴應,對於主機端來說,收到的IP地址與MAC地址的映射關係就會頻繁變動(老化時間)

因此VRRP協議能夠解決多網關出現的問題(當然思科HSRP協議功能也非常相似,之後寫博客時會進行解析)


VRRP作用總結:實現網關備份並且解決多個網關之間互相沖突的問題。
VRRP基礎:

  • 在不改變組網情況下,實現多臺路由器虛擬成一個虛擬路由器(存在虛擬IP以及虛擬MAC),通過配置虛擬路由器的IP地址爲默認網關,來實現網關的備份。
  • VRRP目前有兩個版本
    –VRRPv2;VRRPv2對應RFC文檔爲3768
    –VRRPv3;VRRPv3對應RFC問題爲5798
  • VRRP不同版本適應網絡(VRRPv2的使用較爲頻繁
    –VRRPv2只能用於IPv4
    –VRRPv3適用於IPv4以及IPv6兩種網絡
    -VRRPv2報文結構:
    在這裏插入圖片描述
字段名稱 代表含義
Version 版本(由於爲VRRPv2,因此取值爲2)
Type VRRP通告報文的類型(取值爲1,代表Advertisement,對於VRRP來說只有這一種類型的報文)
Virtual Router ID(VRID) 虛擬路由器ID(取值範圍1-255)
Priority 優先級(選取Master以及Backup或者退組使用,在後面詳細講解
Count IP address VRRP組中虛擬IP的個數
Auth Type VRRP報文的認證類型。共指定3種類型:0:Non Authentication,表示無認證。1:Simple Text Password,表示明文認證。2:IP Authentication Header,表示MD5認證。
Adver int VRRP通告消息發送間隔(缺省1s)
IP address 代表VRRP組中虛擬IP地址
Authentication Data 認證字。(明文認證以及MD5認證使用)

Tips:對於Type字段來說,只有1,也就是advertisement(VRRP 通告消息),目的地址是224.0.0.18(多播地址,對於VRRP來說,所有組成員會監聽該地址。VRRP封裝在IP報頭裏面,IP報頭中的protocol是112(協議號是112)

VRRP設備概念:

名稱 代表含義
VRRP路由器(VRRP Router) 運行VRRP協議的設備
虛擬路由器(Virtual Router) 也叫作VRRP備份組,由一個Master設備和多個Backup設備組成,被當作一個共享局域網內主機的缺省網關。
Master路由器(Virtual Router Master) 承擔轉發報文任務的VRRP設備
Backup路由器(Virtual Router Backup) 一組沒有承擔轉發任務的VRRP設備,當Master設備出現故障時,它們將通過競選成爲新的Master設備

Priority的詳解

  • 作用:設置在備份組(VRRP組)中的優先級數值,範圍是0-255(其中0和255不能手工配置),因此可手工配置的範圍爲1-254,默認值爲100。
  • Priority=0 代表:如果一個設備發送Priority=0的Advertisement(VRRP通告消息),那麼代表退出VRRP組,常用於Master設備進行退組時使用,當Backup設備收到了Master設備發出的通告消息後,由於pri=0,那麼就會直接進行收斂,不需要等待三倍的adver int時間(默認爲3s)。
  • Priority=255 代表:含義爲絕對Master,只有在設置的VIP與自己接口的IP地址相同的情況下,纔會發送Pri=255的Advertisement信息,因此佔據該VRRP組中的絕對Master之位。
  • Priority可以進行修改,如果修改,那麼該數值越大,優先級越大。如果Priority相同,那麼就會比較接口地址,接口地址越大優先級越高。

在這裏插入圖片描述

  • 在上圖中,HostA的網關爲10.1.1.254,那麼對於Router A以及Router B來說,它們需要表現出來的IP地址都是10.1.1.254,由於直接配置會出現問題,因此Router A以及Router B需要藉助VRRP協議來進行協商。協商過程如下:
  • 1.在VRRP協議配置完成後,Router A以及Router B要進行協商,需要判斷哪臺設備作爲Master,哪臺設備作爲Backup,因此兩臺設備首先都將自己當做Master並且發送advertisement,發送出去的報文中含有Pri字段。
    2.在此圖中Router A的Priority數值大於Router B,因此路由器A當作備份組的Master。Master設備通過發送免費ARP報文,將虛擬MAC地址通知給與它連接的設備或者主機,從而承擔報文轉發任務。 接下來由RouterA作爲Master進行數據處理,Backup不對HostA的數據進行處理。Master按照adver int作爲時間間隔來週期發送VRRP通告消息,默認情況爲1s。Backup會監聽Master,Backup上存在超時器,爲3倍的adver int,默認情況爲3s,如果超過該時間,那麼就會重複之前的操作,將自己當做Master,進行Master競選。
    3.VRRP備份組狀態切換時,Master設備由一臺設備切換爲另外一臺設備,新的Master設備會立即發送攜帶虛擬路由器的虛擬MAC地址和虛擬IP地址信息的免費ARP報文,刷新與它連接的主機或設備中的MAC表項,從而把用戶流量引到新的Master設備上來,整個過程對用戶完全透明。
    4.實際上做到的效果類似於下圖。
    在這裏插入圖片描述
    注意點:
    ①對於備份組(虛擬路由器)來說,會有一個虛擬IP地址以及虛擬MAC地址。該虛擬MAC地址是根據VRID來進行轉換的。格式爲:00-00-5E-00-01-{vrid}
    ②虛擬路由器進行ARP請求時,不是使用真實接口MAC地址,使用的是該虛擬路由器的虛擬MAC地址
    ③:在VRRP中存在搶佔模式以及非搶佔模式,華爲設備下默認開啓搶佔模式,當然搶佔中存在搶佔時延。(搶佔模式下,Pri最高的設備會變成Master;非搶佔模式下,只要Master不down,backup就不會變成Master)

VRRP狀態機
在這裏插入圖片描述
Initialize
初始化狀態:VRRP爲不可用狀態,在此狀態時設備不會對VRRP報文做任何處理。
什麼情況下會出現Initialize狀態?剛配置VRRP或設備檢測到故障時
收到接口Up的消息後,如果是VIP的所有者設備,優先級爲255,則直接成爲Master設備;如果設備的優先級小於255,則會先切換至Backup狀態。

Master
當VRRP設備處於Master狀態時,會執行如下操作:

  • 定時(Advertisement Interval)發送VRRP通告報文。
  • 虛擬MAC地址(00-00-5E-00-01-{vrid)響應對虛擬IP地址的ARP請求。
  • 轉發目的MAC地址爲虛擬MAC地址的IP報文。
  • 如果它是這個虛擬IP地址的擁有者,則接收目的IP地址爲這個虛擬IP地址的IP報文。如果不是擁有者,那麼就會丟棄這個IP報文。
  • 如果收到比自己優先級大的報文,立即成爲Backup。 如果收到與自己優先級相等的VRRP報文且本地接口IP地址小於對端接口IP,立即成爲Backup。

Backup

當VRRP設備處於Backup狀態時,它將會做下列工作:
• 接收Master設備發送的VRRP通告報文,判斷Master設備的狀態是否正常。
• 對虛擬IP地址的ARP請求,不做響應。
• 丟棄目的IP地址爲虛擬IP地址的IP報文。
• 如果收到優先級和自己相同或者比自己大的報文,則重置Master_Down_Interval定時器,不進一步比較IP地址。

VRRP負載分擔
在這裏插入圖片描述
負載分擔是指多個VRRP備份組同時承擔業務轉發,VRRP負載分擔與VRRP主備備份的基本原理和報文協商過程都是相同的。對於每一個VRRP備份組,都包含一個Master設備和若干Backup設備。
與主備備份方式的不同點在於:負載分擔方式需要建立多個VRRP備份組,各備份組的Master設備分擔在不同設備上;單臺設備可以加入多個備份組,在不同的備份組中扮演不同的角色。

VRRP故障場景以及解決辦法:
在這裏插入圖片描述

  • 上圖中只有Router A的上行鏈路發生故障,對於VRRP組來說是不會進行切換的,因此爲了讓備份組的Master變爲Router B,那麼在Router A上做的操作就是VRRP的聯動功能。
  • 對於Router A來說能夠知曉上行鏈路故障,因此需要Router A上行鏈路發生故障時候,主動去進行Priority數值的下降,來達到主備的切換,因此這個解決辦法叫做VRRP功能聯動。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章