■ スタンバイpreempt
さてHSRPの動作についてはわかったかね?
デフォルトゲートウェイの冗長化、仮想アドレス、HSRPメッセージ、ってところですね。
なんとも要約しすぎだが、まぁいいだろう。
つまり、仮想アドレスを持つ仮想ルータを設定し、各クライアントはそこをゲートウェイとする、というわけだな。
で、各ルータはアクティブルータが出すHelloにより、アクティブルータの生存を確認する、と。
うむ。
さて、まず今回の話の1つ目だが、そのアクティブルータとスタンバイルータの関係だ。
関係? アクティブが主系だから、アクティブが生きているうちはアクティブが。
アクティブがHelloタイマ以上Helloを送信しなかったら、スタンバイがアクティブに、でしたよね。
それは間違っていない。
では、スタンバイがアクティブになった後、旧アクティブがもう一度立ち上がってきたら?
ん? んんんん?
STPだと、旧ルートブリッジが復帰するんだけど……、HSRPはどうだろ?
HSRPではスタンバイになったアクティブルータは、旧アクティブが復帰してもスタンバイに戻らない。一度変更されたそのまま、ってことだな。
は〜。OSPFのDRがそんな感じでしたっけ。
これはこれで、「こういう設定だから」と納得してしまえば済む話なのだが。
問題はこういう場合だ。
[FigureSW20-01:旧アクティブルータの復帰問題]
悪いメトリックを使いつづける?
確かに、そうなる可能性はありますね。
もちろん、HSRPグループのルータの配置によってはこうはならないこともある。
では、こうなってしまった場合、どうする?
それは、もちろん旧アクティブルータにアクティブに戻ってもらうことですよね。
そうだ。
なので、ちゃんとそういうことができる設定がある。スタンバイpreemptだ。
[FigureSW20-02:スタンバイpreempt]
Coupめっせーじ? Resignめっせーじ?
そういえば、前回そんなのでてきましたっけ。
- Hello … 生存確認。送信元ルータがアクティブ/スタンバイである、もしくはなることができることを示す
- Coup … 送信元ルータがアクティブになりたいことを示す
- Resign … 送信元ルータがこれ以上アクティブでいられないことを示す
「アクティブになりたい」「アクティブでいられない」……なるほど。
そういうことだ。「preemptで使われる」と前回言ったな。
もともとスタンバイだったアクティブは、StandBy→Active→Sepak→StandByで、StandByに戻るのですか?
結果的にはそうなるな。アクティブの障害前はスタンバイだったルータだからな。
2番目にプライオリティが高いことは明白だからな。
……。あれ? でも、上の図だと、2台しかルータがないからいいですけど。
3台以上あった場合、スタンバイがアクティブになった時点で新しいスタンバイが選ばれるんじゃなかったんでしたっけ?
そうだ。
ん〜。で、もともとスタンバイだったルータがアクティブから降ろされると、またスタンバイに選出される?
うむ。スタンバイはアクティブを除き1番高いプライオリティを持つルータだ、アクティブのように降ろされないわけではない。新しいルータが追加されたら再選出される。
は〜。
[FigureSW20-03:StandByの選出]
3台の場合こうなるな。preemptを使わないならば、アクティブは障害がない限り固定。
スタンバイはどの状態でも選出作業がある、と覚えておけばいい。
なるほど、どんな状態であれアクティブを除いて一番プライオリティが高いルータがスタンバイ、ですね。
■ トランクリンクとHSRP
そういえば、話していなかったが、複数のスイッチでVLANになっていた場合でも、HSRPは使用できる。
例えば、HSRP適用前はこのような状態だとする。
[FigureSW20-04:複数スイッチでのVLAN]
ははぁ。VLAN10は左のαを、VLAN11は右のβを使うんですね。
負荷分散してるわけですか。
この状態でISLリンクがダウンすると、どちらかのVLAN全部、もしくはどちらかのスイッチにつながっている側が接続不能になってしまう。
[FigureSW20-05:トランクリンク時の障害]
あ〜、確かにこうなりますね。
ここでHSRPを使うと…。
[FigureSW20-06:トランクリンクとHSRP]
お〜。すごい。
とまぁ、このようになるわけだ。
VLANごとにHSRPグループを分けるんですね。
そういうことだな。HSRPグループで1つの仮想IPアドレスを持つから、別のサブネットの場合別の仮想IPアドレス、つまりHSRPグループにする、ということだな。
なるほどです。
■ インタフェーストラッキング
さて、今回最後の話はこんな場合だ。
[FigureSW20-07:リンク障害による問題]
んんんん?
障害が発生したのに切り替わってない?
そうなる。
え? だって、いままでは。
今までは、ルータの障害、だったからな。今回のように、一部のリンクのみという話ではない。
さらに、HSRPグループのサブネットではないインタフェースの障害だ。
HSRPグループのサブネットって?
仮想IPアドレスと同じネットワークアドレスを持つネットワークだ。
Helloはこのネットワーク内で伝達される。
で、そっち側は無事だから、Helloはいつも通り送られつづける、というわけなんですか?
そういうことだな。しかし、デフォルトゲートウェイとして動作するからには、他サブネットへのパスを持っていなければ意味がない。だが、LAN側が無事なため結局アクティブ側を使ってしまう、ということになってしまう。
う〜ん、自分からアクティブを降りればいいですよね。
なかなかいいアイデアだ。
それが、インタフェーストラッキングだ。
とらっきんぐ?
とらんきんぐ? あれ?
トランキングはVLANだな。今回は「トラッキング」だ。
インタフェースの状態を「追跡する」、いやちょっと意訳気味に訳すとインタフェースの状態を「監視する」といっていいだろう。
[FigureSW20-08:インタフェーストラッキング]
プライオリティを下げる?
そうだ。プライオリティを下げることにより、自身がアクティブにふさわしくないと言ってるわけだな。
でも、これってpreemptを使ってないと駄目ってことですか?
そうだ。preemptと併用する必要がある。
つまり、スタンバイルータになるルータにもpreemptを設定しておく必要がある、ということだ。
ん〜ん〜、さっきの説明だと、preemptはなるべくそのルータをデフォルトゲートウェイにするためにあるようでしたけど。
そうだな。さきほどのメトリックの問題のように、そのルータが正常な間はアクティブにする、という場合に使う。
さらに、そのアクティブルータが他のインタフェースをトラッキングしてる場合、スタンバイもpreemptにする必要がある、というわけだ。
は〜。
とりあえず、トラッキングとpreemptはセット、ってことですね。
まぁ、そう覚えておくのが妥当だろう。
また、トラッキングをしているアクティブルータのトラッキング対象インタフェースが復旧した場合、プライオリティは元に戻る。
元に戻る? 元に戻るとどうなるんです?
そのルータが、preemptを使っているならば、またアクティブに戻るわけだな。
トラッキングとはインタフェースの状態に合わせてプライオリティを変化させる仕組み、というわけだ。
ははぁ、上手く考えられてますねぇ。
さて、HSRPはとりあえずコレで終了だ。
次回からはまた別の話をしよう。
はい。
というわけで、また次回。
いぇっさ〜。
30分間ネットワーキングでした〜♪
- インタフェーストラッキング
-
[Interface Tracking]
Trackは「足跡を追う」「追跡する」。
- ハイパーネット君の今日のポイント
-
- 通常、アクティブになったルータは障害が発生しない限りそのままアクティブである。
- preemptを使うと、そのルータが最もプライオリティが高い場合、必ずアクティブになる。
- トランクリンクを使用して、VLANでもHSRPを動作させることができる。
- トラッキングを使用すると、特定のインタフェースのダウン時に冗長化することができる。
- トラッキング対象インタフェースがダウンするとプライオリティが下がる。
- スタンバイ側でpreemptを使用している必要がある。