OSPFで等コストのパスを異なるネイバーから学習した場合、distanceコマンドを用いてそれらのネイバーに対し
異なるアドミニストレーティブ ディスタンス(AD)を設定することで重み付けを変える設定は非サポートとなります。
distanceコマンドは、異なるルーティングプロトコル、異なるプロセス間で同じルート情報を受信した場合に
比較するために使用してください。
以下、簡単な例を使って説明します。
ここで、RT1が問題のルータ(ルーティングテーブルを確認するルータ)となります。
設定は以下のものです。
----- RT1 -----
interface Loopback0
ip address 1.1.1.1 255.255.255.255
interface Ethernet1/0
ip address 12.0.0.1 255.255.255.0
interface Ethernet2/0
ip address 13.0.0.1 255.255.255.0
!
router ospf 1
router-id 1.1.1.1
log-adjacency-changes
network 12.0.0.0 0.0.0.255 area 0
network 13.0.0.0 0.0.0.255 area 0
distance 100 13.0.0.3 0.0.0.0
distance 200 12.0.0.2 0.0.0.0
ここで赤字で表示してあるdistance設定はRT2、3から受信したルート情報のAD値をそれぞれ100、200
に変更することを意図した設定となります。しかしながら、この設定は無効になりルーティングテーブルは
以下のようになります。
RT1#sh ip route
(snip)
Gateway of last resort is not set
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback0
12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 12.0.0.0/24 is directly connected, Ethernet1/0
L 12.0.0.1/32 is directly connected, Ethernet1/0
13.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 13.0.0.0/24 is directly connected, Ethernet2/0
L 13.0.0.1/32 is directly connected, Ethernet2/0
100.0.0.0/24 is subnetted, 1 subnets
O 100.0.0.0 [110/20] via 13.0.0.3, 01:34:48, Ethernet2/0
[110/20] via 12.0.0.2, 01:13:49, Ethernet1/0
但し、一部のIOSでは設定した通りにAD値が反映されるものもありますが、その区別はCSCeh46993の修正を
含むかどうかになります。CSCeh46993の修正を含むIOSは12.4, 12.4T, 12.2(18)SXF, 12.2(30)S, 12.0(32)Sと
これら以降のものになりますので、上のような設定をしていて古いIOSバージョンからアップグレードにバージョンアップ
する場合は注意が必要です。なお、そのような問題はCSCte74078、CSCsk29338として報告されています。
また、アドミニストレーティブ ディスタンスについては「アドミニストレーティブ ディスタンスとは」をご参照下さい。