概要

ハブ&スポーク構成のネットワークで、EIGRPを利用してダイナミックルーティングを行うための設定について、設定ミスの切り分けと修正を行います。

ネットワーク構成

R1を中心とするハブ&スポークのフレームリレーネットワークでEIGRPによるダイナミックルーティングを行っています。ネットワーク構成の概要は、下記の図です。

図 EIGRP 設定ミスの切り分けと修正 Part1 ネットワーク構成
図 EIGRP 設定ミスの切り分けと修正 Part1 ネットワーク構成

設定抜粋

各ルータのインタフェースでEIGRPを有効化しています。また、フレームリレーのハブ&スポークトポロジなので、ハブルータであるR1のSerial1/0にno ip split-horizonコマンドを入力して、スプリットホライズンを無効化しています。

各ルータの設定抜粋は次の通りです。

R1

interface FastEthernet0/0
 ip address 192.168.1.1 255.255.255.0
!
interface Serial1/0
 ip address 192.168.123.1 255.255.255.0
 encapsulation frame-relay
 no ip split-horizon 
 frame-relay map ip 192.168.123.2 120 broadcast
 frame-relay map ip 192.168.123.3 130 broadcast
!
router eigrp 123
 network 192.168.0.0 0.0.255.255
 no auto-summary

R2

interface FastEthernet0/0
 ip address 192.168.2.2 255.255.255.0
!
interface Serial1/0
 ip address 192.168.123.2 255.255.255.0
 encapsulation frame-relay
 frame-relay map ip 192.168.123.1 210 broadcast
 frame-relay map ip 192.168.123.3 210
!
router eigrp 123
 network 192.168.0.0 0.0.255.255
 no auto-summary

R3

interface FastEthernet0/0
 ip address 192.168.3.3 255.255.255.0
!
interface Serial1/0
 ip address 192.168.123.3 255.255.255.0
 encapsulation frame-relay
 frame-relay map ip 192.168.123.1 310 broadcast
 frame-relay map ip 192.168.123.2 310
!
router eigrp 123
 network 192.168.0.0 0.0.255.255
 no auto-summary

問題

上記のような設定を行っていますが、192.168.2.0/24と192.168.3.0/24間の通信ができません。R2、R3のルーティングテーブルを確認すると、相手のLAN側のネットワークのルート情報が存在しません。

R2 show ip route

R2#show ip route
~省略~

Gateway of last resort is not set

C    192.168.123.0/24 is directly connected, Serial1/0
D    192.168.1.0/24 [90/2172416] via 192.168.123.1, 00:05:32, Serial1/0
C    192.168.2.0/24 is directly connected, FastEthernet0/0

R3 show ip route

R3#show ip route
~省略~

Gateway of last resort is not set

C    192.168.123.0/24 is directly connected, Serial1/0
D    192.168.1.0/24 [90/2172416] via 192.168.123.1, 00:06:33, Serial1/0
C    192.168.3.0/24 is directly connected, FastEthernet0/0

R1のshow ip interface serial1/0を見ると、スプリットホライズンは無効化されています。

R1 show ip interface serial1/0

R1#show ip interface serial 1/0
Serial1/0 is up, line protocol is up
  Internet address is 192.168.123.1/24
  Broadcast address is 255.255.255.255
  Address determined by setup command
  MTU is 1500 bytes
  Helper address is not set
  Directed broadcast forwarding is disabled
  Multicast reserved groups joined: 224.0.0.10
  Outgoing access list is not set
  Inbound  access list is not set
  Proxy ARP is enabled
  Local Proxy ARP is disabled
  Security level is default
  Split horizon is disabled
  ICMP redirects are always sent
  ICMP unreachables are always sent
  ICMP mask replies are never sent
~省略~

R1のSerial1/0でスプリットホライズンが無効化されているのに、R2とR3のLAN側のルート情報がR1から送信されていないようです。

この原因は何ですか?

解答

R1

interface serial 1/0
 no ip split-horizon eigrp 123

解説

RIP/EIGRPといったディスタンスベクタ系ルーティングプロトコルを使っていると、ハブ&スポークトポロジでは、スプリットホライズンについて考えなければいけません。スポークのルータ間でルートをきちんと認識させるために、ハブルータでスプリットホライズンを無効化する必要があります。

ここで、スプリットホライズンについて確認しておきましょう。ディスタンスベクタ系ルーティングプロトコルで、ルートのループを防止するための機能です。スプリットホライズンによってルートを受信したインタフェースからは、そのルートを送信しないようになります。もう少し具体的にいえば、「ルートの出力インタフェースには送信しない」のがスプリットホライズンです。

R1のルーティングテーブルを見ます。

R1 show ip route

R1#show ip route
Codes: 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

Gateway of last resort is not set

C    192.168.123.0/24 is directly connected, Serial1/0
C    192.168.1.0/24 is directly connected, FastEthernet0/0
D    192.168.2.0/24 [90/2172416] via 192.168.123.2, 00:00:12, Serial1/0
D    192.168.3.0/24 [90/2172416] via 192.168.123.3, 00:00:10, Serial1/0

EIGRPで学習している192.168.2.0/24と192.168.3.0/24の出力インタフェースはSerial1/0です。すると、スプリットホライズンが有効になっていれば、この2つのルートをSerial1/0から送信しません。

R2とR3でお互いのLAN側のネットワークアドレスをEIGRPで学習できていないということは、R1でスプリットホライズンが有効になっているということです。no ip split-horizonコマンドでスプリットホライズンを無効にしたつもりが、実際には、有効になっているままです。

no ip split-horizonはRIPのスプリットホライズンを無効化するためのコマンドです。EIGRPのスプリットホライズンは、このコマンドでは無効化されません。EIGRPでスプリットホライズンを無効化するためには、インタフェースコンフィグレーションモードで次のように設定します。

EIGRP スプリットホライズンの無効化

(config-if)#no ip split-horizon eigrp ‹ AS ›

‹ AS › : EIGRP AS番号

そのため、R1ではEIGRPスプリットホライズンを無効化するには、次のような設定になります。

R1 Serial1/0でEIGRPのスプリットホライズンを無効化

interface serial 1/0
 no ip split-horizon eigrp 123

すると、R2とR3はお互いのLAN側のネットワークアドレスを学習できて、通信可能になります。

R2 show ip route

R2#show ip route
Codes: 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

Gateway of last resort is not set

C    192.168.123.0/24 is directly connected, Serial1/0
D    192.168.1.0/24 [90/2172416] via 192.168.123.1, 00:11:05, Serial1/0
C    192.168.2.0/24 is directly connected, FastEthernet0/0
D    192.168.3.0/24 [90/2684416] via 192.168.123.1, 00:02:28, Serial1/0

R3 show ip route

R3#show ip route
Codes: 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

Gateway of last resort is not set

C    192.168.123.0/24 is directly connected, Serial1/0
D    192.168.1.0/24 [90/2172416] via 192.168.123.1, 00:11:50, Serial1/0
D    192.168.2.0/24 [90/2684416] via 192.168.123.1, 00:03:15, Serial1/0
C    192.168.3.0/24 is directly connected, FastEthernet0/0