IPマスカレード
LANで利用するプライベートIPアドレスと、インターネット上で利用するグローバルIPアドレスとを、1対複数で相互に変換する技術です。
概要 |
グローバルIPアドレスを複数のコンピュータで共有することができ、ルータなどによく実装されています。インターネット宛てのパケットが届くと、送信元IPアドレスをグローバルIPアドレスに書き換えます。この時、ポート番号も書き換えて、その対応表を覚えておきます。そしてインターネットへ送出します。インターネット側からパケットを受信した場合には、着信したポートから以前の対応表をもとに書き戻し、LAN内に送出します。 |
解説 |
LANで利用するプライベートIPアドレスと、インターネット上で利用できるグローバルIPアドレスとを相互に変換する技術で、1つのグローバルIPアドレスを複数のコンピュータで共用することができます。ルータなどによく実装されている機能です。プライベートIPアドレスとグローバルIPアドレスとを1対1で変換するNATに対して、 IPマスカレードでは、TCPやUDPのポート番号までを含めて変換を行います。
これによって、1対複数の変換が可能となり、グローバルIPアドレスが1つしかない環境においても、複数のコンピュータが同時にインターネットヘ接続することができるようになるわけです。ただし、一見便利なこの機能にも弱点があり、一部のアプリケーションが動かなくなってしまうなどの制約が生じます。これは、アプリケーションによっては通信に用いるポート番号を固定にしていることがあり、その場合はポート番号まで変換してしまうIPマスカレードでは利用できなくなってしまうからです。 また、複数のコンピュータが同時に接続できるといっても、同一IPアドレスからの接続は1つに限定しているようなアプリケーションでは、やはり複数のユーザが同時にサービスを受けるということはできません。本来IPマスカレードという言葉はLinuxというOSで実装された機能の名前でしかなく、正確にはNAPT(Network Address Port Translation)という呼び方が正しくなります。ただし、IPマスカレードという呼び名の方が実際には普及しており、場合によっては「IPマスカレード=アドレス変換」という意味で、NATと一括りにされているケースも多いようです。 |