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

ネットワークアドレス変換(NAT)とは



ネットワークアドレス変換(NAT: Network Address Translation)は、インターネットプロトコル(IP)ネットワークにおいて、パケットヘッダに含まれるIPアドレスを別のIPアドレスに変換する技術です。ルーターや無線LANアクセスポイントで広く使われ、家庭用、業務用を問わず、インターネット接続に不可欠な技術となっています。

特に、IPアドレスとポート番号の両方を変換するNAPT(Network Address Port Translation、別名IPマスカレード)が一般的で、複数のデバイスが同じグローバルIPアドレスを共有してインターネットに接続できます。

NATの基本



インターネット通信には、世界で一意なグローバルIPアドレスが必要ですが、プライベートネットワーク内の機器にはプライベートIPアドレスが割り当てられ、そのままではインターネットに接続できません。NATは、ゲートウェイを通過するパケットのIPアドレスをグローバルIPアドレスまたはプライベートIPアドレスに変換することで、LAN内の機器がインターネットにアクセスできるようにします。

NATとNAPTの違い



初期のNATはIPアドレスのみを変換していましたが、これでは複数の機器が同時にインターネットに接続する際、機器数と同数のグローバルIPアドレスが必要でした。そこで、NAPTが導入され、IPアドレスだけでなくポート番号も変換することで、複数のプライベートIPアドレスを一つのグローバルIPアドレスで利用できるようになりました。NAPTはNATオーバーロード、PAT(Port Address Translation)、IPマスカレードなどの別名でも呼ばれます。

NAPTにより、複数のホストが異なるローカルアドレスを同一のグローバルアドレス配下の異なるポートとして表現でき、必要なグローバルアドレスの数を減らせます。動的NAPTは、ISPがユーザーにグローバルIPアドレスを割り当てる際にも利用されます。

IPアドレス枯渇問題の解決策



NATは、LAN内部のホストにプライベートIPアドレスを割り当て、インターネット接続時のみグローバルIPアドレスを利用する技術です。これにより、使用するグローバルIPアドレスの数を減らすことができ、IPアドレス枯渇問題の緩和に貢献しています。

動的NATと静的NAT



動的NAT: LAN内部のIPアドレスを、あらかじめ用意された外部IPアドレスの中から一つを選んで動的にマップする技術です。セキュリティやIPアドレス不足の解決に役立ちますが、IPアドレスが固定されないという問題点があります。
静的NAT: LAN内部のIPアドレスを常に同一の外部IPアドレスに静的にマップする技術です。これにより、外部から内部サーバにアクセスする際に常に同じIPアドレスを指定できます。

NATへの批判



NATは、インターネットが本来目指していたピアツーピア接続を妨げる可能性があると批判されています。また、FTPやSIPなどのVoIPを機能させるには、特別な工夫が必要な場合があります。さらに、複数のローカルIPアドレスからのアクセスを一つのグローバルIPアドレスで共有するため、外部からローカルネットワーク内のどのノードがアクセスしたかを特定するのが困難になり、悪意のある利用者の特定が難しくなるという問題点もあります。

NATの様々な呼び方



NATには、以下のような様々な呼び方があります。

Source NAT: 送信元IPアドレス変換
NAPT: Network Address Port Translation
IPマスカレード: LinuxでのNAPT実装名
PAT: Port Address Translation (Cisco)
NATオーバーロード: Ciscoでの呼称
ダイナミックENAT: Enhanced NAT (アライドテレシス)
DIP: Dynamic IP (Juniper SSG)
DIPP: Dynamic IP and port (Palo Alto Networks)
Destination NAT: 宛先IPアドレス変換
ポートフォワーディング
スタティックENAT: アライドテレシスでの呼称
VIP: Juniper SSGでの呼称
バーチャルIP: Fortinetでの呼称
Source and Destination NAT: 送信元と宛先両方のIPアドレスを変換
ダブルNAT: アライドテレシスでの呼称
MIP: Juniper SSGでの呼称

NATの分類



NATは、実装によって通信に異なる影響を与えるため、その種類を分類する必要があります。STUN(Session Traversal Utilities for NAT)プロトコルは、NATの実装をFull cone NAT、Restricted cone NAT、Port restricted cone NAT、Symmetric NATに分類し、その種類を特定しようとしました。しかし、これらの分類は不完全で、多くの機器を正しく評価するには不十分であると判明し、現在ではあまり使われなくなりました。多くのNATは複数の種類を組み合わせており、個々の振る舞いを評価することが重要です。RFC 4787では、動作に関する標準的な用語を導入して混乱の緩和を試みています。

関連技術



Connection Tracking: FTPやSIPなどのアプリケーションで、NATやNAPTがうまく動作しない問題を解決するための技術。Linuxのiptablesなどで実装されています。
GapNAT: 住友電工のADSLモデムに内蔵されたルーターに実装された、DMZを実現する機能。一つのグローバルIPアドレスしか提供されない環境下で、特定のコンピュータにグローバルIPアドレスを割り当て、その他のコンピュータにはローカルIPアドレスを割り当てます。
UPnP IGD: UPnPのインターネットゲートウェイデバイス仕様に準拠したNATルータは、対応アプリケーションからポートマッピングの作成や削除などの操作を受け付けます。
IPv4 IPv6間 NAT: IPv4IPv6が混在する移行期間において、両ネットワークを接続するNATが必要となります。

まとめ



NATは、現代のインターネット環境において、不可欠な技術です。IPアドレス変換によるネットワーク効率化だけでなく、セキュリティや柔軟なネットワーク構成にも貢献しています。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。