[ Top page ]

« DHCPv6 のセキュリティ | メイン | 認証の機能 »

インターネットのプロトコル, 仮想化:ネットワークの仮想化

ネットワーク・アドレス変換

概説

ネットワーク・アドレス変換 (Network Address Translation, NAT) はインターネット上のパケットがふくむ IP アドレスやポート番号を別のものに変換する技術である. おもにプライベート IP アドレスを使用するホストからインターネットにアクセスするために使用される.

インターネットではもともと,接続されているすべてのルータやホストにそれぞれ大域的な IP アドレス (グローバル IP アドレス) をわりあてていた. しかしインターネットに接続されるホストが著しく増えたため,約 43 億個しかない IP アドレスは不足するようになった. こうした状況へ対応するため,ローカルなネットワーク内にあるホストにはプライベート IP アドレスをわりあて,インターネットに接続するときにだけグローバル IP アドレスを使うようにする技術が開発された. このときにプライベート IP アドレスとグローバル IP アドレスの変換をする機能が本来のネットワーク・アドレス変換 (NAT) である.

アメリカ以外の国,たとえば日本などではわりあて IP アドレス数に比べてコンピュータの普及が著しいため,IP アドレスが不足しやすい. 最近の予測によれば 2010 年ころに IP アドレスが枯渇するといわれている. したがって,これらの国においてはネットワーク・アドレス変換は特に重要性が高いといえる. 日本向けに発売されている ADSL や FTTH などに対応したブロードバンド・ルータにおいては,業務用,家庭用を問わずネットワーク・アドレス変換を持っていることが多い.

動的 NAT

動的 NAT (ダイナミック NAT) とは,LAN 内部の IP アドレスをあらかじめ用意された外部 IP アドレスのなかの 1 個を選択してその IP アドレスに動的にマップする技術のことである. 動的 NAT はセキュリティや不足する IP アドレスの問題解決に役に立つが,IP アドレスが固定されないという問題点がある. たとえば,LAN 内部のサーバをインターネットなど,外部から参照する必要が生じた場合,外部から参照するためにはグローバル IP アドレスが必要だが,動的 NAT では解決できない.

静的 NAT

静的 NAT (スタティック NAT) とは,LAN 内部の IP アドレスを常に同一の外部の IP アドレスに静的にマップする技術のことである. この技術を使用すれば,LAN の外部から常に同一の IP アドレスを指定することによって内部サーバにアクセスすることができる.

NAT と NAPT

現在では,プライベート IP アドレスとグローバル IP アドレスの変換に加えてポート番号も変換できる NAPT (Network Address Port Translation) が用いられることが多い.

本来のネットワーク・アドレス変換 (NAT) においては送受信するパケット上の IP アドレスだけを識別して変換するため,複数のホストから同時にローカル外のネットワークには接続できない. NAPT では,IP アドレスに加えてポート番号の識別や変換をすることで,複数のホストから同時にローカル外のネットワークに接続できるようになっている.

とくに Linux 上での NAPT の実装を 「IP マスカレード」 という. マスカレード (masquerade) は仮面舞踏会という意味である.

セキュリティ

ネットワーク・アドレス変換には,セキュリティを高める効果がある. グローバル IP アドレスをプライベート IP アドレスに変換するときに,パケット・フィルタリング (パケット (syn) の条件を指定して制限) ができるためである. 実際にはプライベート IP アドレスをわりあてられたホストには,特別な設定をしない限り外部のネットワークからは接続できないことが多い. こうした特徴から,ネットワーク・アドレス変換は簡易的なファイアウォールの一種と考えることもできる.

ピア・ツー・ピア接続への障害

ネットワーク・アドレス変換はインターネットが本来掲げていたピア・ツー・ピアでの接続に対する障害になりうるという批判的な意見もある. また,FTP や SIP などのプロトコルを機能させるためには特殊な工夫が必要な場合もある.

また,複数のローカル IP アドレスからのアクセスを 1 つのグローバル IP アドレスで共有しているため,外からはローカル・ネットワーク内のどのノードがアクセスしたのかまでを特定することはできない. このためインターネットカフェなどの不特定多数の人が利用するアクセス端末からの,悪意のある利用 (SPAM 行為や掲示板荒らし,ネット犯罪など) がなされた場合,匿名性が高く特定がより困難になる.

関連技術

ネットワーク・アドレス変換に関連する技術として,つぎのものがある.

Connection Tracking 機能
NAT や NAPT では FTP や SIP などのプロトコルがうまく動作しないアプリケーションがあるため,さらにコネクションとトラッキングすることでそれらに対処した技術. Linux の iptables などで実装されている.
GapNAT 機能
住友電工製の ADSL モデムに内蔵のルータに実装された DMZ を実現する機能の名称. 1 つのグローバル IP アドレスしか提供されない IP 接続サービス環境下において,DHCP によってローカルの一つのコンピュータにグローバル IP アドレスをわりあて,それ以外のコンピュータにはローカル IP アドレスをわりあてる. これによって,グローバル IP アドレスをわりあてられたコンピュータは,グローバル IP アドレスを直接使用しなければならないネットワーク・アプリケーションを動作させることができる.
UPnP の規定するInternet Gateway Device (IGD)
UPnP のインターネット・ゲートウェイ・デバイス (IGD) 仕様に準拠した NAT ルータは,それに対応したアプリケーションからさまざまな操作 (Action) を受け付けることが可能である. この動作の中に,ポート・マッピングを作成・削除・情報取得を行う操作 (Action) がある. UPnP NAT トラバーサル (Traversal) とも呼ばれる. これにより,使用するアプリケーションがポート・マッピングを要求する場合,従来はユーザが NAT ルータにたとえば Web ブラウザからアクセスするなどして手動で設定を加えなければならなかったものが,アプリケーション自身が直接 ルータにアクセスしポート・マッピングのエントリーを追加・削除できるようになった. 市場に出回るブロードバンド・ルータのなかで 「UPnP 機能搭載」 や 「UPnP NAT トラバーサル対応」 などと書かれている製品がこれにあたる.
IPv4-IPv6 間 NAT
2007 年現在,IP アドレス枯渇問題で足りないとされている IPv4 の IP アドレスは,将来的には IPv6 の IP アドレス体系に移行すれば,枯渇問題は解決すると見られている. しかし,その移行期間においては IPv4 と IPv6 の双方のネットワークが混在することになり,両ネットワークを接続する NAT (プロトコル変換も行うためゲートウェイと呼ぶのが妥当) が必要となる. 実際のゲートウェイの実装方法が RFC 2766 によって提案されている.

参考文献

この項目の記述にあたっては Wikipediaネットワーク・アドレス変換 の項目を参照した.

Keywords:

コメントを投稿

Powered by
Movable Type 3.36