YAMAHA RTX の VRRP 設定手順|シャットダウントリガの使い方

  • URLをコピーしました!
目次

はじめに

YAMAHA RTX シリーズは、中小規模拠点や SOHO 環境のルーターとして広く導入されています。2 台構成でゲートウェイを冗長化する場面では、標準規格である VRRP が選択肢になります。

RTX の VRRP 設定には、他社機器と大きく異なる特徴があります。1 行のコマンドにすべてのパラメーターを並べる構文です。Cisco のように設定項目ごとに行を分ける形ではないため、他社の設定例をそのまま読み替えることができません。

もう 1 点、公式マニュアルに明記された仕様として、特定の条件下では priority と preempt の設定が無視されます。設定したはずの優先度が反映されない場合、この条件に該当している可能性があります。

この記事でわかること
  • RTX の 1 行完結型 VRRP 構文と、各パラメーターの既定値
  • priority と preempt の設定が無視される条件と、その理由
  • シャットダウントリガによる 3 通りの監視方式
  • 他社の priority 減算型と RTX の VRRP 停止型の設計思想の違い
  • show status vrrpの読み方と切り分けの手順

結論から述べます。仮想ルーターの IP アドレスに、自分自身の LAN インターフェースに付与されているアドレスを指定すると、priority と preempt の設定は無視されます。この場合、優先度は最高の 255 となり、常にプリエンプトモードで動作します。冗長構成を意図どおりに動かすには、仮想 IP アドレスと実 IP アドレスを別の値にする設計が前提になります。

上位回線の障害を検知して切り替える仕組みは、シャットダウントリガで構成します。インターフェースのダウン、経路の消失、ping 監視の結果を条件に指定できます。

本記事の設定例は、次の構成を前提にしています。

項目
セグメント192.168.100.0/24
仮想 IP アドレス192.168.100.254
R1(Master 想定)の実 IP アドレス192.168.100.251
R2(Backup 想定)の実 IP アドレス192.168.100.252
VRID1
LAN 側インターフェースLAN1
WAN 側インターフェースLAN2

YAMAHA RTX における VRRP の位置づけ

RTX で VRRP を使う前に、対応状況と構文の特徴を確認しておきます。

対応機種

YAMAHA のコマンドリファレンスには、ip interface vrrpコマンドの対応機種が明記されています。RTX5000、RTX3510、RTX3500、RTX1300、RTX1220、RTX1210、RTX830、および vRX の VMware ESXi 版が挙げられています。

エントリーモデルから上位機種まで幅広く対応していますが、ファームウェアのバージョンによって利用できるパラメーターが異なる可能性があります。実機への適用前に、対象機種のマニュアルで確認することをおすすめします。

他社と異なる構文体系

RTX の VRRP 設定は、1 つのコマンドにパラメーターを並べる形式です。

メーカー構文の形式設定の例
Cisco(v2)1 行完結型(項目ごとに行を分ける)vrrp 1 ip ... / vrrp 1 priority ...
Cisco(v3)ブロック型vrrp 1 address-family ipv4 配下
NEC IX1 行完結型(項目ごとに行を分ける)vrrp 1 ip ... / vrrp 1 priority ...
YAMAHA RTX1 コマンド完結型ip lan1 vrrp 1 <IP> priority=200 preempt=on

RTX だけが、1 つのコマンドですべてを指定する形式です。Cisco や NEC IX は「項目ごとに行を分ける」形式で、行数は増えますが差分の把握はしやすくなります。

RTX の形式は記述がコンパクトになる反面、パラメーターを追加・変更する際にコマンド全体を再入力する必要があります。設定変更の手順書を作成する際は、この点を考慮することをおすすめします。

VRRP の仕様そのものについては、関連記事『VRRP とは|Master 選出と priority 設計の落とし穴』で整理しています。

基本設定の手順

RTX の VRRP 設定は、LAN インターフェースへのアドレス設定と VRRP コマンドの 2 行が基本になります。

コマンドの構文

公式マニュアルに記載されている構文です。

