VRRP の設定

仮想ルータ冗長プロトコル(VRRP)機能を使用すると、ファーストホップ IP ルータでの透過的なフェールオーバーが可能になり、ルータ グループが単一の仮想ルータを形成できるようになります。VRRP と関連する概念の詳細については、次を参照してください。 VRRP の概要

VRRP 設定の制約事項

  • VRRP を介した Bidirectional Forwarding Detection(BFD)はサポートされていません。

  • ICMP リダイレクトはサポートされていません。

  • BVI インターフェイスを介した VRRP はサポートされていません。

VRRP のカスタマイズ

設定例

VRRP の動作のカスタマイズはオプションです。VRRP グループをイネーブルにするとすぐに、そのグループは動作を開始することに注意してください。VRRP をカスタマイズする前に、VRRP グループをイネーブルにした場合、機能のカスタマイズが完了しないうちに、ルータがそのグループの制御をテイクオーバーし、マスター仮想ルータになる可能性があります。このため、VRRP をカスタマイズする場合には、カスタマイズを行ってから VRRP をイネーブルにすることを推奨します。

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2

router(config-vrrp)#delay minimum 2 reload 10
/* (Optional) Delays the startup of the state machine when an interface comes up. */

router(config-vrrp-if)#address-family ipv6
router(config-vrrp-address-family)#vrrp 3
/* The version keyword is available only if IPv4 address-family is selected. */

router(config-vrrp-virtual-router)#text-authentication text1
/* (Optional) Configures the simple text authentication used for VRRP packets received from other routers running VRRP. */

router(config-vrrp-virtual-router)#accept-mode disable
/* Disables the installation of routes for the VRRP virtual addresses. */

router(config-vrrp-virtual-router)#priority 254
/* (Optional) Sets the priority of the virtual router. */

router(config-vrrp-virtual-router)#preempt delay 15
/* (Optional) Controls which router becomes the master router. */

router(config-vrrp-virtual-router)#timer 4
/* (Optional) Configures the interval between successive advertisements by the master router in a VRRP virtual router. */

router(config-vrrp-virtual-router)#track interface TenGigE 0/0/0/2 30
/* (Optional) Configures the VRRP to track an interface. */

router(config-vrrp-virtual-router)#commit

実行コンフィギュレーション

Router#show running-config router vrrp
router vrrp
interface TenGigE 0/0/0/2
delay minimum 2 reload 10
address-family ipv6
vrrp 3
text-authentication
accept-mode disable
priority 254
preempt delay 15
timer 4
track interface TenGigE 0/0/0/2 30
!

確認

Router#show vrrp detail

TenGigE0/0/0/2 - IPv4 vrID 3
  State is Master, IP address owner
    1 state changes, last state change 00:01:00
    State change history:
    May 19 12:28:59.825 UTC  Init     -> Master   Virtual IP configured
  Last resign sent:     Never
  Last resign received: Never
  Virtual IP address is 10.0.0.1
  Virtual MAC address is 0000.5E00.0103, state is active
  Master router is local
  Version is 2
  Advertise time 4 secs
    Master Down Timer 12.015 (3 x 4 + (1 x 4/256))
  Minimum delay 2 sec, reload delay 10 sec
  Current priority 255
    Configured priority 254, may preempt
      minimum delay 15 secs
  Authentication enabled, string "text1"
    Tracked items: 1/1 up: 30 decrement
      Object name                State     Decrement
      TenGigE0/0/0/2              Up            30


VRRP のイネーブル化

設定例

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2
router(config-vrrp-if)#address-family ipv4
router(config-vrrp-address-family)#vrrp 3 version 3
/* The version keyword is available only if IPv4 address-family is selected. */

router(config-vrrp-virtual-router)#address 10.20.30.1
/* Enables VRRP on an interface and specifies the IP address of the virtual router. */

router(config-vrrp-virtual-router)#commit

実行コンフィギュレーション

Router#show running-config router vrrp
router vrrp
interface TenGigE 0/0/0/2
address-family ipv4
vrrp 3 version 3
address 10.20.30.1
!

確認

Router#show vrrp detail

TenGigE0/0/0/2 - IPv4 vrID 3
  State is Master, IP address owner
    1 state changes, last state change 00:01:00
    State change history:
    May 19 12:28:59.825 UTC  Init     -> Master   Virtual IP configured
  Last resign sent:     Never
  Last resign received: Never
  Virtual IP address is 10.20.30.1
  Virtual MAC address is 0000.5E00.0103, state is active
  Master router is local
  Version is 2
  Advertise time 4 secs
    Master Down Timer 12.015 (3 x 4 + (1 x 4/256))
  Current priority 255


