NAT(Network Address Translation)は、TCP/IPの通信で使用するIPアドレスを変換する技術である。会社内や家庭内の閉じたネットワーク環境で使うプライベートIPアドレスと、インターネット上で通信するためのグローバルIPアドレスを相互に変換する。
閉じたネットと外部を結ぶ
プライベートIPアドレスとは、会社内や家庭内といった、特定のネットワーク内部だけで使えるIPアドレスである。
IPアドレスを管理するICANNがプライベートIPアドレスで使えるIPアドレスを定めている。具体的には、「10.0.0.0~10.255.255.255」「172.16.0.0~172.31.255.255」「192.168.0.0~192.168.255.255」である。
閉じたネットワーク内であれば、プライベートIPアドレスだけを使って問題なく通信できる。例えると、同じビル内に送る社内便ならば、社内だけで使っている独自の略称を使って宛名を書いても、問題なく相手に届くようなものだ(PICT1)。
ただしプライベートIPアドレスは一意ではないので、インターネット上での通信に使えない。インターネットで使えるグローバルIPアドレスに変換する必要がある。それを実現するのがNATである。
プライベートIPアドレスが割り当てられた端末が、インターネット上の相手と通信したい場合、まずはNATの機能を持つコンピューターやネットワーク機器にパケットを送る。NATの機能を持つ機器は、受け取ったパケットのIPヘッダーにある宛先や送信元のプライベートIPアドレスをグローバルIPアドレスに変換してインターネットに送り出す。
こうすることで、そのパケットはインターネット上で正しく転送されて相手に届く。パケットの送信元は閉じたネットワーク内部の端末だが、パケットが届いた相手からはあたかもグローバルIPアドレスを持つ端末から送られてきたように見えるのだ。