ip interface vrrp vrid ip_address [priority=priority] [preempt=preempt] [auth=auth] [advertise-interval=time1] [down-interval=time2]

interfaceの位置にlan1などのインターフェース名が入ります。角括弧内のパラメーターは省略可能です。公式のコマンドリファレンスに記載されている書式で、詳細は次の節で引用する同ページを参照できます。

Master 側の設定

# ip lan1 address 192.168.100.251/24
# ip lan1 vrrp 1 192.168.100.254 priority=200

ip lan1 vrrp 1 192.168.100.2541が VRID、続くアドレスが仮想 IP アドレスです。priority=200で優先度を指定しています。

アドレスの並び順に注意が必要です。VRID の直後に来るのは仮想 IP アドレスであり、実 IP アドレスは別コマンドのip lan1 addressで設定します。

Backup 側の設定

# ip lan1 address 192.168.100.252/24
# ip lan1 vrrp 1 192.168.100.254 priority=100

priority は既定値が 100 のため省略もできますが、設計意図を明示する意味で記述しておくことをおすすめします。設定を引き継いだ担当者が、値が省略されているのか意図的に既定値なのかを判断しやすくなります。

パラメーターの一覧と既定値

指定できるパラメーターを整理します。

パラメーター内容既定値
priority優先度。大きい値が Master に選出される100
preempt切り戻しの可否(on / off)on
auth認証。指定しない場合は認証なしで動作するなし
advertise-intervalMaster が VRRP 広告を送信する間隔1 秒
down-intervalBackup が広告を監視してダウンと判定するまでの時間公式で未確認

authを指定しない場合は認証なしで動作します。他社機器と対向する構成で認証を使う場合、双方の方式を揃える必要があります。RTX の認証は VRRPv2 のテキスト認証であり、Cisco の MD5 認証とは互換性がありません。

タイマーを変更する場合の設定例です。

# ip lan1 vrrp 1 192.168.100.254 priority=200 preempt=on advertise-interval=3

advertise-intervalを延長すると、切り替わりまでの時間が長くなります。回線が不安定な環境で誤検知によるフラッピングを抑えたい場合の選択肢になりますが、障害時の通信断時間も比例して伸びる点に注意が必要です。

priority と preempt が無視される条件

RTX の VRRP でつまずきやすい仕様です。公式マニュアルに明確な記述があります。

仕様の内容

参考: YAMAHA コマンドリファレンス / インタフェース毎の VRRP の設定
priority およびpreempt パラメータの設定は、仮想ルーターの IP アドレスとして自分自身の LAN インタフェースに付与されているアドレスを指定している場合には無視される。この場合、優先度は最高の 255 となり、常にプリエンプトモードで動作する。
https://www.rtpro.yamaha.co.jp/RT/manual/rt-common/ip/ip_interface_vrrp.html

つまり、次のような設定をした場合です。

! この設定では priority=100 が無視される
# ip lan1 address 192.168.100.254/24
# ip lan1 vrrp 1 192.168.100.254 priority=100

実 IP アドレスと仮想 IP アドレスがどちらも 192.168.100.254 になっています。この機器は priority 255 として動作し、常に Master になります

この仕様の背景

これは RTX 固有の実装ではなく、RFC の規定に忠実な動作です。

RFC 5798 では、仮想 IP アドレスを自身の実インターフェースアドレスとして持つ機器を「IP アドレス所有者」と呼び、その priority は 255 でなければならないと規定しています。所有者は起動と同時に Master として動作を開始し、preempt の設定にかかわらず常に置き換えを行います。

RTX のマニュアルの記述は、この規定をそのまま実装した結果を説明したものです。同様の仕様は NEC IX にもあり、実 IP アドレスと仮想 IP アドレスを同一にすると priority 255 が自動的に付与されます。

設計上の対処

対処は明確です。仮想 IP アドレスと実 IP アドレスを別の値にします

構成仮想 IPR1 の実 IP動作
所有者あり192.168.100.254192.168.100.254priority が無視され常に Master
所有者なし(推奨)192.168.100.254192.168.100.251priority の設定どおりに動作

