FHRPとは ― HSRP・VRRPによるデフォルトゲートウェイの冗長化
FHRPとは、
FHRPとは、デフォルトゲートウェイを複数のルータで冗長化する規格の総称
FHRPとは、デフォルトゲートウェイを複数のルータで冗長化するための規格の総称です。PCに設定できるデフォルトゲートウェイは1つだけなので、そのルータが止まると、PCは外向けの通信を預ける相手を失います。
FHRPは、First Hop Redundancy Protocolの略です。HSRP・VRRP・GLBPが、この総称に含まれます。デフォルトゲートウェイそのものの働きは、デフォルトゲートウェイの記事で説明しています。
1台の故障で通信が止まる箇所を、単一障害点と呼びます。ロードバランサの記事にも出てくる言葉です。デフォルトゲートウェイも、1台だけで運用すると単一障害点になります。
FHRPは、複数のルータを1台の仮想的なルータに見せることで、この単一障害点を解消します。PCからは1台のルータに見えたまま、裏側の実際のルータが入れ替わります。故障に備えて装置を複数並べる考え方は、フォールトトレラントとフェールセーフの記事で、ほかの設計と比べています。
仮想IPアドレスと仮想MACアドレスで、1台のルータに見せる
FHRPを構成する各ルータには、もともとの実IPアドレスと実MACアドレスがあります。それに加えて、グループの全ルータが同じ仮想IPアドレスと仮想MACアドレスを持ちます。仮想IPアドレスは、管理者が設定します。仮想MACアドレスは、グループの番号から自動で決まります。
PCのデフォルトゲートウェイには、この仮想IPアドレスだけを設定します。実際のルータのIPアドレスを、PCが知る必要はありません。
PCが仮想IPアドレス宛にARPで問い合わせると、答えが返ってくるのは仮想MACアドレスです。ARPの仕組みは、ARPの記事にあります。このとき応答するのは、グループの中でいま転送を担当しているルータだけです。
仮想MACアドレスの形式は、プロトコルごとに決まっています。HSRPのバージョン1は、0000.0c07.acに続けて、グループ番号を16進数2桁で表します。グループ1なら0000.0c07.ac01です。HSRPのバージョン2では、グループ番号を0〜4095まで使えます。そのため形式が変わり、0000.0c9f.fに続けて、グループ番号を16進数3桁で表します。グループ1なら0000.0c9f.f001です。
VRRPでは、グループを表す番号をVRIDと呼びます。仮想MACアドレスは、00:00:5e:00:01に続けて、VRIDを16進数で表します。VRIDが1なら00:00:5e:00:01:01です(IPv4の場合。RFC 9568 7.3節)。
図のR1とR2は、どちらも実IP・実MACを持つ別々のルータです。両方に同じ仮想IP・仮想MACが設定されていて、いまはR1だけがその仮想MACアドレスで応答しています。このように応答している1台を、アクティブと呼びます。
アクティブ/スタンバイ(HSRP)、アクティブ/バックアップ(VRRP)で役割を分ける
FHRPのグループでは、1台だけが転送を担当し、残りは待機します。HSRPでは、転送を担当する側をアクティブ、待機する側をスタンバイと呼びます。
VRRPでも、呼び方はほぼ同じです。転送を担当する側はアクティブ、待機する側はバックアップと呼びます。
待機している側は、アクティブが生きているかを、一定間隔で届く合図で確かめています。この合図を、HSRPではHello、VRRPではAdvertisementと呼びます。HSRPでは、アクティブとスタンバイの両方がHelloを送ります。VRRPでは、Advertisementを送るのはアクティブだけです。アクティブからの合図が一定時間届かないと、待機している側はアクティブが止まったと判断します。そして、自分がアクティブに切り替わります。
HSRPの既定では、Helloを3秒ごとに送り、10秒届かないと切り替わります(Cisco IOSのコマンドリファレンスによる既定値)。VRRPの既定では、Advertisementを1秒ごとに送ります。異常と判断するまでの時間は優先度によって変わり、優先度が既定の100なら約3.6秒です(RFC 9568 6.1節の計算式による)。
優先度の数値が高いほうがアクティブになる
どのルータがアクティブになるかは、優先度という数値で決めます。数値が高いルータが、アクティブに選ばれます。
HSRPの優先度は1〜255で、既定値は100です。VRRPの優先度は1〜254で、既定値はやはり100です(255は、仮想IPを自分の実IPとして持つ特別なルータ専用です)。優先度が同じ場合は、実IPアドレスの大きいほうがアクティブになります。この決め方は、HSRP・VRRPのどちらにもあります。ただし、これは複数のルータが同時にアクティブを決めるときの決め方です。すでにアクティブのルータがいるところへ後から加わったルータが入れ替わるかどうかは、次のプリエンプトで決まります。
アクティブが止まると、スタンバイ(バックアップ)側が代わってアクティブになります。止まっていたルータが復旧したとき、優先度の高いほうが自動でアクティブに戻るかどうかを決める設定がプリエンプトです。
プリエンプトの既定値は、HSRPとVRRPで違います。HSRPは既定でプリエンプトが無効です。優先度の高いルータが後から復旧しても、自動ではアクティブに戻りません。後から起動したルータも同じで、優先度が高くても、いまのアクティブから役割を奪いません。VRRPは既定でプリエンプトが有効です(RFC 9568 6.1節)。優先度の高いルータが復旧すると、自動的にアクティブを取り戻します。
動かして確かめる:優先度を変えると、アクティブはどう変わるか
登場するのは、実IP 192.168.10.2 のR1と、実IP 192.168.10.3 のR2です。2台の優先度を変えて、どちらがアクティブになるかを確かめます。3つの組み合わせは、どれも2台を同時に動かし始めて、アクティブを決める場合です。
正常時と故障時で、アクティブが切り替わる流れ
R1の優先度を150、R2の優先度を100に設定した例で、正常時と故障時を比べます。優先度の高いR1が、はじめからアクティブです。図の時間は、HSRPの既定値です。
正常時は、R1が仮想IP・仮想MAC宛の通信をすべて転送します。R2は、R1から届くHelloやAdvertisementで、R1が生きていることを確かめています。
R1が故障すると、このやり取りが止まります。R2は、一定時間合図が届かないことを検知すると、自分がアクティブに切り替わります。そして、仮想IP・仮想MACを引き継いで転送を始めます。PCは設定を変えていないので、何が起きたかを意識せずに通信を続けられます。
R1が復旧した後の動きは、プリエンプトの設定によって変わります。VRRPの既定(プリエンプト有効)なら、優先度150のR1が自動でアクティブを取り戻します。HSRPの既定(プリエンプト無効)なら、R1が復旧してもR2がアクティブのままです。
HSRPとVRRPの違い
ここまでの違いをまとめます。規格の策定元が違うだけでなく、送信間隔やプリエンプトの既定値も違います。
| 項目 | HSRP | VRRP |
|---|---|---|
| 規格 | Cisco独自 | IETFの標準規格(現在はRFC 9568) |
| ルータの役割名 | アクティブ・スタンバイ | アクティブ・バックアップ |
| IPv4マルチキャストアドレス | 224.0.0.2(v1)/224.0.0.102(v2) | 224.0.0.18 |
| 送受信 | UDP 1985番 | IPのプロトコル番号112 |
| 送信する側 | アクティブとスタンバイの両方 | アクティブだけ |
| 既定の送信間隔 | 3秒ごと(保持時間10秒) | 1秒ごと(優先度100なら約3.6秒で異常と判断) |
| プリエンプトの既定 | 無効 | 有効 |
| 仮想MACアドレスの形式 | 0000.0c07.ac + グループ番号(v1) 0000.0c9f.f + グループ番号(v2) | 00:00:5e:00:01 + VRID(IPv4) |
表の送信間隔は既定値です。実際の運用では、どちらの規格でも送信間隔を変更できます。
GLBP:複数台のルータが同時に転送する方式
GLBPもCisco独自の規格で、HSRPと同じく複数のルータでデフォルトゲートウェイを冗長化します。HSRP・VRRPとの違いは、グループの1台だけが転送するのではなく、複数台が同時に転送を分担する点です。
グループの中で選ばれた1台をAVGと呼びます。AVGは、グループの各メンバーに別々の仮想MACアドレスを割り当てます。仮想MACアドレスを割り当てられたルータをAVFと呼びます。AVFは、自分に割り当てられた仮想MACアドレス宛の通信だけを転送します(Cisco「Configuring GLBP」設定ガイドによる)。
既定では、PCがARPで仮想IPアドレスに問い合わせるたびに、AVGは答える仮想MACアドレスを順番に変えます。その結果、PCごとに転送を担当するルータが分かれ、負荷が分散されます。HSRP・VRRPの1つのグループの中では、待機している側のルータは、障害が起きるまで転送に使われません。
練習問題(全5問)
正解:複数の
FHRPは、
正解:PCは
PCの
正解:HSRPは
HSRPは
正解:優先度が
2台が
正解:HSRPは
HSRPは
選んでから「採点する」を押すと、解説つきで答え合わせができます。
関連記事
おすすめの本 PR
ネットワークを初めて学ぶ人向けの入門書です。
![『[改訂新版]3分間ネットワーク基礎講座』の表紙](https://m.media-amazon.com/images/P/4774143731.09.MZZZZZZZ.jpg)
