スタティックNAT
・スタティックNATの設定をする
・アドレスが10.1.1.1から192.168.1.1に変換されているか確認する
ネットワーク構成(画像を別ウインドウで表示)
RouterAのコンフィグ
!
version 12.2
no service single-slot-reload-enable
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname RouterA
!
interface Ethernet0
ip address 10.1.1.2 255.255.255.0
ip nat inside ←NATの内側インタフェースに指定する
!
interface Serial0
ip address 192.168.1.2 255.255.255.0
ip nat outside ←NATの外側インタフェースに指定する
clockrate 500000
!
ip nat inside source static 10.1.1.1 192.168.1.1 ←内側(LAN側)の送信元アドレスを10.1.1.1から192.168.1.1に静的に変換
ip classless
ip route 192.168.2.0 255.255.255.0 192.168.1.3
ip http server
!
!
line con 0
transport input none
line aux 0
line vty 0 4
login
!
end
RouterBのコンフィグ
!
version 12.2
no service single-slot-reload-enable
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname RouterB
!
interface Ethernet0
ip address 192.168.2.2 255.255.255.0
!
interface Serial0
ip address 192.168.1.3 255.255.255.0
no fair-queue
!
line con 0
transport input none
line aux 0
line vty 0 4
login
!
end
確認
シスコ・ルーターの場合,NATを実行するためにはけっこういろいろなコマンドを打ち込む必要があります。
その中でも一番シンプルなのが静的アドレス変換です。
「このアドレスはこのアドレスに変換しろ」というように,変換前と変換後のアドレスを指定してやります。

今回,NATを実行するのはRouterAです。
RouterBは,パケットをキャプチャするための確認用に使います。
上のコマンドは,10.1.1.1を192.168.1.1に変換する,静的アドレス変換です。
アドレスがそのように変換されているか確かめてみましょう。

HostAからHostBにパケットを送ったときに,RouterBを通過するパケットを見てみます。
そのために,RouterBでIPパケットのデバックをオンにします。

RouterB#debug ip packet
IP packet debugging is on

オンになりました。
では,HostA(10.1.1.1)からHostB(192.168.2.1)にpingを打ってみます。

01:16:23: IP: s=192.168.1.1 (Serial0), d=192.168.2.1 (Ethernet0), g=192.168.2.1,len 60, forward
01:16:23: IP: s=192.168.2.1 (Ethernet0), d=192.168.1.1 (Serial0), g=192.168.1.1,len 60, forward


1行目がping要求パケットで,2行目がping応答パケットです。
RouterBは,アドレスが変換された192.168.1.1からパケットを受け取っていることがわかります。

NATの動作を検証するためのdebugコマンドもあります。
RouterAで実行してみましょう。

RouterA#debug ip nat
IP NAT debugging is on

NATのデバッグがオンになりました。
ふたたび,HostAからHostBにpingを打ってみます。

00:49:45: NAT*: s=10.1.1.1->192.168.1.1, d=192.168.2.1 [6150]
00:49:45: NAT*: s=192.168.2.1, d=192.168.1.1->10.1.1.1 [462]
00:49:46: NAT*: s=10.1.1.1->192.168.1.1, d=192.168.2.1 [6151]
00:49:46: NAT*: s=192.168.2.1, d=192.168.1.1->10.1.1.1 [463]
00:49:47: NAT*: s=10.1.1.1->192.168.1.1, d=192.168.2.1 [6152]
00:49:47: NAT*: s=192.168.2.1, d=192.168.1.1->10.1.1.1 [464]
00:49:48: NAT*: s=10.1.1.1->192.168.1.1, d=192.168.2.1 [6153]
00:49:48: NAT*: s=192.168.2.1, d=192.168.1.1->10.1.1.1 [465]


パケットの送信と受信を4回ずつしていますね。
4回すべてで送信元アドレス(s=x.x.x.xの部分)を,10.1.1.1から192.168.1.1に変換して送信していることがわかります(赤字の部分)。
返信のときは,送信元アドレスを192.168.1.1から10.1.1.1に戻しています(青時の部分)。

RouterAのNATテーブルを見てみましょう。
ルーターはこの対応表を基にアドレス変換をします。

RouterA#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- 192.168.1.1 10.1.1.1    ---       ---


10.1.1.1が192.168.1.1に対応付けられているのがわかります。


NATラボ
スタティックNAT
ダイナミックNAT
PAT(IPマスカレード)
重複アドレスの変換
あて先アドレスの分散変換