STAGE 04 / 4-3 ネットワークサービス

NATの仕組み

考えてみよう

社内で使っている192.168.1.10というプライベートIPアドレスのまま、インターネット上のWebサーバーと直接通信できるでしょうか?

Stage02で、プライベートIPアドレスはインターネット上でルーティングされない、と学びましたね。では、プライベートIPしか持たないPCが、どうやってインターネットのサーバーと通信できているのでしょうか。

プライベートIPは、そのままでは外に出られない

Stage02で学んだ通り、10.0.0.0/8192.168.0.0/16などのプライベートIPアドレスは、インターネット上のルーターには基本的にルーティングされません。世界中の会社が同じ192.168.1.1を使っていたら、インターネット側は誰宛てのパケットか判断できないからです。

しかし現実には、社内のPCは日常的にインターネットへアクセスできています。これを可能にしているのがNAT(Network Address Translation:ネットワークアドレス変換)です。NATは、パケットが社内ネットワークの境界(多くはルーターやファイアウォール)を通過するタイミングで、送信元IPアドレスをプライベートIPからグローバルIPへ書き換える技術です。

社内便で使う内線番号(プライベートIP)を、外部に電話をかけるときだけ代表番号(グローバルIP)に変換してもらうイメージです。相手には代表番号だけが見え、内線番号を知る必要はありません。

NATの4つの用語を整理する

NATを理解するうえで避けて通れないのが、次の4つの用語です。混同しやすいので、必ず「inside/outside」と「local/global」の2軸で整理しましょう。

用語意味
inside local社内から見たときの、変換前のプライベートIPアドレス
inside global社内の機器が外部から見えるときの、変換後のグローバルIPアドレス
outside local外部の機器が社内から見えるときのアドレス(通常は変わらない)
outside global外部から見た、外部機器の本来のグローバルIPアドレス

社内のPC(192.168.1.10)がインターネット上のサーバー(203.0.113.5)と通信する典型例で考えると、192.168.1.10inside local、NATルーターで変換された後の203.0.113.5向けの送信元アドレス(例:198.51.100.1)がinside globalにあたります。「inside」は変換対象が社内側の機器であることを示し、「local/global」は変換前か変換後かを示している、と捉えると整理しやすくなります。

確認問題

社内のPC192.168.1.10がインターネットにアクセスする際、NATルーターの変換後に使われるグローバルIPアドレスは、NAT用語で何と呼ばれるでしょう?

答えを見る

inside globalです。「inside」は社内側の機器を指し、「global」は変換後の(インターネット上で通用する)アドレスであることを示します。変換前の192.168.1.10自体はinside localと呼ばれます。

NATの3つの方式

NATには主に3つの動作方式があります。

PATは、代表番号1本を複数の内線が同時に使えるように、内線ごとに「呼び出し音のパターン(ポート番号)」を変えて区別するようなものです。グローバルIPアドレスが不足しがちな現実を考えると、PATの存在意義がよく分かります。

確認問題

1つのグローバルIPアドレスを、ポート番号を使って複数の社内PCで共有するNAT方式を何と呼ぶでしょう?

答えを見る

PAT(Port Address Translation)です。IOSの設定コマンドではoverloadキーワードで指定します。グローバルIPアドレスが限られている環境でも、多数の内部ホストが同時にインターネットへ出られるのはPATのおかげです。

NATのメリットとデメリット

NATにはグローバルIPアドレスの節約という大きなメリットがある一方、外部から社内のアドレス構成が見えにくくなるというセキュリティ上の副次的効果もあります。ただし、NATはあくまでアドレス変換の仕組みであり、ファイアウォールの代替として設計されたものではない点には注意が必要です。また、変換テーブルを保持する必要があるため、エンドツーエンドの透過性が失われ、一部のプロトコル(IPsecの一部モードなど)では追加の考慮が必要になります。

試験でのポイント

CCNA試験では、inside local/inside global/outside local/outside globalの4用語の組み合わせを、具体的なアドレス例とともに問う設問が頻出です。「social」と覚えて「inside/outside」と「local/global」をクロスで整理する、あるいは「local=手元(社内)から見た姿、global=世界(グローバル)から見た姿」という視点で覚えると混乱しにくくなります。また、スタティックNAT・ダイナミックNAT・PATの使い分け(1対1固定/1対1プール/多対1でポート共有)も必ず区別できるようにしておきましょう。

ゆみちゃん
ゆみ

NATはプライベートIPをグローバルIPに変換する仕組み。inside local/inside global/outside local/outside globalの4用語は、「inside/outside」と「local/global」の2軸で整理するのがコツだよ。次はいよいよ実際の設定、static・dynamic・PATのコマンドを打っていくよ。