【Cisco】Administrative Distanceと動作確認

 同じルーティングプロトコルから複数経路で、同一ルートを受信した場合、使用しているルーティングプロトコルのメトリックの仕様(OSPFならコスト、RIPならホップ数など)に基づき、最適な経路を選択します。

 では、OSPFとRIPなど、異なる複数のルーティングプロトコルを使用している環境で、同じルート情報を受信した場合、最適な経路はどのように決定すればよいでしょうか。OSPFとRIPではメトリックが異なるため、それ自体で比較はできません。

 ここで使用されるのが、アドミニストレーティブディスタンス(Administrative Distance:AD)です。

 ADでは、ルーティングプロトコルの優先度が定義されており、値が小さい方が優先的にルーティングテーブルにインストールされます。

 主なルーティングプロトコルの AD 値は以下の通りです。

プロトコル       AD値       
Connected0
Static1
EIGRP 集約5
eBGP20
EIGRP 内部90
OSPF110
IS-IS115
RIP120
EIGRP 外部170
iBGP200

 例えば、同じルート情報をOSPFとRIPで学習した場合、OSPFは110、 RIPは120のため、OSPFの経路が優先され、ルーティングテーブルにインストールされます。

 connectedの経路はAD=0で最優先となります。ルータに直結しているので、最も優先されます。

 以下の構成を使って、順番にADの動作を確認していきます。

スポンサーリンク

iBGP(AD値=200)

 R3とR5を内部BGPでピアリングし、R3のLoopback23(23.23.23.23/32)をR5へ広告します。

R3(config)#router bgp 35
R3(config-router)#neighbor 192.168.35.5 remote-as 35
R3(config-router)#network 23.23.23.23 mask 255.255.255.255
R5(config)#router bgp 35
R5(config-router)#neighbor 192.168.35.3 remote-as 35

 R5のルーティングテーブルを見ると、23.23.23.23をBGP経路として、学習しています。 リストの先頭にB と表示されているのはBGPの意味で、上部のヘルプの記載でも確認できます。 [200/0]の先頭の数字がAD値です。内部BGPですので、AD値は200です。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/32 is subnetted, 1 subnets
B        23.23.23.23 [200/0] via 192.168.35.3, 00:00:50
〜 以降省略

 ここから少しずつAD値の小さい23.23.23.23/32へのルートを追加していきます。

スポンサーリンク

EIGRP外部(AD値=170) vs iBGP(AD値=200)

 R2とR5をEIGRPを有効にし、R2のLoopback23(23.23.23.23/32)をEIGRPへ再配信することで、EIGRP外部経路としてR5へ広告します。

R2(config)# router eigrp 25 
R2(config-router)#  network 192.168.25.0 
R2(config-router)#  redistribute connected 
R5(config)# router eigrp 25 
R5(config-router)#  network 192.168.25.0 

 R5のルーティングテーブルを見ると、23.23.23.23/32 がEIGRP外部(D EX)として、学習しています。

EIGRP外部のAD値は170、内部BGP経路のAD値200であり、同一ルート(23.23.23.23/32)に 関しては、EIGRP外部の方が優先されるため、内部BGP経路はルーティングテーブルから外されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/32 is subnetted, 1 subnets
D EX     23.23.23.23 
           [170/156160] via 192.168.25.2, 00:02:04, FastEthernet0/0.25
〜 以降省略
スポンサーリンク

RIP(AD値=120) vs EIGRP外部(AD値=170)

 R3とR5でRIPを有効にし、R3のLoopback23(23.23.23.23/32)をR5へ広告します。

R3(config)#router rip
R3(config-router)# version 2
R3(config-router)# network 23.0.0.0
R3(config-router)# network 192.168.35.0
R3(config-router)# no auto-summary
R5(config)#router rip 
R5(config-router)# version 2
R5(config-router)# network 192.168.35.0

R5のルーティングテーブルを見ると、23.23.23.23/32 をRIPとして学習しています。

RIPのAD値が120であり、EIGRP外部のAD値170より小さいため、RIPが優先されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/32 is subnetted, 1 subnets
R        23.23.23.23 [120/1] via 192.168.35.3, 00:00:28, FastEthernet0/0.35
〜 以降省略
スポンサーリンク

IS-IS(AD値=115) vs RIP(AD値=120)

 R2とR5をIS-ISを有効にし、R2のLoopback23(23.23.23.23/32)をR5へ広告します。

R2(config)# router isis
R2(config-router)#  net 49.0025.0000.0000.0002.00
R2(config-router)#  is-type level-1
R2(config-router)# exit
R2(config)# interface Loopback23
R2(config-if)#  ip router isis
R2(config-if)# exit
R2(config)# interface FastEthernet0/0.25
R2(config-subif)#  ip router isis 
R5(config)# router isis
R5(config-router)#  net 49.0025.0000.0000.0005.00
R5(config-router)#  is-type level-1
R5(config-router)# exit
R5(config)# interface FastEthernet0/0.25
R5(config-subif)#  ip router isis

 R5のルーティングテーブルを見ると、23.23.23.23/32 をIS-ISとして学習しています。

