InfraLab

VRRP 仕様書

42 / 42 items

InfraLab Reference Series

Category: VRRP

Updated: 2026-05-12

infralab.jp

vrrp

42 items

VRRP 仕様書

Abstract

Virtual Router Redundancy Protocol (RFC 5798) の電文・MAC・タイマー・ステート・preempt 仕様、HSRP との差分、Cisco IOS の VRRPv3 設定例、トラブルシュート。

Table of Contents

  1. 1. 概要3
  2. 2. プロトコル仕様10
  3. 3. ステート3
  4. 4. タイマー4
  5. 5. トラッキング4
  6. 6. vs HSRP 差分8
  7. 7. Cisco IOS 設定例5
  8. 8. 確認・トラブルシュート5
  9. 9. References10

1. 概要

1.1. VRRP とは

Virtual Router Redundancy Protocol。L3 のデフォルトゲートウェイを複数ルータで冗長化する IETF 標準プロトコル。

IETF 標準 / マルチベンダ対応 / Active-Standby

1.2. RFC

IPv4 は RFC 3768 → RFC 5798 で改訂、IPv6 も RFC 5798 で統合。v2 は IPv4 のみ、v3 は IPv4/IPv6 両対応。

v2: RFC 3768 / v3: RFC 5798

1.3. 用途

クライアントのデフォルトゲートウェイ高可用化。L3 スイッチや FW の冗長 LAN 側ゲートウェイで標準採用。

default GW 冗長 / SVI 冗長 / L3 SW・FW

2. プロトコル仕様

2.1. VRRPv2 Advertisement パケット

VRRPv2 の Advertisement 形式。IPv4 専用で Authentication Data を含む。

RFC 3768 VRRPv2 Packet Format ASCII 図:

   0                   1                   2                   3
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  Ver  | Type  |     VRID      |   Priority    |   Count IP    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |   Auth Type   |   Adver Int   |           Checksum            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                      IP Address(es) ...                       |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                      Authentication Data                      |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                      Authentication Data                      |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

2.2. VRRPv3 Advertisement パケット

VRRPv3 の Advertisement 形式。IPv4/IPv6 共通で認証フィールドは持たない。

RFC 5798 VRRPv3 Packet Format ASCII 図:

   0                   1                   2                   3
   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
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  Ver  | Type  |     VRID      |   Priority    |   Count IP    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |  Res  |     Max Adver Int     |           Checksum            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                     IPvX Address(es) ...                      |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

2.3. IP プロトコル番号

VRRP は IP プロトコル 112 として直接乗る。UDP/TCP ではない。

IP proto 112 / TTL 255 固定

2.4. マルチキャストアドレス

Advertisement の宛先。IPv4 と IPv6 で別。

IPv4: 224.0.0.18 / IPv6: FF02::12

2.5. 仮想 MAC アドレス

IANA OUI 00:00:5E。XX に VRID (0-255) が入る。IPv4/IPv6 で第 5 オクテットが違う。

IPv4: 00:00:5E:00:01:<VRID> / IPv6: 00:00:5E:00:02:<VRID>

2.6. VRID 範囲

Virtual Router ID。同一 L2 内でユニーク。VRRPv3 は v2 と完全に同じ範囲。

1 - 255 (VRID)

2.7. プライオリティ

Master 選出の優先度。値が大きいほど優先度が高く Master になる。0 は「自分は退く (Master 終了)」の特別な意味。255 は IP Owner 専用。

範囲 0-255 / 値が大きいほど優先 (高=Master) / 既定 100 / 255 = IP Owner / 0 = 退避通知

2.8. IP Owner

仮想 IP を物理 IF にも持つ機。自動的にプライオリティ 255 が付き、常に Master となる。

物理 IF == 仮想 IP / 自動 priority 255

2.9. 認証

VRRPv3 (RFC 5798) は認証を廃止。v2 の平文/MD5 はセキュリティ上の理由で非推奨。

v3: 認証なし (廃止) / v2: 平文・MD5 (非推奨)

2.10. メッセージ種別

VRRP のメッセージは Advertisement の 1 種類のみ。type フィールド = 1。

Advertisement (type=1) のみ

3. ステート

3.1. Initialize

起動直後 / IF Down 時。Advertisement の送受信は行わない。

起動時 / IF Down → メッセージ無し

3.2. Backup

Master からの Advertisement を待ち受ける状態。Master Down Timer が満了したら Master 化。

Master の Advertisement 待ち / Down Timer 監視

3.3. Master

仮想 IP を ARP 応答し、Advertisement を送出する状態。実際にパケット転送を担う。

ARP 応答 / Advertisement 送出 / 転送

4. タイマー

4.2. Master Down Interval

