VRRP/VRRPv3

作成日2010/March/31
最終変更日Thursday, 08-Apr-2021 19:06:37 JST

概要

VRRP は、動的経路制御が利用できない環境で複数のルーターのバックアップを行うためのプロトコルです。

VRRP には、仮想の IP アドレスと MAC アドレスを持つ VRRP 仮想ルーターが存在します。 VRRP が動作している複数のルーターのうち、マスターとなっている 1 台が VRRP 仮想ルーターの IP アドレス / MAC アドレスを利用して動作します。 他のルーターはバックアップとして動作し、マスターがダウンした場合には速やかに仮想 IP アドレス / MAC アドレスを引き継いで VRRP 仮想ルーターが存在し続けているように動作します。 ホストは、VRRP 仮想ルーターをデフォルトゲートウェイとして設定することでマスターがダウンしてもバックアップ経由で通信を続けることができます。

                  +-----+      +-----+
                  | MR1 |      | BR1 |
                  |     |      |     |
                  |     |      |     |
     VRID=1       +-----+      +-----+
     IP A ---------->*            *<--------- IP B
                     |            |
                     |            |
                     |            |
   ------------------+------------+-----+--------+--------+--------+--
                                        ^        ^        ^        ^
                                        |        |        |        |
                                      (IP A)   (IP A)   (IP A)   (IP A)
                                        |        |        |        |
                                     +--+--+  +--+--+  +--+--+  +--+--+
                                     |  H1 |  |  H2 |  |  H3 |  |  H4 |
                                     +-----+  +-----+  +--+--+  +--+--+


対応機種とファームウェアリビジョン

ヤマハルーターでは以下の機種およびファームウェアで、VRRP / VRRPv3 をサポートしています。
ファームウェアリビジョンによって対応している項目が異なります。対応項目は以下のようになります。

機種 ファームウェア
VRRP VRRPv3
vRX VMware ESXi 版 すべてのリビジョン すべてのリビジョン
RTX1220
RTX830
NVR700W
RTX1210
RTX5000 Rev.14.00.18 以降
RTX3500
FWX120 Rev.11.03.08 以降
RTX810 Rev.11.01.21 以降
RTX1200 Rev.10.01.59 以降
SRT100 -
RTX3000 すべてのリビジョン
RTX1500 -
RTX1100
RT107e
RT250i

※他社製品とのVRRPv3利用は動作確認が取れていません。


用語

VRRP ルーター
VRRP プロトコルをサポートし、動作させているルーター
VRRP 仮想ルーター
VRRP プロトコルにより実現される、仮想的なルーター。 VRRP を走らせている環境では、デフォルトゲートウェイとしてこの VRRP 仮想ルーターを指定する
マスタールーター
VRRP 仮想ルーターの役割を果たす複数の VRRP ルーターのうち、実際にパケット配送を行うルーター
バックアップルーター
VRRP 仮想ルーターの役割を果たす複数の VRRP ルーターのうち、マスターが落ちた時にはそのバックアップになるルーター
VRRP グループ
VRRP ルーターのグループ。VRRP グループ一つにつき VRRP 仮想ルーターが 1 台となる
VRID
VRRP グループの識別子で、1〜255 の整数
VRRP 広告
マスタールーターが LAN に送信する VRRP データ。 バックアップルーターはこれを受信することでマスタールーターが動作していることを知る
シャットダウン
マスタールーターが VRRP 広告の送信を止めること

詳細

VRRP グループ

VRRP では、VRRP ルーターのグループを VRID により識別します。 VRID が同一である VRRP ルーターは同一グループに属し、その中の一台だけがマスターとしてパケットの配送を行います。 他のルーターはバックアップとしてマスターがシャットダウンしたら即座に動作を引き継ぎます。

VRID が異なると違う VRRP グループとみなされます。 同一 LAN 上に複数の VRRP グループが存在することができ、お互いはまったく独立に動作します。 また、一つのルーターが複数の VRRP グループに属することも可能です。 例えば、2 台のルーター a、b と 2 つの VRRP グループ A、B があって、a、b ともに A、B の双方に所属し、A のマスターが a、B のマスターが b という設定にしておくことができます。 この場合、PC のデフォルトゲートウェイとしては A、B いずれの VRRP 仮想ルーターでも設定でき、2 台の VRRP ルーターはお互いのバックアップを兼ねつつ、トラフィックをロードバランシングして処理することができます。

                  +-----+      +-----+
                  | MR1 |      | MR2 |
                  |  &  |      |  &  |
                  | BR2 |      | BR1 |
     VRID=1       +-----+      +-----+         VRID=2
     IP A ---------->*            *<---------- IP B
                     |            |
                     |            |
                     |            |
   ------------------+------------+-----+--------+--------+--------+--
                                        ^        ^        ^        ^
                                        |        |        |        |
                                      (IP A)   (IP A)   (IP B)   (IP B)
                                        |        |        |        |
                                     +--+--+  +--+--+  +--+--+  +--+--+
                                     |  H1 |  |  H2 |  |  H3 |  |  H4 |
                                     +-----+  +-----+  +--+--+  +--+--+

