Tips

HSRP実行時のMACアドレス切り替え

以前生徒さんよりこんな質問を頂きました。
「HSRPの設定をするとActiveのルータに障害が発生した際に、Standbyのルータに処理が引き継がれるのはわかるのですが、
その下にぶら下がっているスイッチはどうやって切り替わりを認識するのですか?」
「MACアドレステーブルにはもともとActiveルータが接続されているポートとMACアドレスが
登録されていると思うのでエージングタイムを短くしたりするんでしょうか?」
といったものでした。

HSRPやVRRPなどのFHRPを使用してゲートウェイを冗長化を行うことはよくあります。
ホスト端末がインターネットなどのリモートネットワークに接続するときには、その出入り口にあたるルータを通信が通過していきます。
そのため、このルータが故障するとホスト端末は他のネットワークへの通信ができなくなり、業務に必要なサーバなどにアクセスできないといった事態となりますね。こういった状況にならないように出入り口となるルータを複数台用意し、
メインで活動していたルータがダウンするとスタンバイしていた他のルータが役割を引き継ぐことで
通信ができないという状況を回避するための技術がFHRPです。
HSRPはその中の一つです。

HSRPの設定を行うことによって仮想IPと仮想MACアドレスを、ネットワークセグメントに存在する複数のインターフェースで
共有できます。そのためホスト端末からは1台のルータとして認識されるようになります。
Activeルータがパケットの転送を行い、そのルータに障害が起きると、Standbyルータに処理が引き継がれることで
ホストからリモートネットワークへの接続性が保たれるわけです。


ルータの手前にあるスイッチのMACアドレスには、仮想MACアドレスとActiveルータが接続されているポートが記録されています。
Activeルータがダウンしたとき、もしくは役割が切り替わったときには、新しくActiveになったルータがつながっているポートが
わらないとActiveではなくなったルータの方にフレームが転送されることになってしまいます。
そうならないようにするために、新しくActiveになったルータはこの時「GratuitousARP」というものを送信します。
直訳すると「無料の」「無償の」といった意味となるようです。

このARPはDHCPなどでも自身のアドレスの確認のために使用されてもので、これを受け取るとスイッチは既存のMACアドレスを上書きします。このときのARPはターゲットのIPと送信元のIPが同一とし、GratuitousARPであることをわからせます。
これにより新しいルータのポートを認識させるわけです。

上記の図で検証してみました。初期状態のMACアドレステーブルは次のようになっています。

実際に切り替わりが行われた際のパケットキャプチャの結果です。Stanbyルータの方から「Activeになるよ」という
coupメッセージなどが送信された後にARPが飛んでます。



このARPにより切り替わった後のMACアドレステーブルです。対応インターフェースが変更されているのがわかると思います。


これにより、図の構成の場合0000.0c07.ac01宛のフレームは新しくFa0/24の方向に転送されることとなります。

いろいろ考えて仕様が決められているんですね。

Recent News

Recent Tips

Tag Search