ネットワーク - NATとは?
はじめに
今回は、NATについて学んでのでメモりたいと思います。
NATって?
Network Address Translationの略で、プライベートIPをパブリックIPに、またその逆を行う仕組みのことです。
これを用いると、例えばプライベートなネットワークに置かれたホスト(サーバ など)がインターネットに接続して通信を行えます。
例えば、
プライベートなネットワークに置かれたサーバに、ソフトウェアをインストールしたい時などです。
NATの仕組み
NATは、上で書いたようにIPアドレスを変換する仕組みで、2つのネットワークインターフェースを持ちます。一方のインターフェースは一般的にパブリックIPを設定します。他方にはプライベートIPを設定し、プライベートサブネットに接続します。
それでは、プライベートにおかれたホストAと、インターネット上におかれたホストBの通信の流れを見てみます。↓のような流れになります。
- ホストAが、ホストBに向けてインターネットにパケットを送信しようとすると、NATは、パケットの送信元IPアドレスを自身に設定してあるパブリックIPに変換します。
- ホストBは、NATからパケットが送られているように見えるので、応答パケットをNATに返します。
- NATは、戻ってきた応答パケットの宛先を、ホストAのプライベートIPに変換してホストAのネットワークに送ります。
以上のようにして、プライベートネットワークがインターネットと通信することができます。一方、インターネット側からNATを介してプライベートネットワークにアクセスすることはできません。