VRRP 仮想ルーター

VRRP 仮想ルーターの IP アドレスは自由に設定できるので、以下の 2 つのケースが考えられます。

  1. VRRP 仮想ルーターの IP アドレスとして、VRRP グループに所属する VRRP ルーターのうちの 1 台の IP アドレスを利用する。

    この場合、VRRP 仮想ルーターの IP アドレスを持つ VRRP ルーターが必ずマスターとなり、他のルーターはバックアップになる。

  2. VRRP 仮想ルーターの IP アドレスとして、まったく別の IP アドレスを利用する。

    この場合、マスタールーターはあらかじめ VRRP ルーターに設定された優先度に応じて自動的に決定される。 優先度は 1〜254 の整数で、大きい方が優先される。 優先度が同じ VRRP ルーターの間では IP アドレスの大きい方が優先される。

VRRP 仮想ルーターの MAC アドレスは、VRRP グループ毎に決められたユニキャストアドレスを利用します。

マスタールーターのシャットダウン

マスタールーターのシャットダウンは、マスタールーターとバックアップルーター間のネットワーク障害や、マスタールーターの電源断によって発生します。 さらに、ip INTERFACE vrrp shutdown trigger または ipv6 INTERFACE vrrp shutdown trigger コマンドを設定することで、任意の LAN/pp/tunnel インターフェースの切断や、経路の消失をトリガーとしたシャットダウンも可能です。

vRX VMware ESXi 版では、LAN インターフェースは VMware ESXi の仮想スイッチに接続されているため、LAN インターフェースはリンクダウンしません。このため、任意の LAN インターフェースをトリガーとしたシャットダウンを行うには、lan keepalive use コマンドの設定が必要となります。

優先度

VRRP ルーターはそれぞれ優先度を持ち、優先度の高いルーターがマスタールーターとなり、他のルーターはバックアップとなります。 優先度は 1〜255 の数値で設定しますが、スムーズなマスター/バックアップ切り替えのためにはできるだけ優先度は大きな差をつけておくのがいいでしょう。

また、優先度はまったく同じ値を設定してもよいことになっていますが、その場合、各 VRRP ルーターの LAN インターフェースの IP アドレスの大小によって優先されるべき VRRP ルーターが決まりますが、複数のルーターが同時にマスタールーターになろうとしますので、その間の調整でマスタールーターがばたばたすることが起こりえます。 やはり優先度はできるだけ大きな差をつけて設定すべきです。

プリエンプトモード

VRRP の動作モードの一つに、プリエンプトモードがあります。 プリエンプトモードか否かでマスタールーター選出の方法が変わってきます。

非プリエンプトモードでは、先に優先度の低い VRRP ルーターがマスタールーターとなっていた場合には、そこに後から優先度の高い VRRP ルーターが参加してもマスタールーターの切り替わりは起こらず、従来からのマスタールーターがマスターとして動作し続けます。 一方、プリエンプトモードで動作している場合には、優先度の高い VRRP ルーターが加わると必ずそちらにマスタールーターが切り替わります。

通常は、プリエンプトモードで運用します。 非プリエンプトモードは、マスタールーターが頻繁にダウンする場合に利用できます。

動的経路制御

VRRP を設定している LAN インターフェースでは動的経路制御は動作させない方がよいでしょう。 一方、VRRP を設定していないインターフェースで動的経路制御を動作させ、その状態によってマスタールーターを切り替えるという形はありえます。

VRRP と NAT との連携

ヤマハルーターの仕様としては VRRP の仮想 IP アドレスと NAT の外側アドレスが同一であれば連携する(マスタ状態である場合にだけARPに応答する)ようになっています。 静的 NAT についても同じで、VRRP の仮想 IP アドレスと一致する外側アドレスをもつエントリ 1 つだけが VRRP と連携します。 VRRP の仮想 IP アドレスと一致しない静的 NAT の外側アドレスまでも VRRP に連携させることはできません。


コマンド