Network
nat

NATに関して可能な限り分かりやすくまとめて見た。

はじめに

現代は老若男女問わずパソコンを使用してインターネットの世界を楽しめる
時代であり、殆どの家にインターネット回線を引いている状況です。

何気なく利用している、インターネットではありますが
その裏ではNATと言う技術の恩恵を誰もが受けています。

自分のパソコン
おとうさんのパソコン
おかあさんのパソコン
おじいちゃんのワークステーション

これら全てのパソコンが同時にインターネット接続できるのもNATのおかげであり、
これが無ければ、回線の奪い合いを行う骨肉の争いにもなりかねません。
家庭の平和を守っている技術とも言えます。
※正確にはNAPT(PAT)になりますが、後述します。

NATとはなにか?

NAT(Network Address Translation)

ねっとわーく あどれす とらんすれーしょん

ネットワークのアドレスを変換する技術のこと

  • ネットワークアドレスとは?
    パソコンやルータに設定される住所の様な物であり、ネットワークアドレスには、世界で一意な値であるグローバルIPアドレスと自由に決められるプライベートIPアドレスが存在する。

プライベートIPアドレス参考
http://www.atmarkit.co.jp/aig/06network/privateip.html

グローバルIPアドレス参考
http://www.atmarkit.co.jp/aig/06network/globalip.html

なぜNATが必要であるのか?

プライベートIPアドレスはインターネット上に経路(ルーティング)が無い為、通信先の相手がどこへ通信を返せばいいかわかりません。
そのため、インターネットでの通信のやり取りはNATでプライベートIPアドレスをグローバルIPアドレスに変換して行う必要があります。

nat1.png

nat2ー.png

直接グローバルIPアドレスをパソコンに設定する事も可能ではありますが、セキュリティ考慮が必要であったり、接続するパソコン分グローバルIPアドレスが必要になります。
一般家庭で複数グローバルIPアドレスを持つことは費用的にも現実的でない為、NAT技術を利用します。

NATの種類

NATは大きく分けて2種類あります。

  • NAT
  • NAPT(PAT)

NATは「1対1」でのアドレス変換をおこない、NAPT(PAT)は「N対1」のアドレス変換を行う技術になります。

ここからNATとNAPT(PAT)は言葉として分けて説明していきます。

NATについて詳しく

ルータやFW配下のプライベートIPアドレスを持ったWEBサーバを、外部公開する場合などに利用する技術。

宛先を変換するDNAT(デスティネーションNAT)
送信先グローバルIPアドレス → 送信先プライベートIPアドレス
nat3.png

送信元を変換するSNAT(ソースナット)
送信元プライベートIPアドレス → 送信元グローバルIPアドレス
nat4.png

少し脱線するが、WEBサーバへのアクセスはHttpとHttpsのみ許可、WEBサーバからの通信は不可とする場合はアクセス制御で設定を行う。

NAPT(PAT)について詳しく

冒頭で説明した、家族全員が同時にインターネット接続できるようになる技術です。

NATと違う部分としては、変換するグローバルIPアドレスにポート番号を割り当てている為、複数のプライベートIPアドレスを一つのグローバルIPアドレスに変換する事が可能になります。
nat5.png

変換前と変換後のIPアドレスとポート番号をrouterのNAPT変換テーブルに記録してる。

変換前IP 変換前ポート 変換後IP 変換後ポート
192.168.1.1 10000 100.100.100.100 10001
192.168.1.2 20000 100.100.100.100 20001

利用したツール

cacoo
https://cacoo.com/diagrams/