ネットワーク アドレス変換、ファイアウォール、プロキシ

ネットワーク アドレス変換、ファイアウォール、プロキシ

ネットワーク アドレス変換 (NAT) は、1 つのネットワークを別のネットワークに接続するためのメカニズムである。通常、NAT は、自宅やオフィスのプライベート ネットワークをインターネットに接続するために使う。これら 2 つのネットワーク間のゲートウェイは、プライベート ネットワークからインターネット上のコンピュータに送信されたパケットを変更し、パケットがゲートウェイから送信されたように見せかける。逆に、インターネットからゲートウェイにパケットが送信されると、ゲートウェイは関連するプライベート コンピュータにパケットを転送する。

NAT ゲートウェイが使われるのは、主に次の 2 つの理由がある。

  • セキュリティとアクセス制御の強化。NAT デバイスは、管理されていないインターネットからのすべてのトラフィックが、安全と考えられるホーム ネットワークに到達するまでに通過しなければならない、集中的なポイントを提供する。NAT ソフトウェアには、多くの場合、以下に示すように、有害である可能性のあるパケットを除外する機能がある。
  • アドレス空間の拡大。インターネットの爆発的な普及によって、アドレスの需要が非常に高まっている。今日のインターネットの基になるプロトコルである、インターネット プロトコル バージョン 4 (IPv4) では、利用できる一意のアドレスが急速に不足しつつある。NAT デバイスにより、プライベート コンピュータは 1 つのインターネット プロトコル (IP) アドレスを "共有" できる。各コンピュータは固有の IP アドレスを持つが、そのアドレスはホーム ネットワーク内でのみ有効である。ホーム ネットワーク外のコンピュータは、NAT デバイスのパブリック アドレスを使って、ホーム ネットワーク内のコンピュータと通信する。

ファイアウォールは、受信パケットまたは送信パケットを検査し、ファイアウォールの管理者が許可していないパケットを拒否するデバイスまたはソフトウェアである。ほとんどのファイアウォールは、セキュリティの理由により、前の送信パケットと同じポートでない受信パケットをドロップする。この点では、ファイアウォールは NAT デバイスのように機能し、意図するターゲットが不明なパケットは転送しない。多くの NAT デバイスは、ファイアウォール機能を実装している。

プロキシは、内部ネットワークのコンピュータに代わって、外部ネットワークに要求を中継する。プロキシは、応答時間を短縮するために、World Wide Web トラフィックなどの一部の要求をキャッシュできる。また、通常、アクセス制御を向上させるために、内部のコンピュータにインストールされたプロキシ クライアント ソフトウェアと連携して動作する。外部のコンピュータにはプロキシの外部アドレスしかわからないので、プロキシは内部のコンピュータに対して NAT のような機能を果たしていると考えることができる。

残念ながら、これらのすべてのメカニズムは、シームレスなネットワーク ゲーム体験を提供する上では、しばしば障害となる。たとえば、プライベート アドレスと共有パブリック アドレスの両方を持っていると、適切な宛先へのパケットの送信が困難になることがある。ときには、オンラインでゲームを実行するために、ユーザーが特定のポートで転送を有効にしなければならない。しかし、次世代のインターネット プロトコル (IPv6) が広く普及するまでは、アドレス共有などの方法がさらに使われると予想される。

Microsoft® DirectPlay® には、ユニバーサル プラグ アンド プレイなど数多くの機能があり、これにより、NAT のサポートという大変な作業が簡単になる。ここでは、以下のトピックについて説明する。