VRRPはVirtual Router Redundancy Protocolの略で、レイヤー3レベルで機器を冗長化するプロトコル。VRRPでは複数のルーター(またはレイヤー3スイッチ)をセットで利用し、各ルーターをマスター/スタンバイのどちらかに位置付ける。平常時はマスターの機器で通信し、マスターで障害が起こったらスタンバイに切り替えて通信を継続する。

 以下、仕組みを見ていこう。VRRPを有効にすると、ルーター間でVRRP Advertisementというメッセージをやり取りする。するとルーターにそれぞれ、マスター/スタンバイ(バックアップ)の役割が割り当てられる。同時に、マスターのルーターには、「仮想IPアドレス」と「仮想MAC(マック)アドレス」が割り当てられる。そのため、通常の通信時は、LAN内のパソコンは仮想MACアドレスを割り当てられたマスターのルーターと通信する。なお、この2つのアドレスはVRRPを有効にした機器同士が共用する。つまり、LAN内のパソコンにとって2台のルーターは1つのデフォルトゲートウエイなのである。()。

図●VRRPの仕組み
図●VRRPの仕組み
[画像のクリックで拡大表示]

 VRRP Advertisementは、VRRPでセットになった対向のルーターが正常に動作しているかどうかの確認にも使われる。マスターのルーターが故障すると、スタンバイのルーターにはVRRP Advertisementが届かなくなる。すると、スタンバイのルーターは「マスターのルーターが動かなくなった」と判断し、仮想IPアドレスや仮想MACアドレスを引き継いで自分がマスターとして振る舞う。

 パソコンは、同じ仮想MACアドレス宛ての通信を問題なく続けられる。物理的な経路は変わっているが、パソコン側からは、同じ仮想MACアドレスを持つ1つの仮想的なルーターに通信を続けているように見えるからだ。

 VRRPは、RFC2338として規格化されている。そのほかに、機器ベンダー独自の、VRRPによく似たプロトコルが存在する。例えば、米シスコシステムズのHSRP(Hot Standby Router Protocol)が有名だ。