個人的リマインド用
参考
【AWS 入門】基本ネットワーク構成をマスターしよう!
ルーティングを超ざっくり解説!【何となく理解するIT】
サブネットマスクとCIDRを超ざっくり解説!【何となく理解するIT】
出てくるいろんな言葉たち
・VPC
・サブネット
・インターネットゲートウェイ
・NATゲートウェイ
・ルートテーブル
VPC(Virtual Private Cloud)
一番外枠にあるやつ
AWS上で仮想のネットワーク領域を作れる(どんなアプリを作るにしてもこの中に色々入れて作っていく)
どういう風に作るか
サブネットマスクのCIDRで切る(???)
例:172.16.1.0/24みたいな感じ
(補足)サブネットマスクとCIDR(サイダー)
1.サブネットマスク
ネットワーク(IPアドレス)の範囲を表せるようなもの
例:172.16.10.0~172.16.10.255というアドレス帯の範囲を示したい時
↓(サブネットマスクを使うと)
172.16.10.0/255.255.255.0(255~のとこがサブネットマスク)という感じに表せる
何がいいの?
アドレス帯の目的は0~255という数字を表したいのが目的
→サブネットマスクではそれがぱっと見で分かる
(ちなみに)
255を2進数にすると11111111(8bit),0は00000000(8bit)
サブネットマスクの255の3連単はそれぞれ8bitずつ与えられているということ
2.CIDR
255255ばっかで分かりにくいっていう時に役立つのがCIDR(CIDR表記ともいう+サブネットマスクよりこっちの方がいい、業務でよく使われる)
255.255.255.0
↓(CIDR表記では)
24と表す(172.16.10.0/24という感じ)
なぜ24
255は2進数で1が8個。255255255だと1が24個。
/20の場合は11111111.11111111.11110000.00000000(0が12個余ってる、2進数だと2の12乗個余ってる(4096個))
つまりは172.16.0.0 ~ 172.16.15.255までが表せる(難しい…)
サブネット
VPCの中をさらに細かく分ける単位
VPCを作ったなら必ず1つ以上のサブネットが必要
例:今回はパブリックサブネット(172.16.1.0/25)とプライベートサブネット(172.16.1.126/25)の2つに分割
※大事!!
パブリックサブネット→インターネットから入れるし出れる領域を想定して作ってる(ブラウザから叩いてすぐ入れる、IGWを通る)
プライベートサブネット→インターネットに出れる領域(IGWを通って出る)
→実際にAWSに上の名前でサブネットを設定するわけではなく、デフォルトゲートウェイがIGWに設定してあるルートテーブルをもったサブネットをパブリックサブネットという。また、それ以外をプライベートサブネットという。
インターネットゲートウェイ(IGW)
VPCの先端、入り口みたいなとこがIGW(インターネットゲートウェイ→これをVPCにつけることをアタッチという)
これをアタッチすることで外の世界との通信が可能になる
NATゲートウェイ
NATとはIPアドレスの変換。NATゲートウェイはNATをする。プライベートサブネット内のものは基本プライベートIPアドレスしか持たないが、NATすることで外でも使えるように。一方外から来ても、グローバルなIPアドレスを持たないから入ってこれない。
ルートテーブル
ルーティングの設定を行みたいに設定して、サブネット単位でくっつけることが出来る(パブリックサブネット用ルートテーブル、プライベートサブネット用ルートテーブルみたいな感じで作る)
パブリックサブネットに関しては、デフォルトゲートウェイをIGWに向ける。
プラーベトサブネットのデフォルトゲートウェイは、パブリックサブネット内にあるNATゲートウェイに向く。ちなみにNATゲートウェイはIGWに行く。
(補足)ルーティング
ルーティングは通信の宛先を決定する
例:192.168.1.0/24にサーバーが2台、192.168.2.0/24にサーバーが1台
同じネットワークだと通信の行き来が自由(httpのリクエストとか自由に投げれる)
別のネットワークと通信したい時に間にルータを置く
ルータの左側には192.168.1.254、右側には192.168.2.0/252を設定(それぞれ別のネットワークに所属しているよ)
**具体的に**
宛先: (別ネットワークのサーバーのアドレス)
ネクストホップ: (ルータの自分側アドレス)
固定した宛先でなくてもそっちのネットワークに行け!みたいにアバウトな感じで送れる
ちなみに
ネットワークからインターネットに出たい時はどうするか
→0.0.0.0/0(デフォルトゲートウェイ、全てのIPアドレスを指定する)を設定し、それとは別に宛先の指定を行う(スタティックルーティング、個別に指定しなくてもいい)