【ネットワーク】NATとは。エンジニアのひよこ_level10読者になるエンジニアのひよこ_level10毎日更新してた人。【ネットワーク】NATとは。必要なのか【364日目】2018-10-12【ネットワーク】NATとは。自分メモTweetネットワークアドレス変換???ネットワークにおいて、『NAT』と呼ばれるものがあります。Translation』の略で、ネットワークアドレス変換のことを指します。IPアドレスを変換するものとされていますが、なぜこのようなものが必要なのでしょうか。基本的な話も含むので、わかってるよ!って方は1から読み始めてください。0.通信ってどうやってるのかAさんが、Bさんに通信したい!そんなときに何をしているか。通信するデータ(パケット)に、Aさんの住所(ipアドレス)とBさんの住所を書いておきます。実際は違いますが、イメージは以下。from:aaa.bbb.ccc.102to:xxx.yyy.zzz.193これで、Aさん(aaa.bbb.ccc.102)から、Bさん(xxx.yyy.zzz.193)に通信が行われるデータであるのがわかりますね。データは送りっぱなしじゃなく、返信があるので、Bさんから返信が来ますね。from:xxx.yyy.zzz.193to:aaa.bbb.ccc.102こんなふうに、返信が来るわけですね。fromとtoの住所が逆になりました。NATは、プライベートIPアドレスとグローバルIPアドレスを変換さて、一個問題がありまして。私達の『住所』であるipアドレスは『無限じゃない』です。『グローバルIPアドレス』『プライベートIPアドレス』の2つに分けました。プライベートIPアドレスは、『192.168.xxx.yyy』みたいなアドレスを指します。これは、住所でいう『201号室』みたいなものです。私達のパソコンには、このプライベートIPアドレスというものが、ルーター等で割り振られています。このプライベートIPアドレスだけで通信しようとすると、以下のような感じになります。手紙を送るときに、上みたいに情報が送られても困りますね。NATというのものは、プライベートIPアドレス(201号室)を、グローバルIPアドレス(xxx市yyy区zzz番地)に変換してデータを送ってくれるのです。これのおかげで、無限じゃないIPアドレスを、よりたくさん扱えますね。通信の例AさんのPCから、ルーター(NAT)を通して、Googleに通信をするときは、1.Aさんがどこかに(8.8.8.8)通信したいfrom:192.168.aaa.aaato:8.8.8.82.ルーターが変換from:xxx.yyy.zzz.193to:8.8.8.83.8.8.8.8から返信from:8.8.8.8to:xxx.yyy.zzz.1934.ルーターがAさんに戻すfrom:8.8.8.8to:192.168.aaa.aaa2.どうやってルーターは、IPアドレスを判断してるの?NATさんは、複数のプライベートIPアドレスを捌く必要があります。同時に通信が起こったときに、上の例の4のときは、どのプライベートIPに変換すればいいか、パット見わからないとかなりますよね。その対応方法は、いくつかありますが、今ルーターで一般的に使われている、NAPTというやり方を説明します。3.NAPTは、ポートも変換するやっていることはすごく単純で、プライベートIPアドレスで通信するときに、ポートも一緒に付与する。20:33Tweet関連記事2019-07-16読みやすいプログラムを書くために。AWS知ってる方は、EC2を思い浮かべれば大体合ってるはず。はてなブログPro【毎日ブログ更新!】新人エンジニアです!技術以外も書いたり。-aを打てるまで)ぶっ倒れてました。:Re16スマブラ特訓したりとか。Oystersリンク集Shirox.comはてなブログをはじめよう!willow710kutさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。