キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
6567
閲覧回数
0
いいね!
1
返信

NAT使用時にinside側でtracerouteを実行すると想定しない結果となる

matsui-fyf
Level 1
Level 1

NAT使用時にinside→ouside側でtracerouteを実行すると、
途中経路がすべてNATによって、宛先のアドレスに変換されてしまう不具合があります。

通常利用では問題ありませんが、
運用監視やトラブルシュート時に大きく影響ある不具合となります。

機器:Cisco C841M-4X-JSEC/K9
IOS Ver: 15.5(3)M, 15.5(3)M4a

*PCから実施時*
>tracert -d 8.8.8.8

8.8.8.8 へのルートをトレースしています。経由するホップ数は最大 30 です

1 <1 ms <1 ms <1 ms 192.168.1.1
2 20 ms 17 ms 18 ms 8.8.8.8
3 * * 18 ms 8.8.8.8
4 22 ms 21 ms 21 ms 8.8.8.8
5 20 ms 20 ms 21 ms 8.8.8.8
6 25 ms 27 ms 19 ms 8.8.8.8
7 22 ms 22 ms 23 ms 8.8.8.8
8 20 ms 22 ms 22 ms 8.8.8.8
9 24 ms 24 ms 22 ms 8.8.8.8
10 * 21 ms 21 ms 8.8.8.8
11 24 ms 23 ms 23 ms 8.8.8.8

*ルータから実施時*
#traceroute 8.8.8.8
Type escape sequence to abort.
Tracing the route to 8.8.8.8
VRF info: (vrf in name/id, vrf out name/id)
1 118.23.69.139 20 msec * 24 msec
2 118.23.69.158 20 msec 20 msec 20 msec
3 118.23.96.29 24 msec 20 msec 32 msec
4 153.149.137.9 24 msec 20 msec 24 msec
5 60.37.54.69 24 msec 20 msec 20 msec
6 122.1.245.70 20 msec 24 msec *
7 211.0.193.30 24 msec 24 msec 24 msec
8 108.170.242.193 24 msec
108.170.242.161 24 msec
108.170.242.193 24 msec
9 209.85.255.237 20 msec
209.85.254.211 24 msec
209.85.255.33 20 msec
10 8.8.8.8 24 msec 20 msec 24 msec

*デバック結果*
#debug ip nat detail
Jan 4 13:36:51.627: NAT*: i: icmp (192.168.1.80, 1) -> (8.8.8.8, 1) [18812]
Jan 4 13:36:51.627: NAT*: s=192.168.1.80->114.149.31.146, d=8.8.8.8 [18812]
Jan 4 13:36:51.651: NAT*: o: icmp (8.8.8.8, 1) -> (114.149.31.146, 1) [58730]
Jan 4 13:36:51.651: NAT*: s=118.23.69.139->8.8.8.8, d=114.149.31.146 [58730]
Jan 4 13:36:51.651: NAT*: s=8.8.8.8, d=114.149.31.146->192.168.1.80 [58730]
Jan 4 13:36:51.651: NAT*: i: icmp (192.168.1.80, 1) -> (8.8.8.8, 1) [18813]
Jan 4 13:36:51.651: NAT*: s=192.168.1.80->114.149.31.146, d=8.8.8.8 [18813]
Jan 4 13:36:51.675: NAT*: o: icmp (8.8.8.8, 1) -> (114.149.31.146, 1) [59152]
Jan 4 13:36:51.675: NAT*: s=118.23.69.139->8.8.8.8, d=114.149.31.146 [59152]
Jan 4 13:36:51.675: NAT*: s=8.8.8.8, d=114.149.31.146->192.168.1.80 [59152]


*独自検証*
http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_nat/configuration/15-mt/nat-15-mt-book/iadnat-addr-consv.html
> In Cisco IOS Release 15.1(3)T and later releases, when you configure the traceroute command, NAT returns the same inside global IP address for all inside local IP addresses.

IOS 15 M&Tコンフィグレーションガイド(上記参照)から15.1(3)T以降のIOSにてtracerouteの結果は内部グローバルIPに変換される仕様になっているようです。
なぜこのような仕様になっているのか不明ですが、上述の通りトラブルシュート時に弊害があるため、
この変換をしないような設定やIOS等ございましたら、ご教示ください。

1件の返信1

Akira Muranaka
Level 8
Level 8

以下コミュニティに記事があるのですが、Tracerouteで同じIPが戻ってくるのは、内部IPアドレスの偵察・流出を防ぐためのセキュリティの実装のようです。ルーター周囲のL3機器のIPを見せたくない管理者の方も多いと思います。特にセキュリティの世界では、攻撃するためのネットワーク構成の把握のため、PingやTracerouteはよく使われる手法なので。
https://community.cisco.com/t5/-/-/ta-p/3117243

セキュリティ上の実装変更、かつ、特に設定ガイドなどにその無効化方法の記載がないのであれば、もうそういう実装とあきらめるしかないのかな、と思いました。必要に応じて、適切な権限を持つ方がルーター経由でTraceroute打てば調査はできますし、一般ユーザの方はTracerouteそこまで使わないと思いますので。