|
外部送信元アドレス変換
その名の通り、外部 ( ip nat outsideの設定のあるインターフェース側
) の送信元アドレスの変換を行います。
それでは下図を例に、外部送信元アドレス変換をスタティックNATとダイナミックNATの両方で行ってみます。
※ 両ルータでダイナミックに経路情報をやり取りしますが、172.16.0.0/24
の経路は 「NAT Router」に通知しない事を前提にします。

・ 外部送信元アドレス変換 by スタティックNAT
: ソースアドレス 「172.16.0.1 」 を
「 192.168.2.100
」に変換
interface FastEthernet0/0
ip address 192.168.0.254 255.255.255.0
ip nat inside
interface FastEthernet0/1
ip address 192.168.1.254 255.255.255.0
ip nat outside
ip nat outside source static 172.16.0.1
192.168.2.100
|
NAT-Inside sourceは内部送信元アドレス変換で、NAT-Outside sourceは外部送信元アドレス変換の
ことだけなのですが、NAT-Inside sourceの解説で使用した物理構成では ip nat outside source static
のコマンドを使用しても、「172.16.0.0/24」
から 「192.168.0.0/24」 に対して通信することができません。
この理由は端末Bから送信されるパケットの送信元アドレスと宛先アドレスを考えればすぐに分かります。
そう、これはNATの処理順序に起因するのです。今回は「ExRouter」にloopback1インターフェースを作成し
そのネットワークを「NATRouter」に通知し、「172.16.0.1」のアドレスを「192.168.2.100」に変換しています。
※ 但し、このルータ上の経路にないNW ( 例 : 1.1.1.1/32 ) を利用して、以下のトリッキーな設定によりルータ一台でも外部送信元
アドレス変換の実装は可能。 [ ip nat outside
source static 172.16.0.1 1.1.1.1 ] [ ip route
1.1.1.1 255.255.255.255 172.16.0.1 ]
ホストAから ping 1.1.1.1 と実行すると応答があります。このトリッキーな設定はNATの処理順序を理解できていれば思いつくはず。
以下のNAT変換表の一行目はip nat outside
source staticを作成すればスタティックに存在し続けます。
二行目は、端末A⇔B間にて192.168.0.1と192.168.2.100(172.16.0.1)の通信が開始されると作成されます。
| show ip nat translation |
| Inside global |
Inside local |
Outside local |
Outside global |
| --- |
--- |
192.168.2.100 |
172.16.0.1 |
| 192.168.0.1 |
192.168.0.1 |
192.168.2.100 |
172.16.0.1 |
・ 外部送信元アドレス変換 by ダイナミックNAT : ソースアドレス 「172.16.0.0 〜 255」 を 「 192.168.0.2
〜 253」 のどれかに変換
interface FastEthernet0/0
ip address 192.168.0.254 255.255.255.0
ip nat inside
interface FastEthernet0/1
ip address 192.168.1.254 255.255.255.0
ip nat outside
ip nat pool N-dynamic 192.168.2.2 192.168.2.253
netmask 255.255.255.0
ip nat outside source list 1 pool N-dynamic
access-list 1 permit 172.16.0.0 0.0.0.255
|
この構成の場合、ip nat outside source static と同様にパケットの送信元、宛先アドレスを考えれば
ip nat pool N-dynamicのプールアドレスはExRouterのネットワークである必要であることが分かると
思います。NAT処理順序によると内部から外部へパケットを転送する時は先にルーティング処理され
宛先が確定した後、NAT変換が行われます。ルーティングされる時に宛先が「ExRouter」でない場合、
NAT変換後のネットワーク ( 172.16.0.0/24
) を 「NATRouter」は知らずパケットを破棄してしまいます。
ダイナミックNATではNAT変換表がない上では外部(PC
B)からしか通信を開始することが出来ません。
以下のNATテーブル2行は端末Bから通信を開始し始めると自動作成されますが、通信が終了してから
ip nat translation timeoutで設定された時間をすぎるとNATテーブルはなくなります。タイムアウトを
を待つことなくNATテーブルをクリアーしたい場合はclear ip nat translation *コマンドを入力します。
| show ip nat translation |
| Inside global |
Inside local |
Outside local |
Outside global |
| --- |
--- |
192.168.2.2 |
172.16.0.1 |
| 192.168.0.1 |
192.168.0.1 |
192.168.2.2 |
172.16.0.1 |
※ 重複するネットワーク処理の為のNAT( Twice
NAT)は、内部送信元と外部送信元アドレス変換の両方を行うことで実現可能です。
NAT変換エントリのタイムアウト値の変更
ダイナミックNATの場合はデフォルトで「24時間」と非常に長く、一般的に設定変更する必要があります。
cisco(config)# ip nat translation timeout
seconds
|
次に紹介するPATで使用するoverloadを使用したNATの場合は、プロトコルごとに変更できます。
cisco(config)# ip nat translation udp-timeout seconds ( default 5分 )
cisco(config)# ip nat translation dns-timeout
seconds ( default 1分 )
cisco(config)# ip nat translation tcp-timeout
seconds ( default 24時間 )
cisco(config)# ip nat translation finrst-timeout
seconds ( default 1分 )
cisco(config)# ip nat translation icmp-timeout
seconds ( default 24時間 )
cisco(config)# ip nat translation syn-timeout
seconds ( default 1分 )
|
Resource : NAT : Local and Global Definitions NATの処理順序 NAT Central ip virtual-reassembly time-out値の変更 |