VRRP 統計情報のクリア

指定の仮想ルータの全ソフトウェア カウンタを消去します。

Router#clear vrrp statistics
/* If no interface is specified, statistics of all virtual routers are removed. */

グローバル仮想 IPv6 アドレスの設定

設定例

仮想ルータのグローバル仮想 IPv6 アドレスを設定します。

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2
router(config-vrrp-if)#address-family ipv6
router(config-vrrp-address-family)#vrrp 3
/* The version keyword is available only if IPv4 address-family is selected. */

router(config-vrrp-if-virtual-router)#address global 2001:db8::/32
router(config-vrrp-virtual-router)#commit

実行コンフィギュレーション

Router#show running-config router vrrp
router vrrp
interface TenGigE 0/0/0/2
address-family ipv6
vrrp 3
address global 2001:db8::/32
!

プライマリおよびセカンダリの仮想 IPv4 アドレスの設定

設定例

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2
router(config-vrrp-if)#address-family ipv4
router(config-vrrp-address-family)#vrrp 3 version 3
/* The version keyword is available only if IPv4 address-family is selected. */

router(config-vrrp-if-virtual-router)#address 10.20.30.1
/* Configures primary virtual IPv4 address for a virtual router. */

router(config-vrrp-if-virtual-router)#address 10.20.30.2 secondary
/* Configures secondary virtual IPv4 address for a virtual router. */

router(config-vrrp-virtual-router)#commit

実行コンフィギュレーション

Router#show running-config router vrrp
router vrrp
interface TenGigE 0/0/0/2
address-family ipv4
vrrp 3 version 3
address 10.20.30.1
address 10.20.30.2 secondary
!

確認

Router#show vrrp detail

TenGigE0/0/0/2 - IPv4 vrID 3
  State is Master, IP address owner
    1 state changes, last state change 00:01:00
    State change history:
    May 19 12:28:59.825 UTC  Init     -> Master   Virtual IP configured
  Last resign sent:     Never
  Last resign received: Never
  Virtual IP address is 10.20.30.1
  Virtual MAC address is 0000.5E00.0103, state is active
  Master router is local
  Virtual secondary IP address is 10.20.30.2
  Version is 2
  Advertise time 4 secs
    Master Down Timer 12.015 (3 x 4 + (1 x 4/256))
  Current priority 255


仮想リンクローカル IPv6 アドレスの設定

仮想ルータの仮想リンクローカル IPv6 アドレスを設定するか、または仮想リンクローカル IPv6 アドレスが有効になっており、仮想ルータの仮想 MAC アドレスから自動的に計算されることを指定します。

IPv6 アドレス空間は、IPv4 に比べて異なる構造になっています。リンクローカル アドレスは、ローカル ネットワーク上の各インターフェイスを識別するために使用します。これらのアドレスは、インターフェイスのリンクローカル(ハードウェア)アドレス(イーサネット インターフェイスの MAC アドレス)を使用して、標準の方法で設定または決定されます。リンクローカル アドレスは、標準の形式を持ち、ローカル ネットワークでのみ有効です(複数ホップ先とのルーティングは実行できません)。

グローバル ユニキャスト IPv6 アドレスは、IPv6 アドレス空間で、リンクローカル アドレスから分離したサブセットを占有します。これらは、複数ホップ先と相互にルーティングでき、関連付けられたプレフィックス長(0 ~ 128 ビット)を持ちます。

各 VRRP 仮想ルータには、関連付けられた仮想リンクローカル アドレスがあります。これは、仮想ルータの仮想 MAC アドレスから自動的に設定および決定されます。仮想 MAC アドレスは、ローカル ネットワークで一意である必要があります。仮想リンクローカル アドレスは、スコープがローカルのアドレスでは重複アドレス検出が不要であるため、その仮想 IP(VIP)状態がアップであることが常に考慮される点を除き、IPv4 仮想ルータのプライマリ仮想 IPv4 アドレスに似ています。

設定例

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2
router(config-vrrp-if)#address-family ipv6

/* Use one of the following address linklocal commands: */
router(config-vrrp-address-family)#vrrp 1 address linklocal FE80::260:3EFF:FE11:6770
/* Configures the virtual link-local IPv6 address for the virtual router. */

router(config-vrrp-address-family)#vrrp 1 address linklocal autoconfigure
/* Specifies that the virtual link-local IPv6 address should be enabled and calculated automatically 
from the virtual router virtual MAC address. */

router(config-vrrp-virtual-router)#commit

実行コンフィギュレーション

