簡介

虛擬路由器備援通訊協定(VRRP)是一種備援通訊協定，可在虛擬群組中選擇一或多個路由器擔任待命。發生故障時，此協定將活動路由器的責任動態地分配給區域網(LAN)上的其中一個物理路由器。 面對潛在的網路故障，此協定可提高網路中路由路徑的可用性和可靠性。

在VRRP中，虛擬路由器組中的一個物理路由器被選為活動路由器，而同一虛擬路由器組的另一個物理路由器則充當備用路由器，以防活動路由器發生故障。物理路由器稱為VRRP路由器。

主機的預設網關分配給虛擬路由器組IP地址，而不是物理路由器IP地址。如果在虛擬路由器組內路由資料包的物理路由器發生故障，則會選擇另一個物理路由器來自動替換它。在任何給定時間轉發資料包的物理路由器稱為活動路由器。

VRRP還啟用流量負載共用。通過配置VRRP，使進出LAN客戶端的流量由多個路由器共用，可在可用路由器之間公平共用流量。

以下顯示配置了VRRP的LAN拓撲。在此示例中，路由器A、B、C是VRRP並包括虛擬路由器。虛擬路由器組的IP地址與為路由器A的乙太網介面(192.168.2.1)配置的IP地址相同。

在此場景中，虛擬路由器使用路由器A的物理乙太網介面的IP地址，路由器A承擔虛擬路由器Active的角色，也稱為IP地址所有者。作為活動虛擬路由器，路由器A控制虛擬路由器的IP地址，並負責代表虛擬路由器路由資料包。客戶端1到4配置了預設網關IP地址192.168.2.1。

IP地址所有者的VRRP路由器響應/處理目的地為IP地址的資料包。作為活動虛擬路由器而非IP地址所有者的VRRP路由器不響應/處理這些資料包。

路由器B和C充當虛擬路由器Standbys。如果虛擬路由器Active發生故障，配置有最高優先順序的路由器會成為虛擬路由器Active，並以最少的中斷向LAN主機提供服務。

VRRP路由器的優先順序取決於以下因素：如果VRRP路由器是所有者，則其優先順序為255（最高）；如果它不是所有者，則手動配置優先順序，且優先順序始終小於255。

路由器A恢復後，虛擬路由器再次變為活動狀態。在Active恢復期間，Active和Active都會轉發資料包，因此有一些重複（常規行為）但沒有中斷。

以下示例顯示配置VRRP的LAN拓撲。路由器A和路由器B共用客戶端1到4之間的流量，如果其中一台路由器發生故障，路由器A和路由器B會相互充當虛擬路由器Standby。

在此拓撲中，配置了兩台虛擬路由器。對於虛擬路由器1，路由器A是IP地址192.168.2.1的所有者，是虛擬路由器Active，而路由器B是虛擬路由器Standby to Router A。客戶端1和2配置有預設網關IP地址192.168.2.1。對於虛擬路由器2，路由器B是IP地址192.168.2.2的所有者，虛擬路由器A是虛擬路由器B的備用路由器。客戶端3和4配置有預設網關IP IP地址地址192.168.2.2。

在本文檔中，我們將配置第一個拓撲，其中路由器A是活動路由器，路由器B是備用路由器。如果路由器A發生故障，那麼路由器B將成為活動路由器。

如果您不熟悉以下術語，請檢視思科業務：新字詞詞彙表.

目標

本文提供有關如何通過命令列介面(CLI)在交換機上配置VRRP設定的說明。

適用裝置

- SG550X系列

軟體版本

- 2.3.0.130

在交換機上配置VRRP虛擬路由器

步驟1.通過SSH連線到交換機。預設使用者名稱和密碼為cisco/cisco。如果您已配置新的使用者名稱或密碼，請改為輸入憑據。

附註： 若要瞭解如何通過SSH或Telnet訪問SMB交換機CLI，請按一下此處。

附註： 這些命令可能會因交換機的確切型號而異。本例中使用的是SG550XG-24T。

步驟2.在交換機的特權EXEC模式下，輸入以下命令進入全域性配置模式：

SG550XG#configure終端

步驟3.要在VLAN介面上配置VRRP虛擬路由器設定，請輸入以下命令：

SG550XG#interface [vlan-id]

在本例中，我們使用interface vlan 1配置VRRP虛擬路由器設定。

