助け合いフォーラム
この問題はプレミアムコンテンツです。
ルーティングループ発生までの流れについて
この問題において、ルーティングループが発生するまでの流れがいまひとつ理解できず、教えていただきたいです…
私が現時点で理解している点は以下になるのですが、この後の流れを教えていただきたいです。
また、私の理解に間違いがあればご教示いただけますと幸いです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーー
①RCではRIP⇔OSPF,RIP⇔EIGRP間で経路情報を再配送する設定がされていることから、RCは192.168.51.0/24の経路情報をRA,RBそれぞれに伝える。
(このとき、RA,RBが受け取るAD値は120)
②RBは、受け取った192.168.1.0/24の経路情報をRAに伝える。
(このとき、RA,RBが受け取るAD値は110)
…
ーーーーーーーーーーーーーーーーーーーーーーーーーーー
初歩的な質問ですみません…
お手数ですが、何卒宜しくお願い致します。
まず、経路学習のAD値についてのご認識が間違っていると思いますので、訂正させて頂きますね。
①RCではRIP⇔OSPF,RIP⇔EIGRP間で経路情報を再配送する設定がされていることから、RCは192.168.51.0/24の経路情報をRA,RBそれぞれに伝える。
(このとき、RA,RBが受け取るAD値は120)
・RC-RA間ではEIGRPで経路学習が行われるため、RAがRCから学習する192.168.51.0/24のAD値は170です。
(192.168.51.0/24の経路情報は、RIPエリアの情報なので外部EIGRPの170)
・RC-RB間ではOSPFで経路学習が行われるため、RBがRCから学習する192.168.51.0/24のAD値は110です。
(OSPFのAD値は外部、内部に関わらず110)
②RBは、受け取った192.168.1.0/24の経路情報をRAに伝える。
(このとき、RA,RBが受け取るAD値は110)
・RB-RA間ではEIGRPで経路学習が行われるため、RAが受け取る経路情報のAD値は170です。
次にこの問題の構成における経路学習について説明します。
解説の3つ目の図の水色の矢印が示しているような順で経路学習が行われて、ルーティングループが発生してしまいます。
ループが発生する経路学習の流れは以下のような感じです。
①RCが「192.168.51.0/24」の経路情報をRBへOSPFで送信する(RBが学習する情報のAD値はOSPFの110)
②RBが①で学習した「192.168.51.0/24」の経路情報をRAのEIGRPへ再配送する(RAが学習する情報のAD値は外部EIGRPの170)
③RAが②で学習した「192.168.51.0/24」の経路情報をRCのEIGRPへ送信する(RCが学習する情報のAD値は95)
※「distance eigrp 90 95」によってRCでは外部EIGRPで学習する経路情報のAD値を95にするよう設定しているため、RCが受け取る情報のAD値は95となります。
また、「distance」コマンドによるAD値の変更はローカルのみで有効なので、他のルータにこれが通知されることはありません。
RCがRDからRIPで受け取る情報(転送先がRDとなる経路)のAD値は120ですが、③でEIGRPで学習した情報(転送先がRAとなる経路)のAD値95の方が小さくなります。
このことから、RCは「192.168.51.0」宛のパケットをRAに転送してしまうので、ループが発生します。
この問題と同じような構成を作ってみたので参考までに、各ルータの「show ip route 192.168.51.0」の出力結果を載せておきます。
①RBは「192.168.51.0」の経路情報をRCからOSPFで学習
RB#sh ip route 192.168.51.0
Routing entry for 192.168.51.0/24
Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 1 ←OSPFで学習していて、AD値は110であることがわかります
Redistributing via eigrp 1
Advertised by eigrp 1 metric 1000000 1 255 1 1500
Last update from 172.16.1.3 on GigabitEthernet0/2, 00:20:37 ago
Routing Descriptor Blocks:
* 172.16.1.3, from 192.168.1.3, 00:20:37 ago, via GigabitEthernet0/2 ←ネクストホップはRCの172.16.1.3でRC(192.168.1.3)からこの経路を学習していることがわかります
Route metric is 20, traffic share count is 1
②RAは「192.168.51.0」の経路情報をRBからEIGRPで学習
RA#sh ip route 192.168.51.0
Routing entry for 192.168.51.0/24
Known via "eigrp 1", distance 170, metric 3072, type external ←EIGRPで学習していて、AD値は170であることがわかります
Redistributing via eigrp 1
Last update from 10.1.1.2 on GigabitEthernet0/0, 00:21:42 ago
Routing Descriptor Blocks:
* 10.1.1.2, from 10.1.1.2, 00:21:42 ago, via GigabitEthernet0/0 ←ネクストホップはRBの10.1.1.2でRB(10.1.1.2)からこの経路を学習していることがわかります
Route metric is 3072, traffic share count is 1
Total delay is 20 microseconds, minimum bandwidth is 1000000 Kbit
Reliability 255/255, minimum MTU 1500 bytes
Loading 1/255, Hops 1
③RCは「192.168.51.0」の経路情報をRAからEIGRPで学習
RC#sh ip route 192.168.51.0
Routing entry for 192.168.51.0/24
Known via "eigrp 1", distance 95, metric 3328, type external ←EIGRPで学習していて、AD値は95であることがわかります
Redistributing via eigrp 1, rip, ospf 1
Adve ospf 1 subnets
Last update from 10.1.2.1 on GigabitEthernet0/1, 00:20:47 ago
Routing Descriptor Blocks:
* 10.1.2.1, from 10.1.2.1, 00:20:47 ago, via GigabitEthernet0/1 ←ネクストホップはRAの10.1.2.1でRA(10.1.2.1)からこの経路を学習していることがわかります
Route metric is 3328, traffic share count is 1
Total delay is 30 microseconds, minimum bandwidth is 1000000 Kbit
Reliability 255/255, minimum MTU 1500 bytes
Loading 1/255, Hops 2rtised by rip metric 1
再配送とAD値について詳しく解説してくれているサイトがありましたので、良かったら参考に見てみてください。
https://hirotanoblog.com/cisco-administrative-distance/3068/
コメント
ご回答ありがとうございます!
丁寧にご説明いただき、理解できました!
AD値についても認識が違っていたようなので、改めて勉強しなおします!
ルータの出力結果や、参考サイトも勉強になります!
ただ、ご回答を拝読させていただいて、新しい疑問が生まれましたので、よろしければご教示いただきたいです。。
次にこの問題の構成における経路学習について説明します。
解説の3つ目の図の水色の矢印が示しているような順で経路学習が行われて、ルーティングループが発生してしまいます。
ループが発生する経路学習の流れは以下のような感じです。
このご説明について、経路学習については必ずRC→RB→RAの順になるのでしょうか?
RCではRIP⇔EIGRPでの再配送の設定がされているので、RC→RA→RBもあり得ると考えているのですが認識合いますでしょうか…?
(もしこれがあり得た場合でも、やはりルーティングループは生じますよね…?)
頓珍漢なことを言っていたらすみません。。
よろしくお願い致します。
コメント
ご回答いただき、ありがとうございます!
この説明は、この問題の設定において "ループが発生する原因となっている" 経路学習の順について説明しています。
(各ルータは各方面から経路情報を受信しており、この順だけで経路が学習されているわけではありません)
上記ご説明いただいた認識が足りていませんでした。
勉強不足を痛感しました。。
もっと精進いたします。。
コメント
この投稿に対して返信しませんか?
t tym78
2023/09/28 12:12
>このご説明について、経路学習については必ずRC→RB→RAの順になるのでしょうか? >RCではRIP⇔EIGRPでの再配送の設定がされているので、RC→RA→RBもあり得ると考えているのですが認識合いますでしょうか…? >(もしこれがあり得た場合でも、やはりルーティングループは生じますよね…?) この説明は、この問題の設定において "ループが発生する原因となっている" 経路学習の順について説明しています。 (各ルータは各方面から経路情報を受信しており、この順だけで経路が学習されているわけではありません) 異なるルーティングプロトコルで宛先が同じ経路情報を学習した場合、最適なルートのみをルーティングテーブルに載せます。 (経路情報を学習したからといって必ずルーティングテーブルに載るとは限りません) どのルートを載せるか決めるためには以下の順で経路情報が比較されます。 ①ロンゲストマッチ ②AD値 ③メトリック ルーティングループが発生するかしないかは "各ルータがどのように経路を学習するか"、そしてその結果、"ルーティングテーブルにどのルートが載るか" という点がポイントになります。 逆にいえば複数箇所で再配送が設定されていても最終的に各ルータのルーティングテーブルに載っている経路に問題がなければルーティングループは発生しないということです。 ループ状の構成では、再配送の方向やAD値など諸条件の設定を変えると逆回りでループが発生することももちろんあり得ます。 ただ、この問題の設定ではRCに「distance eigrp 90 95」があるため、EIGRPで学習した経路のAD値が他のものより低いから、EIGRPで学習した間違った経路情報がルーティングテーブルに載ってしまった結果、この方向でルーティングループが発生しているという話です。 再配送の設定が複数箇所において設定されたり、AD値の変更などが行われたりすると経路学習や最適経路選択が複雑化します。 なので、これらの設定は慎重に行う必要があります。