Router#show running-config router vrrp
router vrrp
interface TenGigE 0/0/0/2
address-family ipv6
vrrp 1 address linklocal FE80::260:3EFF:FE11:6770
!

状態変更ロギングのディセーブル化

設定例

syslog を介して VRRP 状態変更イベントをロギングするタスクをディセーブルにします。

Router#configure
Router(config)#router vrrp
router(config-vrrp)#message state disable
router(config-vrrp)#commit

VRRP のマルチ グループ オプティマイゼーション(MGO)の有効化

設定例

Virtual Router Redundancy Protocol(VRRP)のマルチ グループ オプティマイゼーションは、多くのサブインターフェイスから構成される導入環境で制御トラフィックを削減するためのソリューションです。VRRP 制御トラフィックの実行を 1 つのセッションに制限することにより、冗長性要求が同一のサブインターフェイスに対して制御トラフィックが減少します。他のすべてのセッションはこのプライマリ セッションのスレーブになり、プライマリ セッションから状態を継承します。

VRRP セッション名

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2
router(config-vrrp-if)#address-family ipv4
router(config-vrrp-address-family)#vrrp 1
/* Enables VRRP group configuration mode on a specific interface. */

router(config-vrrp-vritual-router)#name s1
/* Specifies the VRRP session name. */

router(config-vrrp-gp)#commit

Slave Follow

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2
router(config-vrrp-if)#address-family ipv4

router(config-vrrp-address-family)#vrrp 2 slave
/* Enables VRRP slave configuration mode on a specific interface. */

router(config-vrrp-slave)#follow m1
/* Configures a slave follow. Instructs the slave group to inherit its state from the specified group, m1 (MGO session name). */

router(config-vrrp-slave)#address 10.2.3.2
/* Specifies the primary virtual IPv4 address for slave group. */

router(config-vrrp-slave)#address 10.2.3.3 secondary
/* Specifies the secondary virtual IPv4 address for slave group. */

router(config-vrrp-gp)#commit

スレーブ グループのライマリおよびセカンダリの仮想 IPv4アドレス

Router#configure
Router(config)#router vrrp
router(config-vrrp)#interface TenGigE 0/0/0/2
router(config-vrrp-if)#address-family ipv4

router(config-vrrp-address-family)#vrrp 2 slave
/* Enables VRRP slave configuration mode on a specific interface. */

router(config-vrrp-slave)#address 10.2.3.2
/* Specifies the primary virtual IPv4 address for slave group. */

router(config-vrrp-slave)#address 10.2.3.3 secondary
/* Specifies the secondary virtual IPv4 address for slave group. */

router(config-vrrp-slave)#commit

実行コンフィギュレーション

Router#show running-config router vrrp 1
router vrrp
interface TenGigE 0/0/0/2
address-family ipv4
vrrp 1
name s1
!

/* Slave group */
Router#show running-config router vrrp 2
router vrrp
interface TenGigE 0/0/0/2
address-family ipv4
vrrp 2 slave
follow m1
address 10.2.3.2
address 10.2.3.3 secondary
!

VRRP イベントに関する SNMP サーバ通知の設定

MIB の VRRP サポート

VRRP を使用すると、障害が発生したとき、ルータが 1 つ以上の IP アドレスを引き継ぐことができます。たとえば、障害の発生したルータがデフォルト ゲートウェイであったために、ホストからの IP トラフィックがそのルータに到達した場合、そのトラフィックは制御を引き継いだ VRRP ルータによって透過的に転送されます。VRRP を使用する場合、ダイナミック ルーティングやルータ ディスカバリ プロトコルの設定を各エンド ホストで行う必要はありません。仮想ルータに割り当てる IP アドレスを制御する VRRP ルータはマスターと呼ばれ、送信されたパケットをそれらの IP アドレスに転送します。この選択プロセスにより、マスターが使用不可になった場合の転送責任のダイナミック フェールオーバー(スタンバイ)が提供されます。これにより、LAN 上の仮想ルータ IP アドレスをデフォルトの最初のホップ ルータとしてエンドホストが使用するようにできます。

VRRP を使用することで得られるメリットは、ダイナミック ルーティングや Router Discovery Protocol をエンドホストごとに設定する必要なく、デフォルト パスの可用性が向上することです。Simple Network Management Protocol(SNMP)トラップは、仮想ルータ(スタンバイ)がマスター状態に移行した場合、またはスタンバイ ルータがマスターになった場合に、状態変更に関する情報を提供します。

設定例

VRRP に対して SNMP サーバ通知(トラップ)を有効にします。

Router#configure
Router(config)#snmp-server traps vrrp events
router(config)#commit

SNMP サーバ通知の詳細を表示するには、show snmp traps details コマンドを使用します。

