IPマスカレードとNATの解説は ここ の方がわかりやすいというか、私が作ったドキュメントは間違っている気が。。。

それと、東めたさんのADSLモデム(ルータ機能付き)のスペックを見ると
DHCP+NAT機能とPort Mapping and Static IPがあるみたいだけど
Port MappingってIPマスカレードかなぁ。
要確認。ただし、いまだ開通していない。。。

--- 以前作ったどきゅめんと ---

What is “NAT”?

NAT (なっと:Network Address Translation)

IPアドレス空間のなかでグローバルIPアドレス空間(インターネット)と
プライベートIPアドレス空間(LAN)を接続するためのもの

グローバルIPアドレスとは、インターネットとかで使われている世界に一つだけしか
存在することを許されないIPアドレスです。(※ちょっと日本語が変かな?)
NATは一つのグローバルIPアドレスに対して一つのプライベートアドレスを割り振ります。

上記のような構成図の時、端末AがYahooのページを表示したとします。
そのときの動作です。

1:端末AがYahooへアクセス。

2:NAT-RTが端末AのアドレスとYahooのアドレスを対応表に登録。

3:NAT-RTが持っているグローバルアドレスを使ってYahooへアクセス。

4:YahooからNAT-RTのグローバルアドレスにデータが送られてくる。

5:NAT-RTは対応表を参照して端末Aにデータを送信。

6:端末AはYahooのページデータをすべて受け取ったらYahooとの接続を終了。

7:NAT-RTでは端末AとYahooの対応表を削除。

<重要>
NATでは一つのグローバルIPアドレスには一つのプライベートIPアドレスの割り当てしか行いませんので、
上記の図で言えば端末Aが通信を行っていると端末Bは通信ができないということになります。

NATをさらに便利にしたのがIPマスカレードといわれるものです。

What is “IP masquerade”?

IP masquerade (あいぴー ますかれーど:IP masquerade)

NATの拡張版みたいな感じ。TCP/UDPのポート番号まで変更してくれる。
Linuxにおける本機能の名称で、正しくはNAPT(Network Address Port Translation)と言うらしい。

機能的にはNATとほとんど同じ。ポート番号まで変更してくれるので、複数の端末から同時にアクセスできます。

TCP/UDPのポート番号ってのは、たとえばメールを受信するためのPOP3サーバーのポートは「110」、
メールを送信するためのSMTPサーバーのポートは「25」とかって決まっています。

確か1000番台くらいまでは勧告として決まっているはずです。
だから端末そのポートでアクセスしてもルーターとかで変換されないはずです。
#未確認。機会があったら今度調べてみます。
2001/1/4訂正。
クライアントから送信されるときのポート番号は1024番以降をしようして
サーバーから受け取るときは上記の通り決まっているみたいです。

ただし、1000番台以降は決まっていないのでICQやネットワークゲームを作っている会社は適当に使ってたりします。
そこで問題なのが、サーバー側で特定のポート番号を使用するようなプログラムは
場合によってサービスが利用できないこともあります。

そんな時に必要なのが静的IPマスカレードを使用してあげます。
静的IPマスカレードとはポート番号とIPアドレスを固定してあげることです。
こうすることによって指定したポートから来たアクセスはすべて指定したIPアドレスに送信されます。
ただし、静的IPマスカレードを使用することによって、たとえばICQが使える端末は1台に限られてしまいます。

#東めたさんのモデムにはそういう設定ができないようですが、実際どうなんでしょう? #求む。動作状況。

Written By めたりっくゆーざーず
内容におかしなところがあったらメールにてご連絡ください。