随着網絡的快速普及和相關應用的日益深入,各種增值業務已經開始廣泛部署,基礎網絡的可靠性日益成為用戶關注的焦點,能夠保證網絡傳輸不中斷對于終端用戶非常重要。
通常,同一網段内的所有主機上都設置一條相同的、以網關為下一跳的缺省路由。主機發往其他網段的報文将通過缺省路由發往網關,再由網關進行轉發,從 而實現主機與外部網絡的通信。當網關發生故障時,本網段内所有以網關為缺省路由的主機将無法與外部網絡通信。增加出口網關是提高系統可靠性的常見方法,此 時如何在多個出口之間進行選路就成為需要解決的問題。
VRRP的出現很好的解決了這個問題。VRRP能夠在不改變組網的情況下,采用将多台路由設備組成一個虛拟路由器,通過配置虛拟路由器的IP地址為 默認網關,實現默認網關的備份。當網關設備發生故障時,VRRP機制能夠選舉新的網關設備承擔數據流量,從而保障網絡的可靠通信。
VRRP概述如下圖,HostA通過Switch雙歸屬到SwitchA和SwitchB。在SwitchA和SwitchB上配置VRRP備份組,對外體現為一台虛拟路由器,實現鍊路冗餘備份。
我們可以在上圖中的網絡中部署VRRP協議,下面結合該圖介紹VRRP協議的基本概念:
- VRRP路由器(VRRP Router):運行VRRP協議的設備,它可能屬于一個或多個虛拟路由器,如SwitchA和SwitchB。
- 虛拟路由器(Virtual Router):又稱VRRP備份組,由一個Master設備和多個Backup設備組成,被當作一個共享局域網内主機的缺省網關。如SwitchA和SwitchB共同組成了一個虛拟路由器。
- Master路由器(Virtual Router Master):承擔轉發報文任務的VRRP設備,如SwitchA。
- Backup路由器(Virtual Router Backup):一組沒有承擔轉發任務的VRRP設備,當Master設備出現故障時,它們将通過競選成為新的Master設備,如SwitchB。
- VRID:虛拟路由器的标識。如SwitchA和SwitchB組成的虛拟路由器的VRID為1。
- 虛拟IP地址(Virtual IP Address):虛拟路由器的IP地址,一個虛拟路由器可以有一個或多個IP地址,由用戶配置。如SwitchA和SwitchB組成的虛拟路由器的虛拟IP地址為10.1.1.10/24。
- IP地址擁有者(IP Address Owner):如果一個VRRP設備将虛拟路由器IP地址作為真實的接口地址,則該設備被稱為IP地址擁有者。如果IP地址擁有者是可用的,通常它将成為Master。如SwitchA,其接口的IP地址與虛拟路由器的IP地址相同,均為10.1.1.10/24,因此它是這個VRRP備份組的IP地址擁有者。
- 虛拟MAC地址(Virtual MAC Address):虛拟路由器根據虛拟路由器ID生成的MAC地址。當虛拟路由器回應ARP請求時,使用虛拟MAC地址,而不是接口的真實MAC地址。如SwitchA和SwitchB組成的虛拟路由器的VRID為1,因此這個VRRP備份組的MAC地址為00-00-5E-00-01-01。
VRRP協議報文封裝在IP報文中,發送到分配給VRRP的IP組播地址。在IP報文頭中,源地址為發送報文接口的主IP地址(不是虛拟IP地址),目的地址是224.0.0.18,TTL是255,協議号是112。
目前,VRRP協議包括兩個版本:VRRPv2和VRRPv3。VRRPv2僅适用于IPv4網絡,VRRPv3适用于IPv4和IPv6兩種網絡。
VRRP報文結構
VRRPv2報文結構
VRRPv3報文結構
VRRP報文字段含義
VRRP認證VRRPv2支持在通告報文中設定不同的認證方式和認證字。
- 無認證方式:設備對要發送的VRRP通告報文不進行任何認證處理,收到通告報文的設備也不進行任何認證,認為收到的都是真實的、合法的VRRP報文。
- 簡單字符(Simple)認證方式:發送VRRP通告報文的設備将認證方式和認證字填充到通告報文中,而收到通告報文的設備則會将報文中的認證方 式和認證字與本端配置的認證方式和認證字進行匹配。如果相同,則認為接收到的報文是合法的VRRP通告報文;否則認為接收到的報文是一個非法報文,并丢棄 這個報文。
- MD5認證方式:發送VRRP通告報文的設備利用MD5算法對認證字進行加密,加密後保存在Authentication Data字段中。收到通告報文的設備會對報文中的認證方式和解密後的認證字進行匹配,檢查該報文的合法性。