NATとNAPTの違いを徹底的に解説

2020年3月22日

NATとNAPTの違い

NAPTとは、NATの技術に加え、ポート番号の変換も行えるネットワーク変換技術です。これにより、NAPTはNATの課題であった複数同時接続を可能としました。
そのため、NAPTとはNATのパワーアップバージョンと言えるでしょう。

NATとは何か?

NATの概要

ではNATとはいったい何なのでしょうか?
NATとは、ネットワークアドレス変換技術の1つで、プライベートIPアドレスグローバルIPアドレスに変換する技術のことを指します。

プライベートIPアドレスとグローバルIPアドレス

グローバルIPアドレス

それではプライベートIPアドレスとグローバルIPアドレスとは何なのでしょうか?
IPアドレスとは、ネットワークの世界の住所のようなものです。
このIPアドレスというのは、アイキャンと呼ばれるICANN(The Internet Corporation for Assigned Names and Numbersの略)という組織が管理しています。
ICANNの仕事の1つとして、IPアドレスがネットワークの世界で重複しないようにするというものがあります。
IPアドレスはネットワークの世界の住所なので、これが重複してしまうとネットワークの世界に混乱が生じてしまいます。
ICANNが重複をゆるさない、世界に1つしかないIPアドレスを、グローバルIPアドレスと呼びます。

プライベートIPアドレス

先ほど登場したグローバルIPアドレスはネットワークの世界でゆくゆくは枯渇してしまうのではないかと懸念されています。IPアドレスは32ビット、つまり32個の0と1で表現された世界にあり、43億弱のグローバルIPアドレスがありますが、このような数であっても、広がり続けるネットワークの世界では不足が予想されています。
そのため、1つの会社の中にネットワークにつなげたいPCが30台あったとしても、 ICANNはその1つ1つにグローバルIPアドレスを付与するということはしません。しかし、ICANNはグローバルIPアドレスを所有した組織が自由に使えるようなIPアドレスも用意しています。
これがプライベートIPアドレスです。
先ほどの会社の例のように、1つの組織で複数の機器からネットワークにつなげたいという場合には、このプライベートIPアドレスが使用されます。

なぜNATが必要なのか?

ではあらためて、なぜNATの技術は必要なのでしょうか。
先ほどのグローバルIPアドレスとプライベートIPアドレスの話にもどると、グローバルIPアドレスがネットワークの世界の住所だとしたら、プライベートIPアドレスはその住所の中の部屋の名前のようなものです。例えば「子供部屋」とか「201号室」とかに当たるのがプライベートIPアドレスです。
ネットワークの世界では、通信のためにネットワークにつなげる先のグローバルIPアドレスとつなげる元のグローバルIPアドレスを明らかにする必要があるのですが、何もしない状態ではプライベートIPアドレスを使用している人はネットワークにつなげることができなくなってしまいます。
そのため、NATの技術を使って、プライベートIPアドレスをグローバルIPアドレスに変換し、プライベートIPアドレスを使っている機器であってもネットワークにつなげられるようにしています。
イメージとしては、あて先の住所と送り元の住所を明記しなければ手紙を送信できない世界があり、普段は「子供部屋」で過ごしている人が、手紙を書く際は送り元として「子供部屋」とは記載せず、しっかりと家の住所を書くようなものです。

NATの課題

NATとはプライベートIPアドレスをグローバルIPアドレスに変換し、ひいてはグローバルIPアドレスの枯渇を防いでくれる便利な機能ですが、弱点もありました。
それはグローバルIPアドレスの数以上のユーザーが同時にネットワークに接続することができないことです。
つまり、グローバルIPアドレスを1つ所有し、その中のプライベートIPアドレスでやりくりしているような組織は、誰かがネットワークにつなげている時、他の人はネットワークにつなげられません。
こうした課題を解消したのがNAPTです。

NAPTとは何か?

NAPTの概要

先ほど述べたように、NATは便利な機能であるものの、複数の人が同時にネットワークに接続することができないという課題を抱えていました。
これを解消したのがNAPTなのですが、どうやって対応したのでしょうか。
それはプライベートIPアドレスからグローバルIPアドレスに変換するだけでなく、NAPTはポート番号も変更することで対応しようとしました。

ポート番号の変更

ではなぜポート番号を変更したら、複数同時接続できないというNATの課題は解消されたのでしょうか。
ポート(port)というのは、直訳すれば「港」を意味しています。
NATの問題とはこのポート番号が変わらなかったことが原因だったのですが、イメージとしては1つしか港がないため、船の往来、つまりネットワークの通信がしにくい状態だったということです。
NAPTはこのポート番号を変更し、複数の港を作ることで、同時接続を可能にしました。

参考

書籍

  • 網野衛二『[改訂新版] 3分間ネットワーク基礎講座』技術評論社、2010年

Webサイト