IS-ISのAD値は115であり、RIPのAD値120より小さいため、IS-ISが優先されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/32 is subnetted, 1 subnets
i L1     23.23.23.23 [115/20] via 192.168.25.2, 00:11:52, FastEthernet0/0.25
〜 以降省略
スポンサーリンク

OSPF(AD値=110) vs IS-IS(AD値=115)

 R3とR5でOSPFを有効にし、R3のLoopback23(23.23.23.23/32)をR5へ広告します。

R3(config)# router ospf 1 
R3(config-router)# network 192.168.35.0 0.0.0.255 area 0 
R3(config-router)# network 23.23.23.23 0.0.0.0 area 0 
R5(config)# router ospf 1 
R5(config-router)# network 192.168.35.0 0.0.0.255 area 0 

R5のルーティングテーブルを見ると、23.23.23.23/32 をOSPFとして学習しています。

OSPFのAD値が110であり、IS-ISのAD値115より小さいため、OSPFが優先されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/32 is subnetted, 1 subnets
O        23.23.23.23 [110/2] via 192.168.35.3, 00:00:30, FastEthernet0/0.35
〜 以降省略
スポンサーリンク

EIGRP(AD値=90) vs OSPF(AD値=110)

 R2とR5をEIGRPを有効にし、R2のLoopback23(23.23.23.23/32)をR5へ広告します。

 外部EIGRPの設定より、再配信(redistribute)の設定を削除し、networkコマンドで、23.23.23.23/32のインタフェースでEIGRPを有効にします。

R2(config)# router eigrp 25
R2(config-router)# no redistribute connected 
R2(config-router)# network 23.23.23.23

 R5のルーティングテーブルを見ると、23.23.23.23/32 をEIGRPとして学習しています。

EIGRPのAD値は90であり、OSPFのAD値110より小さいため、EIGRPが優先されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/32 is subnetted, 1 subnets
D        23.23.23.23 
           [90/156160] via 192.168.25.2, 00:00:24, FastEthernet0/0.25
〜 以降省略
スポンサーリンク

eBGP(AD値=20) vs EIGRP(AD値=90) 

 R3とR5を外部BGPでピアリングし、R3のLoopback23(23.23.23.23/32)をR5へ広告します。

 内部BGPの設定を削除し、外部BGPの設定を追加します。

R3(config)# no router bgp 35 
R3(config)# router bgp 3
R3(config-router)# neighbor 192.168.35.5 remote-as 5
R3(config-router)# network 23.23.23.23 mask 255.255.255.255
R5(config)# no router bgp 35
R5(config)# router bgp 5
R5(config-router)# neighbor 192.168.35.3 remote-as 3

R5のルーティングテーブルを見ると、23.23.23.23/32 をBGPとして学習しています。

外部BGPのAD値は20であり、EIGRPのAD値90より小さいため、外部BGPが優先されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/32 is subnetted, 1 subnets
B        23.23.23.23 [20/0] via 192.168.35.3, 00:00:15
〜 以降省略
スポンサーリンク

EIGRP集約(AD値=5)

 今までのようにルータ間でのAD比較ではなく、ここではR5単体で動作を確認します。 R5で、23.23.23.0/24のEIGRPの集約ルートを作成します

R5(config)# interface FastEthernet0/0.25
R5(config-subif)# ip summary-address eigrp 25 23.23.23.0 255.255.255.0

 R5のルーティングテーブルを見ると、23.23.23.0/24 をEIGRPのNullルートが生成されています。 Nullルートは集約ルートを生成する際に自動で作成されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
D        23.23.23.0/24 is a summary, 00:02:24, Null0
B        23.23.23.23/32 [20/0] via 192.168.35.3, 00:01:22
〜 以降省略

 このNullルートのAD値はルートを指定することで確認できます。

R5# show ip route 23.23.23.0
Routing entry for 23.23.23.0/24
  Known via "eigrp 25", distance 5, metric 156160, type internal
  Redistributing via eigrp 25
  Routing Descriptor Blocks:
  * directly connected, via Null0
      Route metric is 156160, traffic share count is 1
      Total delay is 5100 microseconds, minimum bandwidth is 100000 Kbit
      Reliability 255/255, minimum MTU 1500 bytes
      Loading 1/255, Hops 0
スポンサーリンク

Static(AD値=1) vs  EIGRP集約(AD値=5) 

 最後に、23.23.23.0/24へのNullルートをスタティックに設定します。

R5(config)# ip route 23.23.23.0 255.255.255.0 null 0

 R5のルーティングテーブルを見ると、23.23.23.0/24のNullルートはスタティックとして登録されています。

スタティックルートのAD値は1であり、EIGRP集約のNullルートのAD値5より小さいため、スタティックルートが優先されます。

R5# show ip route 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       + - replicated route, % - next hop override

Gateway of last resort is not set

      23.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
S        23.23.23.0/24 is directly connected, Null0
B        23.23.23.23/32 [20/0] via 192.168.35.3, 00:03:58
〜 以降省略

 NullルートのAD値は1であることが確認できます。

R5# show ip route 23.23.23.0
Routing entry for 23.23.23.0/24
  Known via "static", distance 1, metric 0 (connected)
  Routing Descriptor Blocks:
  * directly connected, via Null0
      Route metric is 0, traffic share count is 1

コメント