F5 GLOSSARY

Network Address Port Translation (NAPT)

NAPTとは「Network Address Port Translation」の略であり、TCP(UDP)/IPパケットに含まれるIPアドレスとポート番号を、別のIPアドレスとポート番号に変換する技術です。IPマスカレードと呼ぶこともあります。これはIPアドレス変換技術であるNAT(Network Address Translation)がさらに発展したものです。

NATは、IPパケットのヘッダに含まれるIPパケットのアドレスを、別のIPパケットのアドレスに変換する技術です。一般に組織内の端末は、IPv4のアドレス枯渇問題を緩和するために導入されたプライベートIPアドレスを割り当てられ、組織外のサーバ等とインターネット経由で通信を行う際にはグローバルIPアドレスを使用します。この時、プライベートIPアドレスとグローバルIPアドレスとの変換を行うのがNATです。しかしNATはアドレス変換を1対1で行うため、複数端末からの通信を同時に扱うことができません。この問題を解決するために登場したのがNAPTです。

NAPTでは、プライベートIPアドレスを割り当てられた端末からパケットを受け取ると、送信元のIPアドレスをグローバルIPアドレスに変換すると共に、送信元のポート番号も変更し、変更前との対応情報を記録した上で、インターネット上のサーバへと送り出します。サーバからの返信は、この変更後のIPアドレスとポート番号宛に送られてきます。NAPTは記録した情報にもとづき、元のプライベートIPアドレスとポート番号を復元し、送信元の端末に返信パケットを渡します。NAPTでポート番号を変更するのは、変更後のポート番号によって、変更前のプライベートIPアドレスを識別するためです。NAPT経由で複数の端末が同時に通信を行った場合、外部に対する送信元IPアドレスは同一のグローバルIPアドレスになりますが、ポート番号は端末毎に異なります。これで端末の識別を行うことで、複数端末の同時通信が可能になります。

現在ではNAPTも含めてNATと呼ぶことが多くなっています。なおNAT/NAPTは内部ネットワークを外部から隠蔽する効果もあるので、ネットワークを分割しフィルタ効果によるセキュリティが期待されていたことがあります。トンネリングによるEnd to Endを接続する各種技術もあるので、NATがセキュリティの脅威の対応に万全であるということではありません。


< Return to the glossary