本記事の設定例では、仮想 IP アドレスを 192.168.100.254、実 IP アドレスを 192.168.100.251 と別の値にしています。

この設計は、後述するシャットダウントリガを使う構成でも前提になります。priority 255 の状態では、監視によって切り替えることができないためです。

症状からの切り分け

次のような症状が出た場合、この仕様を疑う流れになります。

  • priority=100を設定したのにshow status vrrpの出力で優先度が 255 と表示される
  • Backup 側として構成したはずの機器が Master になっている
  • preempt=offを設定したのに切り戻りが発生する

いずれも、ip lan1 addressで設定したアドレスと、VRRP コマンドで指定した仮想 IP アドレスが一致していないかを確認します。

シャットダウントリガによる監視

VRRP が標準で判定するのは、VRRP を設定したインターフェース上での広告の受信可否だけです。LAN1 側が正常であれば、WAN 側の LAN2 がダウンしても Master のままになります。この課題に対応するのがシャットダウントリガです。

基本の構文

VRRP を設定したインターフェースに対して、監視条件を追加する形式です。

# ip lan1 vrrp shutdown trigger 1 lan2

1が対象の VRID、lan2が監視対象です。VRRP の設定行とは別のコマンドとして記述する点が、他社と共通する構造になります。

3 通りの監視方式

シャットダウントリガには、監視対象として指定できるものが 3 種類あります。

監視方式指定の形式検知できる障害
インターフェース監視lan2などのインターフェース名物理リンクのダウン
相手先情報番号の監視pp <番号>PPPoE セッションの切断
経路監視route <宛先> [nexthop]ルーティングテーブルからの経路消失
ping 監視ip keepaliveで定義したものと組み合わせるリンクダウンを伴わない上流障害

検知できる範囲が段階的に広がる構成になっています。

参考: YAMAHA コマンドリファレンス / シャットダウントリガの設定
設定した VRRPv3 グループでマスタールーターとして動作している場合に、指定した条件によってシャットダウンすることを設定する。
https://www.rtpro.yamaha.co.jp/RT/manual/fwx120/ipv6/ipv6_interface_vrrp_shutdown_trigger.html

上記は IPv6 版の記述ですが、動作の考え方は IPv4 版と共通です。Master として動作している場合にのみシャットダウンが働く点が要点になります。

PPPoE で ISP へ接続する構成では、pp <番号>の指定が有効です。物理リンクがアップしていても PPPoE セッションが切断されれば検知できるため、フレッツ回線を使う拠点構成で実用性の高い選択肢になります。

# ip lan1 vrrp shutdown trigger 1 pp 1

インターフェース監視

もっとも基本的な形式です。WAN 側インターフェースのダウンを検知します。

! R1(Master 想定)
# ip lan1 address 192.168.100.251/24
# ip lan1 vrrp 1 192.168.100.254 priority=200
# ip lan1 vrrp shutdown trigger 1 lan2
!
! R2(Backup 想定)
# ip lan1 address 192.168.100.252/24
# ip lan1 vrrp 1 192.168.100.254 priority=100
# ip lan1 vrrp shutdown trigger 1 lan2

Backup 側にも同じ設定を入れておくことをおすすめします。R2 側の WAN が落ちている状態で Master に昇格する事故を防げます。

この方式の限界は明確です。上流の ONU や回線側で障害が起きても、RTX と上流機器の間のリンクがアップしていれば検知できません。ケーブル抜けや機器の電源断は検知できますが、回線事業者側の障害には反応しません。

経路監視

ルーティングテーブルから対象の経路が消えたことを条件にします。

# ip lan1 vrrp shutdown trigger 1 route default 200.0.10.1

動的ルーティングを併用している構成や、次に述べる keepalive と組み合わせた静的経路を使う構成で有効です。経路が失われた時点で切り替わるため、インターフェース監視より検知範囲が広くなります

keepalive による ping 監視

もっとも検知範囲が広い方式です。まずip keepaliveで ping 監視を定義し、その結果を経路に紐づけます。

