ネットワークスペシャリスト - SE娘の剣 -

ネットワークスペシャリストの試験対策サイトです。
ネスペ試験の合格体験談、合格のコツ、過去問解説、基礎知識などの情報を掲載します。

カテゴリ:8.ネットワーク層(L3) > 8.2 NAT

NAT(Network Address Translation)とは、そのスペルが意味するように、ネットワークアドレスの変換です。
2 

NATなんて使うときあるのですか?
例えば、2つの部署をくっつけて、一つのネットワークにしたとします。どちらも192.168.1.0/24のネットワークです。IPアドレスの重複は正常な通信ができません。かといって、プリンタやらサーバやらで、いまさらIPアドレスを変更するのは大がかりとします。そのときに、アドレスを変換して通信すればいいのです。
nat1
そこで、R1とR1を接続して一つのネットワークのする際に、お互い相手からは、違うアドレスに見せます。
 ネットワーク,172.16.1.0/24
 ネットワーク△172.16.2.0/24
そのために、ルータR1では、172.16.1.0/24を192.168.1.0/24にNATし、ルータR2でも172.16.2.0/24を192.168.1.0/24のネットワークにNATします。
nat2
ああが

NATの事例をもう一つ紹介します。これはよくある事例かと思います。 DMZの公開サーバですが、公開しているので、当然グローバルIPアドレスが必要です。しかし、サーバ自体にはプライベートIPアドレスを割り当て、NATすることがよくあります。
4 
  
そんなことをする意味はあるのですか?
そのままグローバルIPアドレスを使えばいいと思います。
DMZには予備サーバや試験環境など複数の機器が接続されている場合があります。グローバルIPアドレスは有限なので、それらすべてにグローバルIPアドレスを割り当てることは難しいケースがあります。また、サーバをDCに移設した場合に、グローバルIPアドレスが変わった場合にも便利です。サーバの設定変更は必要がなく、NAT変換だけですみます。

ここでは、以下のシンプルな仮想環境でNATの様子を確認ください。
3
(仮想)インターネットからは1.1.1.1のグローバルIPアドレスに通信をしているつもりですが、実際にはFWでNATされて、172.16.1.1に通信をしています。 NAT前のパケットと、NAT後のパケットを以下に記載します。同じシーケンスNOですが、宛先IPアドレスだけが変換されています。

NAT変換前
before


NAT変換後
after

・IPマスカレードと同じこと。正しくはNAPT。製品によっては、NAT+と表現するものもあるようだ。
・情報処理試験ではこれまで、IPマスカレードという表現が多かったが、ここ最近ではNAPTに変化している。答案に書くときは、「IPマスカレード」という表現を使わず、必ずNAPTと書くべきである。

過去問では、NAPTに関して次の記述がある。
TCP、UDPのポート番号を識別し、プライベートIPアドレスとグローバルIPアドレスとの対応関係を管理することによって、プライベートIPアドレスを使用するLANの複数の端末が、一つのグローバルIPアドレスを共有してインターネットにアクセスする仕組み。
(H19NW午前 問36より)
・NAPTテーブルを書いてみると理解が深まると思う。

2011.10.30追記
NAPTは、セキュリティ面の効果もある。H21春AP問9では、NAPTに関して、「グローバルIPアドレス数の不足を解消するとともに、社内LAN上にある機器のアドレス情報を隠ぺいするという効果も実現している。」と述べられている。

・パケットのヘッダには送信元IPアドレスと宛先IPアドレスの2つがあることにともない、NATには、送信元 (Source) NATと宛先 (Destination) NATがある。
過去問(H21NW午後1問3)では、送信元NATを「ソースNAT」という表現で記載している。

・Ciscoのコマンドでの送信元NAT
送信元IPアドレス192.168.1.1を200.1.1.1に変換
(config)#ip nat inside source static 192.168.1.1 200.1.1.1
※insideはIFのどちら側かを差しているので、あまり気にしないでください。

・Ciscoのコマンドでの宛先NAT
(config)#ip nat outside destination static 192.168.1.1 1.1.1.1
※outsideはIFのどちら側かを差しているので、あまり気にしないでください。

NATとNAPTの違いですが、一般的には次のように言われることでしょう。
NATは1対1のアドレス変換。NAPTは1対多のアドレス変換。
具体的には、NAPTの場合、複数のプライベートIPアドレスを1つのグローバルIPアドレスに変換します。
5

NATとNAPTの違いですが,何となく理解できません。
NATとNAPTの違いは,NATテーブルとNAPTテーブルを書いてみるとよくわかる。
NATテーブル
変換前変換後
200.1.1.1192.168.1.100
NAPTテーブル
変換前変換後
200.1.1.12000192.168.1.1001001
200.1.1.12001192.168.1.2001002
このように,NATテーブルはIPアドレスのみの変換テーブルを持ちます。NAT(Network Address Translation)という言葉の通りです。一方,NAPTテーブルは、NAPT(Network Address Port Translation)として名前に「Port」が入っているように、IPアドレスとポート番号の変換テーブルを持ちます。

では、過去問を見てみよう。
ダイヤルアップルータやブロードバンドルータが、IPマスカレード機能を実現するために管理している情報はどれか。

ア IPアドレスと、ネットワークインターフェースカード固有のMACアドレスの対応
イ 一定時間内にアクセスしたURLとそのページの内容
ウ プライベートIPアドレス及びそのポート番号と、グローバルIPアドレス及びそのポート番号の対応
エ ホスト名とISPへ接続するたびに変わるグローバルIPアドレスの対応
(H16NW午前問25 IPマスカレード)
正解はウ

このページのトップヘ