NAT(NetworkAddressTracslation)はIPアドレスを変換する技術のことです。普段よく耳にするNATですが、具体的にどのようなものになるのでしょうか?
一般的にルータにはNAT機能が付いてますので、普段意識する機会が少ないのですが、理解を深めておくとネットワークの知識がより深まります。
具体的にみていきましょう。
NATの種類は全部で4種類です。
- 静的NAT
- 動的NAT
- IPマスカレード
- ディスティネーションNAT(DNAT)
があります。
目次
NATが使われる目的
NATされる目的を用途ごとに分けて説明していきます。
プライベートIPアドレスとグローバルIPアドレスの変換
NATが最も頻繁に利用されるシーンとしては、普段私たちがインターネットを利用する際に、プライベートIPアドレスとグローバルIPアドレスの変換に使われます。
それぞれのパソコンにグローバルIPアドレスを直接付与すればNATは必要ありませんが、グローバルIPアドレスの数にも限界があり枯渇していきますので、NATによってLAN内ではグローバルIPアドレスを共有する使い方をします。
セキュリティの向上
NATを使うことで、内部のIPアドレスは外部からは隠蔽することができ、セキュリティを高められます。外部の攻撃者はNATによって変換されたIPアドレスしか見ることができないので、ターゲットとなるサーバや端末を特定できません。
同一ネットワーク帯のIPアドレス重複防止
同一ネットワークアドレス帯を持つネットワーク同士を接続することができます。
パソコンとサーバはそれぞれ同一のネットワーク帯に属していますが、「ルータ1」と「ルータ2」で発着信のパケットのソースアドレスを変換することで双方の通信が可能になります。
Webサーバの負荷分散
NATされるのは、送信先IPアドレスになります。クライアントからのリクエストを内部ネットワークの複数のサーバに負荷分散します。
NATの種類
冒頭に説明したNATの種類4つを簡単に説明します。
静的NAT
静的NATは、内部と外部のIPアドレスを1対1で対応づけするNATです。
内部のIPアドレスが192.168.0.1であれば、外部のIPアドレスは10.0.0.1、192.168.0.2であれば10.0.0.2といった具合に対になっています。
動的NAT
動的NATは、静的NAT同様に内部と外部のIPアドレスを1対1で接続しますが、その方法が異なります。静的NATは予め1対1のペアを決めていますが、動的NATは通信が発生した際に初めてペアが決まります。そして一定時間が経過したら、そのペアは解消されてしまいます。
下の図は動的NAT一例を表した図になります。内部のIPアドレスが3つ、外部のIPアドレスが2つ存在しており、通信が開始された順番にペアは最大で2つしか成立しません。3番目に開始された通信に関しては、割り当てる外部アドレスが存在しないことがわかります。
IPマスカレード
IPマスカレードとは、複数の内部IPアドレスを同一の外部IPアドレスに割り当てる技術です。これにより、内部から外部へのパケットの送信元IPアドレスは同じになります。
外部から内部への戻りパケットは、内部のだれに転送するかが不明です。そこでIPマスカレードでアドレスを変換するとき外部の送信元ポート番号で内部の端末を一気に識別します。
上の図はIPマスカレードの一例です。
ここでは、3つのIPアドレスで同時に同一の外部IPアドレスに変換されます。
この状態だと戻りパケットが宛先不明になりますので、それぞれの内部IPアドレスに対応する外部の送信元ポート番号を割り当てます。外部の送信元ポート番号は、1000から2000まで動的に決定されます。
具体的には、192.168.0.1/10.0.0.1と1000のように割り当てられて、外部サーバからパケットの宛先が、10.0.0.1:1000であれば、ルータは192.168.0.1に転送する。といった仕組みです。