! ping 監視の定義
# ip keepalive 50 icmp-echo 1 3 200.0.10.1
!
! 監視結果を経路に紐づける
# ip route default gateway 200.0.10.1 keepalive 50
!
! VRRP とシャットダウントリガ
# ip lan1 vrrp 1 192.168.100.254 priority=200 preempt=on advertise-interval=3
# ip lan1 vrrp shutdown trigger 1 route default 200.0.10.1

構成の流れは次のとおりです。

  1. ip keepaliveで監視先への ICMP 監視を定義します
  2. ip routekeepaliveオプションで、監視結果を経路の有効性に紐づけます
  3. 監視が失敗すると、経路がルーティングテーブルから消えます
  4. シャットダウントリガの経路監視がこれを検知し、VRRP を停止します

リンクダウンを伴わない上流障害に対応できるのが、この方式の利点です。上流ルーターが応答しなくなった場合や、回線事業者側で通信が届かなくなった場合でも切り替わります。

一方で、設定が 3 つの機能にまたがるため、どこかの紐づけが欠けると全体が動作しません。構築後は、監視先を意図的に到達不能にして動作を確認することをおすすめします。

VRRP 停止型という設計思想

RTX のシャットダウントリガは、条件成立時に VRRP そのものを停止させる方式です。他社の実装と比較します。

メーカー方式動作
Ciscopriority 減算型指定した値だけ priority を下げる
FortiGatepriority 低下通知型低下後の priority を広告して能動的に通知
NEC IXVRRP 停止型(priority 減算型も選択可)VRRP を停止、または priority を減算
YAMAHA RTXVRRP 停止型VRRP を停止

RTX では priority を減算する方式が用意されていません。設定の選択肢は VRRP の停止のみです。

この違いには利点と制約があります。

観点VRRP 停止型(RTX)priority 減算型(Cisco)
設計の手間減算値の計算が不要減算値と priority 差の設計が必要
切り替えの確実性確実に切り替わる設計を誤ると切り替わらない
段階的な優先度制御できないできる
切り替わりの速度広告停止のため待機時間が発生priority 逆転を即座に検知できる

設計がシンプルになる反面、3 台以上の構成で段階的に優先度を制御することはできません。RTX で 3 台構成を組む場合、この制約を前提に検討する必要があります。

Cisco の減算型では、減算値が priority 差以下だと切り替わらないという落とし穴があります。RTX ではこの計算が不要になるため、2 台構成であれば設計ミスのリスクが小さいという見方もできます。Cisco 側の設計については、関連記事『Cisco VRRP の設定手順|v2 と v3 で異なる構文の使い分け』で扱っています。

NEC IX も VRRP 停止型を基本としており、同じ設計思想です。IX ではネットワークモニタという独立した機能で監視を構成する点が異なります。詳細は関連記事『NEC IX の VRRP 設定手順|ネットワークモニタとの連携』にまとめています。

priority 255 では機能しない

前述の仕様が、ここでも関係します。仮想 IP アドレスと実 IP アドレスを同じ値にした構成では、シャットダウントリガによる切り替えが機能しません

priority 255 の状態は「IP アドレス所有者」として扱われ、常に Master になるためです。監視条件が成立して VRRP を停止させても、意図した切り替えにならない可能性があります。

シャットダウントリガを使う設計では、仮想 IP アドレスと実 IP アドレスを別の値にすることが前提になります。

動作確認と切り分け

RTX の確認コマンドは 1 つです。

show status vrrp の読み方

# show status vrrp
LAN1 ID:1
  仮想IPアドレス: 192.168.100.254
  現在のマスター: 192.168.100.251
  優先度: 200
  自分の状態: Master / 優先度: 200
  Preempt
  認証: NONE
  タイマ: 1

出力が日本語表示である点が、他社機器との大きな違いです。Cisco のState is MASTERや FortiGate のstate: PRIMARYに相当する情報は、「自分の状態: Master」の行で確認します。

Backup 機の出力例です。

# show status vrrp
LAN1 ID:1
  仮想IPアドレス: 192.168.100.254
  現在のマスター: 192.168.100.251
  優先度: 200
  自分の状態: Backup / 優先度: 100
  Preempt
  認証: NONE
  タイマ: 1

