本サイトはプロモーション(広告)が含まれています。

NATとNAPT(IP マスカレード)の違いについて

NATとNAPT(IP マスカレード)の違いについて

NATとNAPT(IP マスカレード)の大きな違いは

IPアドレスの一対一での変換かIPアドレスとポートの組で変換という点です。

 まず、NAT(Network Address Translation)は、スペル通りアドレス(プライベートIPアドレス⇔グローバルIPアドレス)を変換(Translation)するものです。

 インターネットに接続する場合は、必ずグローバルIPアドレスを使用する必要があり、プライベートネットワークとインターネットの間にあるルーターなどのネットワーク機器に機能として備わっています。

 ただ、ルーターなどが保持するグローバルIPアドレスの数しか複数端末が同時にインターネットへ接続できないという問題でてきます。

 その不具合を解消するために登場した技術が、NAPT(Network Address and Port Translation)です。NATを進化させたといったイメージで良いと思いますが、今まで、ドレス(Network Address)を変換(Translation)していたところドレスとポートの組み(Network Address and Port)を変換(Translation)することで複数端末が接続できるように対応したという形です。

 名前のとおりなのでスペルを覚えれば理解できますね・・・

 なお、情報処理の試験ではNAPTやIPマスカレード、NAPT(IPマスカレード)などの記述が出てきて混乱させてきます。

 調べると、「Linux 上での NAPTの実装」をIPマスカレードと呼ぶらしいです。

つまり、NAPTとIPマスカレードは同義と捉えても問題なさそうです。

NAT(Network Address Translation) IPアドレスの一対一での変換。
NAPT(Network Address and Port Translation) ・IPアドレスとポートの組で変換。
・一つのIPアドレス(主にグローバルIPアドレス)を複数のプライベートIPアドレスの機器で共有する。

NAPTの変換について

NAPTでIPアドレスとポートの組で変換は以下のような感じです。

  1. クライアントのプライベートIPアドレスとポート番号をグローバルIPアドレスと任意のポート番号に変換
  2. 変換前の情報をルータなどにて変換テーブルに記録
  3. インターネットから応答が返ってきたときには宛先ポート番号を見て対応するプライベートIPアドレスを検索、変換前の情報に戻してクライアントに送信。

情報処理 の記事一覧

PAGE TOP