コンテンツにスキップ

Virtual Router Redundancy Protocol

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。202.232.30.196 (会話) による 2006年11月15日 (水) 15:36個人設定で未設定ならUTC)時点の版 (VRRPの実装)であり、現在の版とは大きく異なる場合があります。

Virtual Router Redundancy Protocol(仮想ルータ冗長プロトコル・以下VRRPと略す)はRFC 3768で定義された、同一サブネット内のデフォルトゲートウェイサービスホストの可用性を高めるため開発された非プロプライエタリな冗長プロトコルである。どのようにして可用性を高めるかというと1台の物理的ルータの代わりに、物理的ルータのグループから構成される仮想ルータを導入することで達成している。仮想ルータは2台以上の物理ルータから構成され、その中で実際に稼動してるのは1台のみである。その仮想ルータの中で実際に稼動しているルータが停止した場合、自動的に別のルータに切り替わり稼動を開始する。実際に稼動している物理ルータのことをマスタールータと呼び、マスタールータ異常時に備えて待機している物理ルータをバックアップルータと呼ぶ。

VRRPはイーサネットMPLSトークンリング上で用いることが可能である。IPv6用のVRRPの開発も進んでいるが、こちらはまだ実用に耐える状態にない。VRRPはノーテル・ネットワークスシスコシステムズジュニパーネットワークス華為技術ファウンドリーネットワークス3comなど多くのベンダのルータに採用されており、またLinuxBSDでも使用可能である。

また、VRRPはルーティングプロトコルではないので、IPルートをアドバタイズしたり、他のルータのルーティングテーブルに影響を与えることはない。

VRRPの実装

仮想ルータは”00-00-5E-00-01-XX”というMACアドレスを使用する。最後の”XX”部分はVirtual Router IDentifier(VRID) といい、ネットワーク内にある仮想ルータごとで違う。このとき仮想ルータの中でこのアドレスを使っている物理ルータはマスタールータ1つのみである。仮想ルータとして稼動している物理ルータ同士はマルチキャストアドレス(224.0.0.18)を使用して通信している。

各物理ルータにはプライオリティがつけられており、マスタールータは255番、バックアップルータは1番から254番の間であり、障害などによりマスタールータからバックアップルータへステータス変更となったルータには強制的にプライオリティ0が割り当てられる。これはバックアップルータからマスタールータへのステータス変更を迅速に行い、また一度障害を起こしたルータをプライオリティの高い(マスターに近い)状態に置かないためである。

マスタールータの選定

マスタールータとなっている物理ルータが落ちた場合、以下の手順で代替のマスタールータが選定される。予め定められた期間(アドバタイズメントタイマ advertisement timer)の3倍の期間、マスタールータからのアドバタイズのマルチキャストパケットが受けられなかった場合、マスタールータが落ちていると判断してバックアップルータが起動し、仮想ルータはバックアップルータの中から新たなマスタールータを選定するプロセスに入る。このプロセスでもマルチキャストパケットを使用する。

この選定プロセスのときに、バックアップルータがマルチキャストパケットを送信することに注意する必要がある。それ以外にバックアップルータがマルチキャストパケットを送信するのは、仮想ルータ内の物理ルータに現状のマスタールータから置き換わるような設定を行ったときのみである。バックアップルータの中で最も高いプライオリティ値を持ったものが、マスタールータとなると同時にプライオリティ値は255に繰り上げられ、ARPパケットにより仮想MACアドレスとIPアドレスが伝達される。バックアップルータにおいてプライオリティが全て同一である場合、IPアドレスの数値が高いものがマスタールータになる。

1つの仮想ルータとして働く物理ルータは全て1ホップの範囲内に収まっていなくてはならない。仮想ルータ内ではマスタールータからバックアップルータへと定期的にアドバタイズメントパケットが流れているのは先ほど述べたが、この流れる間隔はアドバタイズメントインターバルタイマーで調整できる。この間隔を短くすればするほど、ネットワークのダウンタイムを少なくすることができるが、マルチキャストのトラフィックが増える。

関連項目

外部リンク