VRRP の概要

仮想ルータ冗長プロトコル(VRRP)機能を使用すると、ファーストホップ IP ルータでの透過的なフェールオーバーが可能になり、ルータ グループが単一の仮想ルータを形成できるようになります。

VRRP の概要

LAN クライアントは、動的プロセスまたは静的設定を使用して、特定のリモート宛先への最初のホップとなるルータを決定します。次に、ダイナミック ルータ ディスカバリのクライアント例を示します。

  • プロキシ ARP:クライアントはアドレス解決プロトコル(ARP)を使用して到達すべき宛先を取得します。ルータは独自の MAC アドレスで ARP 要求に応答します。

  • ルーティング プロトコル:クライアントはダイナミック ルーティング プロトコルのアップデートを(ルーティング情報プロトコル(RIP)などから)受信し、独自のルーティング テーブルを形成します。

  • IRDP(ICMP Router Discovery Protocol)クライアント:クライアントはインターネット制御メッセージ プロトコル(ICMP)ルータ ディスカバリ クライアントを実行します。

ダイナミック ディスカバリ プロトコルには、LAN クライアントにおいて、設定および処理のオーバーヘッドが発生するという短所があります。また、ルータが機能を停止したときに、別のルータへの切り替え処理が遅くなる可能性があります。

ダイナミック ディスカバリ プロトコルの代わりに、クライアント上でデフォルト ルータをスタティックに設定することもできます。このアプローチでは、クライアントの設定と処理は簡略化されますが、単一障害点が生じます。デフォルト ゲートウェイで障害が発生した場合、LAN クライアントの通信はローカル IP ネットワーク セグメントに限定され、ネットワークの他の部分から切り離されます。

仮想ルータ冗長プロトコル(VRRP)機能により、この静的設定の問題を解決できます。VRRP は、ファーストホップ IP ルータの透過的なフェールオーバーを可能にするように設計された IP ルーティング冗長プロトコルです。VRRP を使用すると、ルータのグループを 1 つの仮想ルータ にすることができます。これにより、仮想ルータをデフォルト ゲートウェイとして使用するように、LAN クライアントを設定できます。ルータのグループを表す仮想ルータは、VRRP グループとも呼ばれます。

例として、図 1に、VRRP が設定された LAN トポロジを示します。この例では、ルータ A、B、および C は仮想ルータで構成される VRRP ルータ(VRRP を実行するルータ)です。仮想ルータの IP アドレスは、ルータ A のインターフェイスに設定されたアドレス(10.0.0.1)と同じです。

図 1. 基本的な VRRP トポロジ
基本的な VRRP トポロジ

仮想ルータはルータ A の物理インターフェイスの IP アドレスを使用するため、ルータ A はマスター仮想ルータのロールを担い、IP アドレス所有者とも呼ばれます。ルータ A は、マスター仮想ルータとして、仮想ルータの IP アドレスを管理し、この IP アドレスに送信されたパケットの転送を行います。クライアント 1 ~ 3 には、デフォルト ゲートウェイの IP アドレス 10.0.0.1 が設定されています。

ルータ B および C は、バックアップ仮想ルータとして機能します。マスター仮想ルータに障害が発生すると、高いプライオリティが設定されているルータがマスター仮想ルータになり、LAN ホストに対して中断なくサービスが提供されます。ルータ A は、回復すると、再びマスター仮想ルータになります。


(注)  

仮想ルータが接続されているスイッチ ポートでは、スパニング ツリー プロトコル(STP)を無効にすることをお勧めします。スイッチがこれらのプロトコルをサポートしている場合に、RSTP または rapid-PVST を有効にします。


複数の仮想ルータのサポート

ルータ インターフェイスには、最大 100 の仮想ルータを設定できます。ルータ インターフェイスには、最大 256 の仮想ルータを設定できます。ルータ インターフェイスがサポートできる実際の仮想ルータの数は、次の要因によって異なります。

  • ルータの処理能力

  • ルータのメモリの能力

  • 複数の MAC アドレスのルータ インターフェイス サポート

1 つのルータ インターフェイス上に複数の仮想ルータが設定されているトポロジでは、そのインターフェイスは 1 つ以上の仮想ルータのマスター、および 1 つ以上の仮想ルータのバックアップとして動作することができます。

VRRP ルータ プライオリティ

VRRP 冗長性スキームの重要な一面に、VRRP ルータ プライオリティがあります。プライオリティにより、各 VRRP ルータが果たすロールと、マスター仮想ルータが機能を停止したときにどのようなことが起こるかが決定されます。