步驟4.要定義虛擬路由器的IP地址，請在介面配置模式下使用vrrp ip命令。VRRP路由器和虛擬組的IP介面必須位於同一個IP子網中。當虛擬路由器有一台或多台參與的VRRP路由器時，該虛擬路由器就存在。VRRP路由器可以為VRRP組使用其真實IP地址，從而允許VRRP路由器成為VRRP組的活動路由器。您還可以分配未分配給任何路由器介面的虛擬IP地址，但優先順序最高的路由器將成為「活動」。VRRP組只能有一個所有者。

SG550XG#(config)#vrrp [vrid] ip [ip-address]

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1-255。

- ip-address — 虛擬路由器的IP地址。

在本演示中，我們使用命令vrrp 1 ip 192.168.2.1為虛擬路由器設定IP地址192.168.2.1。

附註:要刪除IP地址，請使用no vrrp [vrid] ip [ip-address]命令。

步驟5.要在介面上啟用VRRP虛擬路由器，請使用以下命令：

SG550XG#(config-if)#no vrrp [vrid]關閉

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1-255。

我們將輸入no vrrp 1 shutdown以在介面上啟用VRRP虛擬路由器。

附註： 要在介面上禁用VRRP虛擬路由器，請在介面配置模式下使用vrrp shutdown命令。當介面上禁用VRRP虛擬路由器時，其配置不會刪除。

步驟6.要為VRRP虛擬路由器分配說明，請在介面配置模式下使用以下命令。

SG550XG#(config-if)#vrrp [vrid]說明[text]

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1-255。

- text — 描述虛擬路由器的用途或用途的文本。引數可以包含0-160個字元。

在本例中，我們輸入命令vrrp 1 description VirtualRouter1，為我們的vrid 1分配描述VirtualRouter1。

步驟7.要定義支援的VRRP版本，請在介面配置模式下使用vrrp version命令。選擇版本取決於網路的設定方式。但是，如果您的拓撲允許，則應選擇後一個版本。請記住，版本3也支援IPv6。

附註： 每台交換機都需要配置相同的版本，VRRP才能正常工作。

SG550XG#(config-if)#vrrp [vrid]版本[版本號]

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1-255。

- 2 — 支援RFC3768指定的VRRPv2。收到的VRRPv3消息被VRRP虛擬路由器丟棄。僅傳送VRRPv2通告。VRRPv2僅支援IPv4地址。計時器以秒為單位，使用224.0.0.18作為組播地址。需要基於每個介面啟用VRRP，並且優先順序值相同但更高IP的節點會導致搶佔。

- 3 — 不支援RFC5798指定的VRRPv3(8.4,RFC5798)。 收到的VRRPv2消息被VRRP虛擬路由器丟棄。僅傳送VRRPv3通告。VRRPv3支援使用IPv4和IPv6地址。計時器以毫秒為單位，將224.0.0.18用於IPv4組播，將FF02:0:0:0:0:0:0:12用於IPv6。需要全域性啟用VRRP，只有較高的優先順序才會導致搶佔。

- 2&3 - VRRPv2支援(8.4,RFC5798)支援RFC5798指定的VRRPv3。 接收的VRRPv2消息由VRRP虛擬路由器處理。傳送VRRPv3和VRRPv2通告。

在本演示中，我們將通過輸入命令vrrp 1 version 2來使用版本2。

步驟8.要定義將用作VRRP消息的源IP地址的實際VRRP地址，請在介面配置模式下輸入以下命令。每個支援虛擬路由器的VRRP路由器在其傳出VRRP消息中使用自己的IP地址作為源IP地址。

SG550XG#(config-if)#vrrp [vrid] source-ip [ip-address]

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1-255。

- ip-address - VRRP路由器的IP地址：在同一介面上定義的VRRP路由器的一個IP地址。

在本例中，我們通過鍵入命令vrrp 1 source-ip 192.168.2.1輸入交換機IP地址作為源IP地址。

步驟9.（可選）要定義虛擬路由器冗餘協定(VRRP)優先順序，請在介面配置模式下使用命令vrrp priority命令。

SG550XG#(config-if)#vrrp [vrid] priority [priority number]

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1-255。

- 優先順序 — 虛擬路由器優先順序。範圍為1-254。

在本演示中，交換機是所有者，優先順序為255。

附註： 所有者的預設優先順序為255，無法更改。對於非所有者，預設優先順序為100。下圖顯示了如何鍵入命令但未輸入的示例。

步驟10.要啟用虛擬路由器冗餘協定(VRRP)搶佔，請在介面配置模式下使用preempt命令。預設情況下，如果使用此命令配置的VRRP路由器的優先順序高於當前活動虛擬路由器，則該路由器將接管組的「活動虛擬路由器」角色。無論此命令的設定如何，作為IP地址所有者的路由器都將搶佔。

