선릉역 1번 출구
AWS VPC 본문
클라우드 VPC 이해하기
내가 알고 있는건 VPC = virtual private cloud의 약자로 사용자가 정의한 가상 네트워크라는 것임
-> 사용자가 구성요소들을 이용해 원하는 형태로 네트워크망을 구축할 수 있음
-> 다른 고객과 완벽하게 논리적으로 격리된 네트워크 공간을 제공
-> 독립적인 가상의 네트워크 공간으로 사용자의 설정에 따라 자유롭게 구성할 수 있는 공간
VPC의 구성 요소
subnet | VPC를 특정 범위로 나눈 범위 (네트워크 망을 나눈 것/CIDR) |
RouteTable | 네트워크 트래픽을 전달할 위치가 명시된 규칙 집합 테이블 |
internet GW | VPC의 리소스에서의 인터넷 통신을 활성하기 위한 게이트웨이 (외부 대역으로 나가기 위함) |
NAT GW | 네트워크 주소 변환을 통해 private subnet에서 인터넷 통신을 연결하는 게이트웨이 |
VPC endpoint | NAT, IGW 등을 통하지 않고 AWS의 서비스를 비공개로 연결 가능하게 하는 서비스 |
구성 요소의 정의는 기본 네트워크과 크게 다를 것이 없음
public subnet에서 외부로 나갈 때는 routetable을 보고 igw로, private subnet에서 외부로 나갈 때는 routetable을 보고 nat-gateway를 거쳐서 igw로 가게됨
특정 용도가 있지 않은 이상 모두 Private subnet에 위치함
네트워크 대역을 어떻게 subnet으로 나눌 것인가?
subnet은 Zone에 종속적임 -> 적어도 2, 3개의 Zone에 나누는 것이 best임
*Zone: 물리적으로 분리된 데이터 센터라고 생각하면 됨
현재: IP를 지정하는 것보다 요즘은 그렇게 하지 않는 것이 best임, Cloud 환경에서 언제든지 Auto Scaling에 의해서 늘어났다 줄어들 수 있기 때문에 IP가 항상 변할 수 있음
참고 사이트
https://docs.toast.com/ko/Network/VPC/ko/overview/
NAT가 Private Subnet에서 외부와 통신하는 수단이라면, Bastion Host는 외부에서 Private Subnet과 통신하는 수단이라고 보면 된다.
여기서 흔히들 착각하는게 있는데 Bastion Host는 인터넷 게이트웨이나 NAT 게이트웨이 같이 서비스를 만들어 등록하는 게 아니라, 그냥 private 서브넷에 연결되어 접속할수있는 public 서브넷을 그냥 Bastion Host라고 일컫는 것이다.
https://velog.io/@may_soouu/AWS-VPC%EB%9E%80 -> VPC를 이해하고 기본 사항을 이해하기 좋음
서브넷은 실제로 리소스가 생성되는 물리적인 공간(가용존)과 연결됩니다.하나의 VPC에 N개의 서브넷을 가질 수 있습니다.서브넷의 넷마스크 범위는 16(2^(32-16)=65536개) ~ 28(2^(32-28)=16개)입니다.하나의 가용존에 하나의 서브넷이 연결되기 때문에, 특정 리전에서 사용 가능한 가용존의 갯수를 미리 확인해야 합니다.
VPC는 격리된 네트워크 환경이기 때문에, 이 안에서 생성된 리소스들은 인터넷을 사용할 수가 없습니다.
따라서 인터넷과 연결하기 위해서는 인터넷 게이트웨이가 필요합니다.
서브넷 <-> 인터넷게이트웨이 연결 후에, 퍼블릭IP를 가지고 있어야합니다.
https://dontbesatisfied.tistory.com/13 -> public subnet과 private subnet 설명
public subnet
간단하게 외부에서 접근이 가능한 네트워크영역이라고 이해할 수 있습니다.
구체적으로는 서브넷이 인터넷 게이트웨이로 향하는 라우팅이 있는 라우팅 테이블과 연결되는 경우 퍼블릭 서브넷이라고합니다.
인터넷 게이트웨이(igw)는 VPC의 구성요소로써 VPC와 인터넷간에 통신을 할 수 있게 만들어주는 역할을합니다.
private subnet
간단하게 외부에서 다이렉트로 접근이 불가능한 네트워크 영역이라고 이해할 수 있습니다.
이때 NAT 게이트웨이를 이용하여, 내부에서 외부로만 접근이 가능하게 만들어 줄 수 있습니다.
외부에서 NAT 게이트웨이를 이용하여 접속을 불가능합니다.
여기서 말하는 외부란, VPC영역이 다른것을 의미합니다. 같은 VPC영역에 있으면 private IP로 접근이 가능합니다.
https://joosjuliet.github.io/private-public-subnet/ -> 클라우드 환경에서의 DMZ
일단 private subnet은 내부망과 거의 엇비슷하게 연결이 된다.그리고 public subnet은 다른 aws제품들을 활용해 외부망과 dmz zone을 구현한다.
private subnet과 public subnet 둘 다 생성한 routing table 을 사용해서 연결을 한다.public subnet에 internet gateway를 연결한다.public subnet에 속한 곳은 local network ip 이외의 대상은 internet gateway로 트래픽을 보낸다.
비록 외부에서 연결 가능한 DMZ이지만 NACL과 Security Group을 통해 접근 제어가 설정이 된다.
public subnet 안에 통신 게이트웨이인 NAT gateway를 만든다.private subnet에서도 local network외의 ip는 모두 NAT gateway로 트래픽을 가게 한다.즉 private subnet에 속한 pc는 로컬 ip이외의 대상이 통신할 경우 무조건 NAT Gateway로 트래픽을 보낸다.즉 외부에서 private subnet에 직접 접근이 불가능하다.
물리적 접근이 불가능함으로 망분리가 되었다.
'Computer > Cloud Computing' 카테고리의 다른 글
Cloud Security(2) (0) | 2022.12.01 |
---|---|
Cloud Security(1) (0) | 2022.12.01 |
Cloud Computing(7) (0) | 2021.06.09 |
Cloud Computing(6) - VM and Networking (0) | 2021.06.07 |
Cloud Computing(5) (0) | 2021.06.07 |