VRRP ルータが仮想ルータの IP アドレスと物理インターフェイスの IP アドレスのオーナーである場合には、このルータがマスター仮想ルータとして機能します。

IP アドレスのオーナーである VRRP ルータが存在しない場合は、VRRP ルータのプライオリティおよびプリエンプション設定の組み合わせにより、VRRP ルータがマスターとして機能するか、またはバックアップ仮想ルータとして機能するかが決まります。デフォルトでは、最高のプライオリティを持つ VRRP ルータがマスターとして機能し、その他のすべてがバックアップとして機能します。プライオリティにより、マスター仮想ルータが機能を停止した場合にマスター仮想ルータになる優先順位も決まります。vrrp priority コマンドを使用して 1 ~ 254 の値を設定し、各バックアップ仮想ルータのプライオリティを設定できます。

たとえば、LAN トポロジのマスター仮想ルータであるルータ A が機能を停止した場合、選択プロセスが実行されて、バックアップ仮想ルータ B または C が引き継ぐかどうかが決定されます。ルータ B とルータ C がそれぞれプライオリティ 101 と 100 に設定されている場合、プライオリティの高いルータ B がマスター仮想ルータになります。ルータ B とルータ C が両方ともプライオリティ 100 に設定されている場合、IP アドレスがより高いバックアップ仮想ルータが選択されてマスター仮想ルータになります。

デフォルトでは、プリエンプティブ スキームが有効になっており、使用可能になった高いプライオリティのバックアップ仮想ルータが、現在のマスター仮想ルータから引き継ぎます。このプリエンプティブ スキームを無効にするには、vrrp preempt disable コマンドを使用します。プリエンプションが無効になっている場合、元のプライオリティがより高いマスターの障害時にマスターになるように選択されたバックアップ仮想ルータは、元のマスター仮想ルータが回復して再び使用可能になっても、マスターのままとなります。

VRRP のアドバタイズメント

マスター仮想ルータは、同じグループ内の他の VRRP ルータに VRRP アドバタイズメントを送信します。アドバタイズメントでは、マスター仮想ルータのプライオリティと状態を伝えます。VRRP アドバタイズメントは IP パケットにカプセル化され、VRRP グループに割り当てられた IP バージョン 4 マルチキャスト アドレスに送信されます。アドバタイズメントは、デフォルトで 1 秒に 1 回送信されますが、この間隔は設定可能です。

VRRP の利点

VRRP の利点は、次のとおりです。

  • 冗長性:VRRP により、複数のルータをデフォルト ゲートウェイ ルータとして設定できるようになるため、ネットワークに単一障害点が生じる可能性を低減できます。

  • ロード シェアリング:LAN クライアントとの間のトラフィックを複数のルータで共有するように VRRP を設定できるため、利用可能なルータ間でより均等にトラフィックの負荷を分散できます。

  • 複数の仮想ルータ:プラットフォームが複数の MAC アドレスをサポートする場合、VRRP は、ルータのインターフェイス上で最大 100 の仮想ルータ(VRRP グループ)をサポートします。ルータ インターフェイスには、最大 256 の仮想ルータを設定できます。複数の仮想ルータをサポートすることで、LAN トポロジ内で冗長化とロード シェアリングを実装できます。

  • 複数の IP アドレス:仮想ルータは、セカンダリ IP アドレスを含む、複数の IP アドレスを管理できます。そのため、イーサネット インターフェイスに複数のサブネットを設定した場合、サブネットごとに VRRP を設定できます。

  • プリエンプション:VRRP の冗長性スキームにより、障害が発生したマスター仮想ルータを引き継いだバックアップ仮想ルータを、使用可能になった高いプライオリティのバックアップ仮想ルータに切り替えることができます。

  • テキスト認証:簡易テキスト パスワードを設定して、仮想ルータを構成している VRRP ルータから受信した VRRP メッセージが認証されたことを確認できます。

  • アドバタイズメント プロトコル:VRRP では、VRRP アドバタイズメントに、専用のインターネット割り当て番号局(IANA)規格マルチキャスト アドレス(224.0.0.18)を使用します。このアドレッシング方式によって、マルチキャストを提供するルータ数が最小限になり、テスト機器でセグメント上の VRRP パケットを正確に識別できるようになります。IANA では VRRP に IP プロトコル番号 112 を割り当てています。

VRRP のホット リスタート

1 つのグループで VRRP プロセスの障害が発生した場合には、ピア VRRP マスター ルータ グループで強制的にフェールオーバーが行われないようにする必要があります。ホット リスタートはウォーム RP フェールオーバーをサポートしており、ピア VRRP ルータへの強制的なフェールオーバーは発生しません。