Backup が Master Down と判定するまでの時間。3 × Advertisement Interval + Skew Time。

3 × Adv + Skew ≈ 3.x 秒

4.3. Skew Time

Backup ごとに少しずつ Down 判定タイミングをずらす。複数 Backup の同時 Master 化を防ぐ。

(256 − priority) × Adv / 256 秒

4.4. preempt

VRRP は既定で preempt が有効。高プライオリティ機が復活すると即時 Master を奪取する。

既定 ON / no preempt で停止可

5. トラッキング

5.1. オブジェクトトラッキング

track オブジェクトを VRRP に紐付け、Up/Down で priority を decrement する。上流 IF Down 時の自動切替に必須。

track <id> → decrement <value>

5.2. インタフェーストラッキング

監視対象 IF の line-protocol を track。

track 1 interface Gi0/0 line-protocol

5.3. ルートトラッキング

上流 (BGP/OSPF) の特定ルートが消えたら priority を下げて切替。

track 2 ip route 10.0.0.0/8 reachability

5.4. BFD 連携

BFD で素早い障害検知をしてその結果を VRRP の track にフィードバック。

track 3 ip route 10.0.0.1 protocol BFD

6. vs HSRP 差分

6.1. 標準性

VRRP は IETF 標準。マルチベンダ環境で第一選択。

VRRP: IETF 標準 / HSRP: Cisco 独自

6.2. トランスポート

VRRP は IP プロトコル直載せ、HSRP は UDP 上に乗る。

VRRP: IP proto 112 / HSRP: UDP 1985

6.3. マルチキャスト

VRRP は 1 種類、HSRP は v1/v2 でアドレスが違う点に注意。

VRRP: 224.0.0.18 / HSRPv1: 224.0.0.2 / HSRPv2: 224.0.0.102

6.4. 仮想 MAC OUI

OUI が違うため、MAC アドレステーブルから一目で見分け可能。

VRRP: 00:00:5E:00:01 / HSRP: 00:00:0C:07:AC (v1)

6.5. preempt 既定

VRRP は既定 ON、HSRP は既定 OFF。HSRP では明示が必要。

VRRP: 既定 ON / HSRP: 既定 OFF

6.6. 既定 Hello/Dead

VRRP の方がデフォルトで反応が速い。

VRRP: 1s/3.x s / HSRP: 3s/10s

6.7. 認証

VRRPv3 は認証廃止、HSRP は MD5 サポート。要件次第で HSRP を選ぶ場面も。

VRRPv3: なし / HSRP: 平文・MD5

6.8. IP Owner 概念

VRRP には IP Owner 概念があるが、HSRP には無い。

VRRP: IP Owner 自動 priority 255 / HSRP: 概念なし

7. Cisco IOS 設定例

7.1. VRRPv3 基本設定

modern Cisco IOS は address-family 形式 (RFC 5798 準拠)。SVI に VRID と仮想 IP を割当。

fhrp version vrrp v3
interface Vlan10
 vrrp 10 address-family ipv4
  address 10.0.10.1
  priority 110
  preempt

7.3. preempt 無効化

復電後の自動切戻しを抑止したいときに。

vrrp 10 address-family ipv4
 no preempt

7.4. object tracking

上流 IF が落ちたら priority を 30 下げ、対向機が Master 化するように構成。

track 1 interface Gi0/0 line-protocol
vrrp 10 address-family ipv4
 track 1 decrement 30

7.5. VRRPv2 (旧構文)

古い IOS / 互換性目的の構文。新規構築は v3 推奨。

interface Vlan10
 vrrp 10 ip 10.0.10.1
 vrrp 10 priority 110
 vrrp 10 preempt

8. 確認・トラブルシュート

8.1. 状態確認

Master/Backup、優先度、advertise を一覧で確認。

show vrrp brief / show vrrp all

8.2. track 状態確認

track の Up/Down と参照元 (VRRP/HSRP/Static route) を表示。

show track / show track 1

8.3. 両機 Master (split-brain)

L2 で Advertisement が届かないと両機が Master 化。VLAN / STP / MTU / 認証一致を疑う。

症状: 両機 Master / 原因: L2 経路・STP・認証差

8.4. MAC フラッピング

仮想 MAC が両機から学習されると MAC が flap。切替直後の数秒は正常、継続するなら L2 ループ。

log: %MAC_MOVE / 確認: STP・ループ

8.5. パケットキャプチャ

Advertisement が流れているかを直接確認。

tcpdump -i eth0 ip proto 112

9. References

  1. VRRP
  2. VRRPv3
  3. RFC 5798
  4. RFC 3768
  5. FHRP
  6. 仮想ルータ
  7. デフォルトゲートウェイ冗長
  8. preempt
  9. Master
  10. Backup
Related