EIGRPルータが CRフラグ(※)を立てた UPDATEパケットで経路広告を行う為に、ネイバルータが経路を学習できない事象が報告されています。
事象発生に至るまでのプロセス
広告元となる EIGRPルータは問題の UPDATEパケットを送信する直前に広告先ネットワーク上の全ネイバルータをリストした Sequence TLV を送信し、その後に CRフラグを立てた UPDATEパケットを送信します。
この場合、ネイバルータは CRモードに入らず UPDATEパケットを破棄する為、経路を学習することができません。
不具合の概要
広告元となる EIGRPルータの動作( 全ネイバをリストした Sequence TLV と CRフラグを立てた UPDATE パケットの送信 )が不具合にあたります。
本来、Sequence TLV や CRフラグを立てた EIGRPパケットの送信は、ネットワーク上の一部のネイバから受信確認(ACK)を受信できなかったときに行われますが、本不具合が発生すると、オリジナルのUPDATEパケットを送信する段階でそれらのパケットが送信されます。
発生条件
本事象はスタブルータと非スタブルータをネイバとして持つ EIGRPルータが複数のネイバが存在するインタフェース上で経路広告を行うときに発生する可能性があります。
※CR(Conditional Receive)モードについて
CRモードは同一サブネット上で3台以上の EIGRPルータがネイバを確立している環境において、一部のネイバのみに Reliable Packet(UPDATE, Query, REPLYの何れか)を再送する為のメカニズムです。
以下、ルータ A, B, C がフルメッシュに EIGRPネイバを確立しているネットワークを例に CRモードの動作を説明します。
1) A が UPDATEパケットを送信。
2) A は ACKパケットを B から受信、C からは未受信。
3) A の再送タイマが満了。
4) A は Sequence TLV付きの Helloパケットを送信。Sequence TLVには
再送 UPDATEパケットを無視させたい B の IPアドレスがリストされている。
5) B, C が Hello を受信。C のみ CRモードになる。
6) A は CRフラグを立てた UPDATEパケットを送信。
7) B, C が UPDATEパケットを受信。C のみ UPDATEパケットの処理を行う。
|