카테고리 없음

AWS 12일차 VPC

kiminaki 2021. 6. 16. 22:52

VPC(Vitual Private Cloud)

가상의 사설 클라우드이다.

 

 

이전에 우리는 리전의 개념 가용영역의 개념을 배웟엇다

하나의 리전은 큰 데이터 센터를 가지고 있고, aws계정을 생성하게 되면 리전별로 기본적인 vpc를 가지고 있다.

이 VPC는 다른 계정이 가지고 있는 VPC 와는 논리적으로 격리, 분리되어 있는 가상의 네트워크이다. 

 

우리는 거대한 사설 네트워크를 가질 수 있다 는 증거이다.

 

- VPC 내에는 각종 리소스(EC2, RDS, ELB등)을 시작할 수 있다.

- S3, CloudFront등은 비 vpc 서비스로 vpc내에 생성되지 않는다

- 각 리전에 여러개의  vpc가 존재할 수 있다.

- 사설ip대역을 가지며 서브넷으로 나누어줄 수 있다.

- 허용된 ip 블록의 크기는 /16(65536) ~ /28(16) 

 

Subnet

- VPC 내 생성된 분리도니 네트워크로 하나의 서브넷은 AZ에 연결된다(여러개일 경우 나누어서 생성가능)

- 사설 IP  기본적으로 할당 받고 필요에 따라 공인 IP 를 할당받는다. 

- 하나의 서브넷은 하나의 라우팅테이블 하나의 NACL(Network ACL)을 갖는다

- 공인 IP 자동할당 여부를 결정할 수 있다

- 퍼블릭 서브넷과 프라이빗 서브넷생성이 ㅏ능하다

 

 

Routing Table

- 서브넷의 내의 트래픽이 전송되는 위치를 결정할 수 있는 라우팅의 규칙 집합이다.

- 라우팅테이블은 기본적으로 vpc 범위내로 라우팅하는 규칙을가지며 이름은 loca이다

- 외부로 나가자고 할때는 internet gateway를 지정하고 ip는 0.0.0.0/0으로지정한다

(nat gatway를 쓸때도 쓰긴 쓴다)

- 하나의 라우팅 테이블은 다수의 서브넷을 가질 수 있다

- 보통 외부와 통신할때 퍼블릭 서브넷은 인터넷 게이트웨이, 프라이빗 서브넷은 nat gateway를 쓴다

 

 

NAT gateway

위에서 봣듯이 Nat gateway는 프라이빗 서브넷에서 외부와 통신하고 싶을때 쓴다. Nat gateway는 aws에서 제공해주며 내부의 리소스가 외부와 통신이 가능하지만 외부에서 들어갈수 없게 차단해준다. 

 

인터넷이 연결된 퍼블릭 스브넷에 Nat gateway를 설치하고 프라이빗 서브넷의 라우팅 테이블에 나트게이트웨이로 잡아주면 사용이 가능하다 



NAT instance

NAT instance는 nat gateway 대신 인스턴스를 활용해 nat gateway역할을 하도록 만드는것이다.

퍼블릭 서브넷에 공인 ip를 가진 인스턴스를 게이트웨이로 삼고, 프라이빗 서브넷의 라우팅 테이블이 nat instance로 설정한후 SrcDestCheck 속성을 비활성화 해야한다

인스턴스이기에 트래픽을 제어할 수 없다.

 

NAT gateway vs NAT instance

 

NAT gateway는 aws에서 직접 관리하여 유지보수가 필요없다 NAT instance는 사용자가 직접 관리해야한다

NAT instance는 인스턴스이기에 장애가 발생할 수 잇어 failover에 신경써야한다

nat gateway는 대역폭을 45gbs까지 확장할 수 있지만 NAT instancesms 인스턴스 스펙이 따라 다르다

- NAT Gateway 는 보안그룹을 사용할수 없고 - NAT instance는 사용 가능하다

- NAT Gateway,  NAT instance 모두 nacl을통해 트래픽 제어가 가능하다.