確認したい箇所を整理します。

確認内容
LAN1 ID:1インターフェースと VRID
仮想IPアドレス両機で同一の値になっているか
現在のマスター現在 Master として動作している機器の実 IP アドレス
優先度(現在のマスターの行)Master 側の優先度
自分の状態自機の状態と優先度
Preempt表示があれば有効。preempt=offの場合は表示されない
認証NONE または TEXT
タイマAdvertisement 間隔(秒)

「現在のマスター」と「自分の状態」の 2 つの優先度を見比べると、状況を把握しやすくなります。上の Backup 機の例では、Master 側が 200、自機が 100 と表示されており、設計どおりの状態です。

状態が期待どおりにならない場合

確認の順序を整理します。

STEP
優先度が 255 と表示される場合

ip lan1 addressで設定したアドレスと、VRRP コマンドで指定した仮想 IP アドレスが一致しています。前述の仕様に該当するため、アドレスを分ける設計に変更します。

STEP
両機とも Master になる場合

VRRP 広告が相互に届いていない状態です。

  • VRID が両機で一致しているか(LAN1 ID:の値)
  • 仮想 IP アドレスが両機で一致しているか
  • 認証設定が一致しているか(認証:の表示)
  • 対向機器のバージョンが VRRPv2 で揃っているか
  • マルチキャストアドレス 224.0.0.18 が中間スイッチで遮断されていないか
STEP
意図しない機器が Master になる場合
  • priority の設定値を確認します
  • 両機が既定値のままであれば、実 IP アドレスが大きいほうが Master になります
STEP
WAN 障害で切り替わらない場合
  • ip lan1 vrrp shutdown triggerが投入されているかを確認します
  • 経路監視や keepalive を使う構成では、ip routekeepaliveオプションとの紐づけを確認します
  • show ip routeで対象の経路が実際に消えているかを確認します
STEP
頻繁に切り替わる場合

advertise-intervalを延長すると安定するケースがあります。あわせて、keepalive の監視先までの回線品質を確認することをおすすめします。

経路の確認

シャットダウントリガで経路監視を使う構成では、経路の状態も確認します。

# show ip route

keepalive で監視している経路には、種別欄に静的経路であることと keepalive の識別子が表示されます。監視が失敗している場合、この経路がテーブルから消えます。

VRRP が切り替わらない場合、まず経路が消えているかを確認すると、監視側の問題か VRRP 側の問題かを切り分けられます。

まとめ

YAMAHA RTX の VRRP は、1 つのコマンドにパラメーターを並べる独自の構文体系を持ちます。仮想 IP アドレスに自身のインターフェースアドレスを指定すると priority と preempt が無視される仕様は、RFC の IP アドレス所有者の規定に忠実な動作です。上位回線の監視はシャットダウントリガで構成し、インターフェース、経路、ping 監視の 3 通りから要件に応じて選択することになります。

  • RTX の VRRP は 1 コマンドにパラメーターを並べる独自構文
  • 仮想 IP と実 IP が同一だと priority と preempt が無視され 255 になる
  • シャットダウントリガはインターフェース・経路・ping 監視の 3 通り
  • keepalive と経路監視の組み合わせが最も検知範囲が広い
  • RTX は VRRP 停止型で、priority 減算による段階制御はできない
  • priority 255 の状態ではシャットダウントリガが機能しない
  • show status vrrp は日本語表示で、優先度を 2 行で見比べる

以上、最後までお読みいただきありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

関西を拠点に活動する、現役インフラエンジニア。経験20年超。

大手通信キャリアにて、中〜大規模インフラ(ネットワーク・サーバ・クラウド・セキュリティ)の設計・構築およびプロジェクトマネジメントに従事。現場で直面した技術課題への対処や、最新の脆弱性情報への実務対応を、一次情報として発信しています。

保有資格
CCIE Lifetime Emeritus(取得から20年以上)/ VCAP-DCA / Azure Solutions Architect Expert

▶ 運営者プロフィール(詳細)

目次