NATとは「Network Address Translation」の略であり、IPパケットのヘッダに含まれるIPパケットのアドレスを、別のIPアドレスに変換する技術を意味します。一般には組織内で使用するプライベートIPアドレスを、組織外との通信で使用するグローバルIPアドレスに変換する際に使用します。
プライベートIPアドレスとは、IPv4が抱えているIPアドレス不足問題を、緩和するために導入された考え方です。IPv4ではIPアドレスを32ビットで表現しているため、最大約40億のアドレスを設定可能です。しかしインターネットが急速に普及した結果、IPアドレスを必要とする端末が急増し、この程度のIPアドレス数ではいずれ枯渇するだろうという議論が起きました。そこで全ての端末に固有のグローバルIPアドレスを割り当てるのではなく、グローバルIPアドレスは組織毎に割り当て、組織内ではグローバルIPアドレスを使用しないというアプローチが考えだされたのです。これにもとづき組織内で使用するためのIPアドレスとして割り当てられたのが、プライベートIPアドレスです。
プライベートIPアドレスの範囲はRFC 1918で規定されており、大規模組織向けのクラスAでは10.0.0.0~10.255.255.255、中規模組織向けのクラスBでは172.16.0.0~172.31.255.255、小規模組織向けのクラスCでは192.168.0.0~192.168.255.255となっています。一般に組織内に設置された端末には、これらのプライベートIPアドレスが割り当てられています。
しかし端末からインターネット経由で組織外のサーバにアクセスする場合、送信元のIPアドレスがプライベートIPのままでは、サーバは送信元の端末を特定できません。プライベートIPアドレスは複数の組織で共用されているIPアドレスだからです。そこで組織内のネットワークからインターネットへとIPパケットを送り出す際には、その組織固有のグローバルIPアドレスへと変換する必要があります。そのための技術がNATです。なおNATは内部ネットワークを外部から隠蔽する効果もあるので、ネットワークを分割しフィルタ効果によるセキュリティが期待されていたことがあります。トンネリングによるEnd to Endを接続する各種技術もあるので、NATがセキュリティの脅威の対応に万全であるということではありません。
NATはアドレス変換を1対1で行うため、複数端末からの通信を同時に扱うことができません。この問題を解決するため、ポート番号の変換も行うものをNAPT(Network Address Port Translation)あるいはIPマスカレードと言います。現在ではNAPTも含めてNATと呼ぶことが多くなっています。