VRRP

VRRP(Virtual Router Redundancy Protocol)は、経路の冗長化を目的とする機能です。

TCP/IPのネットワークでは、目的の宛先にデータが到達するまでに、いくつものルータを中継します。各ルータは、ダイナミックルーティング(RIPやOSPFなど)を利用して、宛先までの最適経路を計算しています。このダイナミックルーティングでは、宛先への経路に障害が起きた場合に、別の迂回経路に自動で切り替える機能を持っています。

TCP/IPネットワーク上の、すべての端末が、ダイナミックルーティングをサポートしているわけではありません(特に通信のエンドポイントにある端末)。これにはいろいろな理由が考えられます。管理の面倒さ/処理の重さ。。。等々。ダイナミックルーティングをサポートせずに、宛先へデータを中継させる代替方法として、経路を設定により行うスタティックルーティングがあります。エンドポイントの端末では、スタティックルーティングの中でも、デフォルトルートのみを指定するケースが大半を占めています。

ダイナミックルーティングでは、経路の障害に対して、自動で迂回経路に切り替える機能があるのに対し、スタティックルーティングでは、自動で迂回経路に切り替える機能がありません。例えば、エンドポイントの端末にデフォルトルートとして登録されているルータが故障した場合は、その設定を変更しない限り、データを送ることができなくなってしまいます。

VRRPは、このようなケースにおいて通信を継続するための機能です。VRRPを使用するネットワーク形態は、以下のようになります。



図のように、経路上に複数のルータを配備し、そのルータ間で、VRRPのやり取りを行い、データを中継します。データを中継するルータが故障した場合などには、別のルータが中継を担当します。このようにして、スタティックルーティング(デフォルトルート)のみをサポートしている端末がある場合でも、経路の障害時に自動で迂回することができます。


VRRPのしくみ

VRRP グループはどのように形成され、仮想IP アドレス/代表ルータはどのように形成されるのかを説明します。

VRRPのしくみ

VRRP パケットフォーマットについて説明します。
VRRP をサポートするルータは、VRRP パケット(ADVERTISEMENT )を使用し、自分がVRRP 機
能を使用するルータであることを、ネットワークに対して広告します。ただし、一度代表ル
ータが決定した後は、代表ルータのみがVRRP パケットを、定期的に送信します。
VRRP は、プロトコル番号112 のIP パケットです。VRRP パケットを送信する際、送信元アド
レスは実際に送信するインタフェースのIP アドレス/宛先アドレスは224.0.0.18 となりま
す。IP ヘッダのTTL 値は、"255"でなくてはいけません。

VRRP パケットフォーマットは、以下のとおりです。
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Version Type Vertual Rtr ID Priority Count IP Addrs
Auth Type Adver Int Checksum
IP Address (1)
IP Address (n)
Authentication Data (1)
Authentication Data (2)

Version VRRPバージョンです。FITELnet-F1000では、"2"になります。
Type VRRPタイプです。ADVERTISEMENTでは、"1"になります。
Virtual Rtr ID VRID値です。
同じVRRPグループに属するルータは、この値が同じである必要があります。
Priority 優先度です。
この値が大きいほうが、優先度が高くなります。優先度の高いルータが、代表ルータになります。
Count IP Addrs このVRRPパケットで広告するIPアドレスの個数です。
Auth Type 認証タイプです。
認証を使用しない場合は"0"、テキストパスワードによる認証を行う際は"1"、IP認証ヘッダを使用する場合は"2"となります。
FITELnet-F1000では、IP認証ヘッダによる認証はサポートしていません。
Adver Int ADVERTISMENTパケットの送信間隔です。
Checksum このパケットのチェックサムです。
IP Address
(1)〜(N)
仮想IPアドレスで使用可能なIPアドレスです。
FITELnet-F1000では、通知できるIPアドレスは、1 つです。
Authenticaton Data 認証データです。
Auth Typeが"1"(テキストパスワード)の場合に、パスワード文字列が入ります。

代表ルータの決定ルール

代表ルータは、以下のルールに従い決定されます。

【代表ルータが決定していないとき】
・優先度が高い
 VRRPグループ内で、最も優先度が高いルータが代表ルータになります。優先度が同じであった場合は、ADVERTISEMENTパケット内のIPアドレス(1)で、最も大きい値を通知したルータが代表ルータになります。

【代表ルータが異常のとき】
 代表ルータが定期的に送信するADVERTISEMENTパケットを一定時間受信しなかった場合は、次に優先度の高いルータが代表ルータになります。
 ここで、一定時間とは、ADVERTISEMENTメッセージ中の「Adver Int」値(ADVERTISEMENTパケットの送信間隔)の3 倍+((256-優先度値)/256 )秒 で計算されます。例えば、【Adver Int = 1/優先度255 の代表ルータ】の場合、(3*1)+((256-255)/256)=3.00390625 秒(≒3.00 秒)間、ADVERTISEMENTメッセージを受け取らなかった場合に、代表ルータ異常と判断します。

