◆ HSRPとは
HSRP(Hot Standby Router Protocol)とは、デフォルトゲートウェイを冗長化するためのシスコ独自の
プロトコルのことです。HSRPはデフォルトゲートウェイとなるL3デバイスにIPアドレスとMACアドレスを
共有させることができるので、PCなどの「デフォルトゲートウェイのパスを冗長化」させることができます。
HSRPを使用することで、物理的には2台あるルータが論理的(仮想的)には、1台のルータに見せられます。
下図で、R1とR2でHSRPを実装しています。ホストAのデフォルトゲートウェイのIPアドレスは、R1やR2の
物理IPアドレスではなく仮想IPアドレス(VIP)を指定する。ホストAからパケットを受信した仮想ルータは
物理的には「アクティブルータ」と呼ばれるルータ(下図ではR1)でパケット転送などの処理が行われます。
HSRP用語 |
解説 |
仮想IPアドレス |
アクティブルータで保持するIPアドレス。PCなどに設定するデフォルトゲートウェイのIPアドレス。 |
仮想MACアドレス |
アクティブルータで保持するMACアドレス。PCなどのARPテーブルにキャッシュされるMACアドレス。 |
仮想ルータ |
仮想IPアドレスと仮想MACアドレスを持つ仮想のルータ。アクティブルータとスタンバイルータで構成。 |
アクティブルータ |
仮想IP(仮想MAC)アドレスを宛先として転送されてきたトラフィックをルーティングするルータ。 |
スタンバイルータ |
アクティブルータがダウンした場合に仮想IPアドレス(仮想MACアドレス)の制御を引き継ぐルータ。 |
HSRPグループ |
HSRPに参加して仮想ルータをエミュレートするルータの集合。セグメントごとに1つグループを作成。 |
HSRPプライオリティ |
アクティブルータまたはスタンバイルータになるのかを決める値。高い値を持つルータがアクティブ。 |
Helloパケット |
HSRPを有効にしたルータ 間でHSRP情報をやり取りするマルチキャスト( 224.0.0.2 UDP:1985 ) |
◆ HSRPの実装例
下図ではR1とR2のルータで同じHSRPグループ「1」としており、HSRPプライオリティ値がR1のルータが
大きいことから「R1がアクティブルータ、R2がスタンバイルータ」となっています。下図で、PCが異なる
セグメントと通信する場合、デフォルトゲートウェイの172.16.1.254にパケットが送信されますが、その
ARP応答はアクティブルータが行うので、PCからのパケットはR1に送信されて、R1にて転送処理されます。
R1が障害でダウンした場合は、スタンバイルータのR2がHelloパケットを受信しなくなり holdtime が
切れた時にアクティブルータの役割が引き継がれます。HSRPの収束する間は、PCは一時的に通信不可
となりますが、HSRPの収束後は引き続きデフォルトゲートウェイがPCに提供され通信可能になります。
◆ HSRPの仮想MACアドレス
アクティブルータがARP応答する際に通知する「仮想MACアドレス」は以下のように構成されています。
デフォルトでは「0000.0c07.ac」までの値は常に同じであり、最後の1バイトはHSRPのグループ番号に
より値が変わります。
MACアドレスは16進数で表示されるのでHSRPグループ番号により、MACアドレスは以下となります。
・ HSRPグループが「1」の場合は、仮想MACアドレスは「0000.0c07.ac01」
・ HSRPグループが「5」の場合は、仮想MACアドレスは「0000.0c07.ac05」
・ HSRPグループが「10」の場合は、仮想MACアドレスは「0000.0c07.ac0a」
◆ HSRP version 1 と HSRP version 2
HSRPにはversion 1とversion 2があります。HSRPの有効化を行うとデフォルトではversion 1が有効化
されます。v1とv2の主な違いは以下の通りであり、HSRPグループを255以上作成したい場合には v2 を
使用します。一般的にCatalystスイッチではv1を使用して、Nexusスイッチではv2を使用することが多い。
比較項目 |
HSRP version 1 |
HSRP version 2 |
HSRPグループ番号 |
0 〜 255 |
0 〜 4095 |
仮想MACアドレス |
0000.0c07.acXX |
0000.0c9f.fXXX |
Helloの宛先アドレス |
224.0.0.2 |
224.0.0.102 |
◆ HSRPが動作するルータ( L3スイッチ )のステータス遷移
HSRPが設定されているルータ( L3スイッチ )では、以下の5つのステータス遷移が行われます。
HSRPのステータス |
説明 |
イニシャル(Init) |
初期状態。HSRPの設定直後や、インターフェースがリンクダウン時に見られるステータス。 |
リスニング(Listen) |
他のHSRPルータからのHelloパケットをリスンしている状態。Holdtimeの間はリスンする。 |
スピーク(Speak) |
HSRPのHelloパケットを送信して、アクティブルータまたはスタンバイルータの選定に参加。 |
スタンバイ(Standby) |
次のアクティブルータとなる待機状態のステータス。定期的にHelloパケットを送信。 |
アクティブ(Active) |
仮想IPと仮想MACアドレス宛のパケット転送処理を行うステータス。定期的にHelloパケットを送信。 |
|