SG550XG#(config-if)#vrrp [vrid] preempt

附註： 要禁用對指定VRRP虛擬路由器的VRRP搶佔，請使用以下命令：no vrrp [vrid] preempt。

步驟11.要在接受模式下設定VRRP，請輸入以下命令：

SG550XG#(config-if)#vrrp [vrid]接受模式[accept] | drop]

選項定義如下：

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1到255。

- 接受 — 處於活動狀態的虛擬路由器將接受發往虛擬路由器的IP地址的資料包作為自己的資料包，即使它不是地址所有者。

- drop — 處於活動狀態的虛擬路由器將丟棄發往虛擬路由器IP地址的資料包，即使它不是地址所有者。

在本示例中，使用命令vrrp 1 accept mode accept將Active配置為接受資料包。

步驟12.要定義活動VRRP虛擬路由器連續通告之間的間隔，請在介面配置模式下使用vrrp timers advertise命令。在本例中，我們將計時器通告保留為1秒的預設設定。下圖顯示如何鍵入2秒命令的示例。

SG550XG#(config-if)#vrrp [vrid]計時器通告毫秒[msec]間隔

選項定義如下：

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1到255。

- msec — （可選）將通告時間的單位從秒更改為毫秒。如果沒有關鍵字，通告間隔以秒為單位。

- interval — 連續通告之間的時間間隔。如果存在關鍵字msec，則有效範圍為50到40950毫秒。如果省略關鍵字msec，則有效範圍為1到40秒。

步驟13.（可選）對象跟蹤是一個獨立的過程，用於管理建立、監控和刪除被跟蹤對象，例如介面線路協定的狀態、IP路由的狀態或路由的可達性。跟蹤過程定期輪詢跟蹤的對象並記錄任何值的變化。VRRP對象跟蹤使VRRP可以訪問通過跟蹤過程可用的所有對象。虛擬裝置的優先順序根據被跟蹤對象的狀態遞增或遞減。

要瞭解有關VRRPv3的對象跟蹤的詳細資訊，請參閱以下連結：VRRPv3:物件追蹤整合

要配置VRRP以跟蹤對象，請輸入以下內容：

SG550XG#(config-if)#vrrp [vrid] track [object-id] decrement [priority]

- vrid — 介面上正在為其定義VRRP的虛擬路由器識別符號。範圍為1-255。

- object-id — 與此VRRP路由器關聯以跟蹤對象的次數。number引數的有效值範圍為1到64。此值是在SLA路徑中輸入的，按一下此處瞭解詳細資訊。

- priority — （可選）當被跟蹤對象關閉或恢復時，路由器優先順序的遞減或遞增量。預設值為10。遞減可以設定為1到253之間的任何值。

在本例中，我們沒有配置VRRP來跟蹤對象，但是我們鍵入了命令來向您顯示對象的示例。

步驟14.輸入end命令返回特權執行模式。

SG550XG#(config-if)#end

步驟15。（可選）在交換機的特權執行模式下，將配置的設定儲存到啟動配置檔案中。出現Overwrite file [startup-config]... 提示後，在鍵盤上按Y選擇「Yes（是）」或N選擇「No（否）」。

SG550XG#copy running-config startup-config

步驟16.在下一台交換機上重複步驟1到15以配置另一台虛擬路由器。在本例中，我們將第二台交換機配置為備用虛擬路由器。

驗證/測試VRRP

步驟1。要顯示一個或所有配置VRRP虛擬路由器的簡要或詳細狀態，請輸入以下命令：

SG550XG#show vrrp {all |簡介 | interface [interface-id]}

選項包括：

- all — （可選）提供有關所有VRRP虛擬路由器的VRRP虛擬路由器資訊，包括處於禁用狀態的虛擬路由器。如果未輸入關鍵字，則應用all關鍵字。

- brief — （可選）提供VRRP虛擬路由器資訊的摘要檢視。

- interface interface-id — （可選）介面識別符號。

在本例中，我們使用show vrrp all。

步驟2.在第二個交換機上，我們使用以下命令顯示詳細的VRRP路由器資訊。

SG550XG#show vrrp all

步驟3.此步驟顯示第一台交換器（作用中）關閉時發生情況的範例。第二台交換機（備用）變為活動狀態，如下圖所示。源IP地址為192.168.2.2的第二台交換機的狀態為Active。

結論

現在，您應該已經通過CLI在SG550X交換機上成功配置VRRP。