はじめに
最近、業務で、cloudformationを用いてAWSの環境を構築しているのですが、ネットワーク周りの自分の知識が弱くつまづいてしまうことが多いため、まとめてみようと思います。
VPC
VPCとはVirtual Private Cloudの略で、AWSのアカウント内にプライベートな仮想ネットワーク環境を構築することができるサービスのことを言います。このVPCを用いることで、サーバー(EC2)やデータベース(RDS)といった他のサービスを利用することができます。
Internet Gateway
VPCとインターネット間の通信を可能にするためのものです。
NAT Gateway
まず、NATとは、インターネット上で使われるIPアドレスを、プライベート内で使われる複数のデバイスで共有するための技術のことです。このNATという技術を使うことにより、インターネット上のサービスにアクセスする際、プライベートネットワーク内のデバイスのプライベートIPアドレスは、外部に公開されず、外部からは、NATにより共有された公開IPアドレスのみが見えます。
すなわち、NAT Gatewayを使うことにより、プライベート内のデバイスからインターネット上へのアクセスはすることができるが、インターネット上のデバイスからプライベート内のデバイスにアクセスすることはできないことになります。
Public subnet
インターネットから通信することができるサブネットのことを言います。
インターネットから通信することができるようにするために、Internet Gatewayに接続されています。
Private subnet
Public subnetとは逆で、インターネットから通信することができないサブネットのことを言います。
インターネットから通信することができないようにするためにInternet Gatewayには繋がっておらず、 ゲートウェイに接続されている場合は、外部からプライベートIPアドレスを隠すことができるNAT Gatewayに接続されています。
さいごに
最後まで読んでくださり、ありがとうございます!
自分の中でのネットワーク周りのモヤモヤがスッキリしました!これで開発捗りそうです!