解答
R2 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ interface Tunnel0 bandwidth 200000 ip unnumbered FastEthernet0/0.23 delay 1 tunnel source FastEthernet0/0.23 tunnel destination 192.168.34.4 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ R4 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ interface Tunnel0 ip unnumbered FastEthernet0/0.34 tunnel source FastEthernet0/0.34 tunnel destination 192.168.23.2 ! router eigrp 100 distribute-list 1 out Tunnel0 ! access-list 1 permit 10.4.2.0 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
解説
Tracerouteは、レイヤ3の経路を調べるために使います。Tracerouteによって指定したIPアドレス(ホスト名)の経路上のルータのIPアドレスがわかります。
※セキュリティ上、TracerouteでIPアドレスがわからないようにしているルータはかなり多いですが・・・
ネットワーク構成上は、R2とR4は直接接続されていません。にもかかわらず、R1から10.4.2.0/24への経路は、
R1→R2(192.168.12.2)→R4(192.168.34.4)
となるようにするのが問題の趣旨です。
このためにトンネルインタフェースを利用します。
トンネルを使った設定は、普通のIPルーティングだけでなくマルチキャストルーティングやIPv6でもよくあります。トンネルの設定のポイントは、2つです。
- トンネルインタフェースを使った接続
- トンネル経由のルーティング
この2点のポイントをしっかりと考えてください。
まず、1つ目のトンネルインタフェースを使った接続についてです。トンネルインタフェースは、レイヤ3レベルの仮想的なポイントツーポイント接続です。R2とR4でトンネルインタフェースを設定することで、仮想的にポイントツーポイント接続されているものとみなすことができます。
※マルチポイントのトンネルインタフェースもありますが、基本はポイントツーポイントです。
R2とR4間でトンネルインタフェースの作成の設定は、次の部分となります。
R2 トンネルインタフェースの作成 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ interface Tunnel0 ip unnumbered FastEthernet0/0.23 tunnel source FastEthernet0/0.23 tunnel destination 192.168.34.4 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ R4 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ interface Tunnel0 ip unnumbered FastEthernet0/0.34 tunnel source FastEthernet0/0.34 tunnel destination 192.168.23.2 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トンネルインタフェースの番号は、任意です。対向と合わせる必要はありませんが、合わせておいた方が分かりやすくなります。トンネルインタフェースの基本設定が、
- tunnel source
- tunnel destination
です。
トンネルインタフェースから転送する際の転送用のIPヘッダのアドレス情報です。tunnel sourceとtunnel destinationは対向で認識が合っていなければいけません。また、トンネルインタフェースがupになる条件は、tunnel destinationへルーティング可能であることです。
トンネルインタフェース上でIPパケットを送受信するためには、IPアドレスが必要です。トンネルインタフェースにも普通のインタフェースと同じように、任意のIPアドレスを設定可能です。ただ、今回はTracerouteの結果からR4は、192.168.34.4で認識させなければいけません。そのため、R4のトンネルインタフェースには、ip unnumberedによってFa0/0.34のIPアドレス192.168.34.4を設定しています。
R2-R4間のトンネルインタフェースで送受信されるIPパケットを考えると、次の図のようになります。 次に2つ目のポイントであるトンネル経由のルーティングについてです。トンネルインタフェースでIPパケットをルーティングするためには、トンネル経由でルートを学習しないといけません。今回の設定では、トンネルインタフェースのIPアドレスをEIGRPが有効なインタフェース(R2:Fa0/0.23、R4:Fa0/0.34)からip unnumberedで持ってきています。そのため、明示的にEIGRPの設定を追加しなくてもトンネルインタフェースでEIGRPが動作します。その結果、R2とR4がEIGRPネイバーになりトンネルインタフェース経由でEIGRPのルートを送受信できます。
R2 show ip eigrp neighbor
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2#show ip eigrp neighbors
IP-EIGRP neighbors for process 100
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
2 192.168.34.4 Tu0 14 00:43:59 89 534 0 11
1 192.168.12.1 Fa0/0.12 10 00:47:47 71 426 0 10
0 192.168.23.3 Fa0/0.23 11 00:47:48 78 468 0 10
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
※ip unnumberedではなく、トンネルインタフェースに任意のIPアドレスを設定するときは、ルーティングプロトコルの追加の設定が必要になることがあります。
ただ、トンネル経由でルートを送信するときは注意が必要です。何でもかんでもトンネル経由でルートを送信すると、ループが発生してしまったり、トンネルインタフェースがフラッピングする可能性があります。
※OSPFやEIGRPなど帯域幅をメトリックにしている場合は、ほとんど問題ないのですが、ホップ数をメトリックにしているRIPは危険です。
トンネル経由で送信するルートは、トンネル経由でルーティングしたいネットワークだけに限定するのが原則です。つまり、トンネル経由では10.4.2.0/24のルートだけを送信します。R2とR4どっちでフィルタしてもいいのですが、ルートを送信するときにフィルタした方が効率がいいので、R4でルートフィルタの設定をします。
R4 ルートフィルタ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ router eigrp 100 distribute-list 1 out Tunnel0 ! access-list 1 permit 10.4.2.0 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
これで、R2は10.4.2.0/24のルートをTunnel0とFa0/0.23で受信します。Tunnel0はデフォルトでBW 9kbps、Delay 50000μsecです。そのため、Tunnel0で受信した10.4.2.0/24のルートはサクセサ(最適ルート)になれません。このことは、R2のEIGRPトポロジテーブルを見るとよくわかります。
R2 EIGRPトポロジテーブル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
R2#show ip eigrp topology
IP-EIGRP Topology Table for AS(100)/ID(192.168.23.2)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status
P 10.4.2.0/24, 1 successors, FD is 158720
via 192.168.23.3 (158720/156160), FastEthernet0/0.23
via 192.168.34.4 (297372416/128256), Tunnel0
P 10.4.3.0/24, 1 successors, FD is 158720
via 192.168.23.3 (158720/156160), FastEthernet0/0.23
P 10.4.1.0/24, 1 successors, FD is 158720
via 192.168.23.3 (158720/156160), FastEthernet0/0.23
P 192.168.34.0/24, 1 successors, FD is 28416
via 192.168.23.3 (30720/28160), FastEthernet0/0.23
P 192.168.12.0/24, 1 successors, FD is 28160
via Connected, FastEthernet0/0.12
P 192.168.1.0/24, 1 successors, FD is 30720
via 192.168.12.1 (30720/28160), FastEthernet0/0.12
P 192.168.23.0/24, 1 successors, FD is 28160
via Connected, FastEthernet0/0.23
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
そこで、R2でTunnel0で受信した10.4.2.0/24のルートがサクセサになれるように、Tunnel0のBWとDLYを小さくします。
R2 BW、DLYの変更 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ interface Tunnel0 bandwidth 200000 delay 1 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
すると、Tunnel0で受信した10.4.2.0/24のルートがサクセサになり、ルーティングテーブルに登録されます。
R2 EIGRPトポロジテーブル(BW/DLY変更後)、ルーティングテーブル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
R2#show ip eigrp topology
IP-EIGRP Topology Table for AS(100)/ID(192.168.23.2)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status
P 10.4.2.0/24, 1 successors, FD is 141056
via 192.168.34.4 (141056/128256), Tunnel0
P 10.4.3.0/24, 1 successors, FD is 158720
via 192.168.23.3 (158720/156160), FastEthernet0/0.23
P 10.4.1.0/24, 1 successors, FD is 158720
via 192.168.23.3 (158720/156160), FastEthernet0/0.23
P 192.168.34.0/24, 1 successors, FD is 28416
via 192.168.23.3 (30720/28160), FastEthernet0/0.23
P 192.168.12.0/24, 1 successors, FD is 28160
via Connected, FastEthernet0/0.12
P 192.168.1.0/24, 1 successors, FD is 30720
via 192.168.12.1 (30720/28160), FastEthernet0/0.12
P 192.168.23.0/24, 1 successors, FD is 28160
via Connected, FastEthernet0/0.23
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.12.0/24 is directly connected, FastEthernet0/0.12
10.0.0.0/24 is subnetted, 3 subnets
D 10.4.2.0 [90/141056] via 192.168.34.4, 00:01:38, Tunnel0
D 10.4.3.0 [90/158720] via 192.168.23.3, 01:08:41, FastEthernet0/0.23
D 10.4.1.0 [90/158720] via 192.168.23.3, 01:08:41, FastEthernet0/0.23
C 192.168.23.0/24 is directly connected, FastEthernet0/0.23
D 192.168.34.0/24 [90/30720] via 192.168.23.3, 01:08:48, FastEthernet0/0.23
D 192.168.1.0/24 [90/30720] via 192.168.12.1, 01:08:52, FastEthernet0/0.12
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
これで、R1から10.4.2.0/24あてのTracerouteの結果が、問題の条件のようになります。







