NAPTとは

NAPT(Network Address Port Translation)は、1つのグローバルIPアドレスを複数のプライベートIPアドレスで共有し、インターネットへの同時接続を可能にするネットワークアドレス変換技術のことです。

一般的にはIPマスカレードとも呼ばれ、IPアドレスの変換に加えてポート番号も識別子として利用することで、個々の通信を正確に区別します。IPv4アドレスの枯渇対策として、家庭用ルーターから企業ネットワークまで幅広く採用されている基盤技術です。

NAPTの仕組みと役割

NAPTは、OSI参照モデルのネットワーク層(IPアドレス)だけでなく、トランスポート層(ポート番号)の情報も書き換える点に最大の特徴があります。

1. 送信時の処理

内部ネットワークの端末が外部へ通信を開始する際、NAPTデバイス(ルーター等)は、パケットの送信元IPアドレスをグローバルIPアドレスに書き換えると同時に、送信元ポート番号も重複しない任意の値に変換します。この変換前後の情報は、NAPTテーブルという管理表に一時的に保存されます。

2. 受信時の処理

外部のサーバーから応答パケットが戻ってくると、NAPTデバイスはパケットの宛先ポート番号を確認します。NAPTテーブルを参照し、そのポート番号に対応する内部端末のプライベートIPアドレスと元のポート番号を特定して、パケットを正確に配送します。

NATとNAPTの違い

基本的なアドレス変換技術であるNAT(静的NAT)と比較することで、NAPTの効率性が明確になります。

比較項目NAT(静的NAT)NAPT(IPマスカレード)
アドレス比率1:1多:1
変換対象IPアドレスのみIPアドレス + ポート番号
同時接続数グローバルIPの数に依存60,000以上の同時セッションが可能
主な用途公開サーバーの設置クライアント端末のネット接続
NATとNAPTの違い

理論的な最大同時接続数

NAPTで利用可能なポート番号は、TCP/UDPの仕様により16ビットで定義されています。そのため、理論上の最大ポート数は

2^{16} = 65,536

となります。

実際には、ウェルノウンポート(0〜1023)や登録済みポートの一部を除いた、エフェメラルポートと呼ばれる領域が変換に使用されます。1つのグローバルIPアドレス $G$ に対して同時に維持できるセッションの最大数 $S$ は、利用可能なポート範囲の大きさに依存します。

S \approx 65,535 - 1,024 = 64,511

このため、1つのグローバルIPアドレスがあれば、理論上は数万単位の通信を同時に識別することが可能です。

メリットと運用上の課題

メリット

  • IPアドレスの劇的な節約:数千台規模の組織であっても、数個のグローバルIPアドレスで運用が可能になります。
  • セキュリティの向上:外部からはNAPTデバイスのIPアドレスしか見えず、内部端末への直接的なアクセスが遮断されるため、簡易的なファイアウォールとして機能します。

課題と留意点

  • プロトコルの制約:FTPのアクティブモードや一部のVoIP(IP電話)、オンラインゲームなど、パケットのデータ部分にIPアドレスやポート情報を書き込むプロトコルでは、NAPTを正常に通過できず、通信エラーが発生することがあります。
  • 処理負荷:パケットごとにIPヘッダーとTCP/UDPヘッダーの両方を書き換え、チェックサムを再計算する必要があるため、高速な通信環境ではネットワーク機器のCPU性能が重要となります。

NAPTは、IPv6への完全移行が完了するまでの間、既存のIPv4資産を活用し続けるために欠かすことのできない、現代インターネットの延命と発展を支える中核技術です。

関連用語

パケット | 今更聞けないIT用語集
プロトコル | 今更聞けないIT用語集
クラウドソリューション

お問い合わせ

システム開発・アプリ開発に関するご相談がございましたら、APPSWINGBYまでお気軽にご連絡ください。

APPSWINGBYの

ソリューション

APPSWINGBYのセキュリティサービスについて、詳しくは以下のメニューからお進みください。

システム開発

既存事業のDXによる新規開発、既存業務システムの引継ぎ・機能追加、表計算ソフトによる管理からの卒業等々、様々なWebシステムの開発を行っています。

iOS/Androidアプリ開発

既存事業のDXによるアプリの新規開発から既存アプリの改修・機能追加まで様々なアプリ開発における様々な課題・問題を解決しています。


リファクタリング

他のベンダーが開発したウェブサービスやアプリの不具合改修やソースコードの最適化、また、クラウド移行によってランニングコストが大幅にあがってしまったシステムのリアーキテクチャなどの行っています。