【新しいルータがVRRPグループに属した場合】
 新しいルータがVRRPグループに属した(異常になった元代表ルータが復旧したケースも含みます)場合は、以下のルールに従い、代表ルータが決定されます。
・Preempt モード(先制モード)でない場合は、優先度に関係なく、現在の代表ルータが、そのまま代表ルータを継続することを承認します。
・Preempt モード(先制モード)の場合は、優先度に従い、代表ルータを決定しなおします。


仮想IPアドレスの決定ルール

【代表ルータが決定していないとき】
代表ルータのADVERTISEMENTに含まれていたIPアドレス(1)〜(N)が、仮想IPアドレスとなります。

【代表ルータが変更になったとき】
今まで使用されていた仮想IP アドレスが、そのまま継承されます。


VRRPグループ

VRRPをサポートするルータにより形成されているグループを、VRRPグループといいます。
VRRPは、仮想的に1台のルータとして動作することになります。したがって、VRRPグループを、仮想ルータという場合もあります。

仮想IPアドレス

仮想ルータとしてネットワークに接続する際のIPアドレスです。VRRPグループを形成する各ルータが使用するインタフェースのIPアドレスのうちの1つでもかまいませんし、VRRPグループ内のルータが使用しないアドレスでもかまいません。ただし、VRRPを動作させるインタフェースのサブネットで使用するアドレスである必要があります。また、VRRPグループの各ルータに設定される仮想IPアドレスの設定は、すべて同じアドレスである必要があります。

仮想MACアドレス

仮想ルータのMACアドレスです。VRRPグループの代表ルータは、仮想IPアドレスに対するARPリクエストに対して、この仮想MACアドレスを返信(Response)します。仮想MACアドレスは、00:00:5e:00:01:<VRID>となります。例えばVRIDが"10"の場合の仮想MACアドレスは、00:00:5e:00:01:0a となります(MACアドレスでは16進数になります)。

VRID

VRRPグループの番号です。VRRPを形成するルータには、同じ値を設定する必要があります。

代表ルータ

VRRPグループのルータの中で、実際にデータ中継を行うルータを代表ルータあるいはマスタールータといいます。代表ルータは、データを中継するだけでなく、ARPのリクエストに対する応答も行います。

バックアップルータ

代表ルータが故障等で使用できなくなった場合に、代表ルータとして動作するルータです。
VRRPグループのルータでは、1台の代表ルータ以外は、すべてバックアップルータとなります。

Preempt(先制)モード

後から起動した優先度の高いVRRPルータが、先に起動していた優先度の低い代表ルータに替わり代表ルータとすることを許可するかどうかのモードです。Preemptモードの場合は、代表ルータの交替を許可し、Preemptモードでない場合は許可しません。


VRRPとIPsec

EWAN側でVRRPを動作させ、IPsecを動作させる場合は、以下の注意が必要です。
FITELnet-F100などのCPEから、FITELnet-F1000に対してIPsecの通信を行う場合、VRRPで指定した仮想IP アドレス宛にネゴシエーションを行うことが可能です。ただし、VRRPの代表ルータに障害が発生した場合、バックアップ側のルータがIPsec通信の継続を試みますが、暗号化されたデータを復号化するための情報がないため、通信を継続することができません。
FITELnet-F1000でVRRPを使用し、IPsecの通信を行う場合、CPE側でSAの監視を行う必要があります。FITELnet-F100では、DPD(Dead Peer Detection )などの、SA監視機能がサポートされていますので、必ず設定するようにしてください。このSA監視機能により、SAが切れたことを認識でき、再度ネゴシエーションを行うことができます。
また、FITELnet-F1000のPreempt(先制)モードがON になっていると、VRRPの優先度が高いルータが起動することにより、代表ルータの切り替えが発生するため、IPsecのSAが一時切断されます。Preemptの設定の際は注意が必要です。

FITELnet-F1000での注意事項

FITELnet-F1000では、VRRPを作動することができるインタフェースが3つ(LAN/EWAN#1/EWAN#2)あります。このうち、代表ルータとして動作しているインタフェースがDOWN(ケーブル抜け等)した場合、他のVRRPインタフェースでの代表ルータ権限を放棄します(具体的には、Priority=0のVRRPパケットを送信する)。例えば、LANとEWAN#1でVRRP を動作させ、両方を代表ルータとしている状態で、EWAN#1回線のケーブルが抜けた場合、LANインタフェースの代表ルータ権限を放棄します。


関連コマンド

ip vrrp enable

ルータ自身をVRRPルータとして動作させる場合は、ip vrrp enableコマンドを利用して設定します。
Router(config)#ip vrrp enable



トップページへ