Cloud/AWS

AWS - VPC, Subnet, Routing Table, Internet Gateway 상관 관계

잇(IT) 2022. 6. 17. 14:49
728x90

목차

1. Routing Table

2. Internet Gateway

3. 설정 확인


1. Routing Table

 

라우팅 테이블은 컴퓨터 네트워크에서 목적지 주소를 목적지에 도달하기 위한 네트워크 노선으로 변환시키는 목적으로 사용된다. 각 라우터의 라우팅 테이블은 모든 목적지 정보에 대한 해당 목적지에 도달하기 위해서 거쳐야 할 다음 라우터의 정보를 가지고 있다.

VPC 내에는 Subnet이 있으며 각 Subnet은 각기 다른 네트워크 대역을 갖고 있다. 그리고 한 Subnet이 다른 Subnet으로 가기 위해서는 'Routing이 필요하다. 각각의 Subnet은 서로 다른 네트워크 영여이기 때문이다.

 

 

모든 라우팅 테이블에는 VPC 내부 통신을 위한 로컬 라우팅이 포함되어 있다. 이 라우팅은 기본적으로 모든 라우팅 테이블에 추가된다. VPC에 하나 이상의 IPv4 CIDR 블록이 연결되어 있는 경우, 라우팅 테이블에 각 IPv4 CIDR 블록의 로컬 경로가 포함된다. 이러한 라우팅을 수정하거나 삭제할 수 없다.

- VPC 내부(모든 Subnet)에 대해서는 Routing이 자동으로 생성된다. 즉 별도의 설정 없이 한 Subnet에서 다른 Subnet으로 통신이 가능하다는 뜻이다. 이는 사용자가 설정할 필요가 없고, 보이지도 않는 암시적 라우터인 'VPC Router'를 통해 가능하다. Subnet 내의 모든 Resource는 자신이 소속된 Subnet이 아닌 다른 곳으로 향하고자 할 때 VPC Router를 거쳐야 한다.

 

VPC에는 암시적 라우터가 있으며 라우팅 테이블을 사용하여 네트워크 트래픽이 전달되는 위치를 제어합니다. VPC의 각 서브넷을 라우팅 테이블에 연결해야 한다. 서브넷에 대한 라우팅을 제어한다.

- 라우팅 테이블 Local에 포함된 즉, VPC 내 Subnet에 할당된 Resource라면 어느 Subnet이든 다른 Subnet의 Resource와 자유롭게 통신 할 수 있다.

- 또한 라우팅 테이블은 Local Routing 뿐만 아니라 Subnet에 소속된 Resource(EC2 등)가 외부 인터넷망으로 나갈 수 있는 Routing을 가질 수 있다. 이를 Internet Gateway라고 한다.

 

라우팅 테이블은 컴퓨터 네트워크에서 목적지 주소를 목적지에 도달하기 위한 네트워크 노선으로 변환시키는 목적으로 사용된다. 각 라우터의 라우팅 테이블은 모든 목적지 정보에 대한 해당 목적지에 도달하기 위해서 거쳐야 할 다음 라우터의 정보를 가지고 있다.

2. Internet Gateway

 

인터넷 게이트웨이는 수평 확장되고 가용성이 높은 중복 VPC 구성 요소로, VPC의 인스턴스와 인터넷 간에 통신할 수 있게 해준다. 인터넷 게이트웨이는 인터넷 라우팅 가능 트래픽에 대한 VPC 라우팅 테이블에 대상을 제공하고, 퍼블릭 IPv4 주소가 할당된 인스턴스에 대해 NAT(네트워크 주소 변환)를 수행하는 두 가지 목적이 있습니다.

- Subnet 내 Resource(EC2 등)가 Internet으로 나아가고자 할 때 반드시 거쳐야 하는 관문이 'Internet Gateway'입니다. Internet Gateway만 생성해두면 외부 Internet과 통신할 수 있을 것 같지만 아니다. VPC에서 Resource(EC2 등)가 외부 인터넷과 통신하고자 할 경우 갖추어야 할 조건은 다음과 같다.

 

1. Internet과 통신하고자 하는 Resource가 공인 IP를 보유 해야한다.

2. Resource가 소속된 Subnet의 Routing Table에 '0.0.0.0/0' 목적지로 갖는 Routing 'Internet Gateway'이 있어야 한다.

3. Network ACL과 Security Group 규칙에서 허용해야 한다.

 

- 그리고 '0.0.0.0/0'에 대해 Routing을 Internet Gateway의 id로 지정한다. 여기까지 설정을 하면 Subnet 내 Resource(EC2 등)는 외부 인터넷과 통신이 가능하게 된다. AWS에서는 공인 인터넷과 통신 가능한 Subnet을 'Public Subnet', 공인 인터넷이 차단된 사설 IP만 할당된 Subnet을 'Private Subnet'이라 부른다.

 

 

- 위 그림에서 Public Subnet 2개는 Local Routing과 함께 Internet Gateway에 연결되어 있으므로 Internet 통신이 가능하며 Private Subnet은 Local Routing만을 갖고 있으므로 내부 통신만 가능하다.


3. 설정 확인

 

- 설정 확인을 위해 라우팅 테이블을 2개 존재하는데, 하나는 외부 인터넷과 통신이 가능하도록 Internet Gateway를 추가해주고 하나는 Local 서브넷만 있는 기본 라우팅 테이블 두개라 존재한다. 

- 그 다음 총 6개의 Subnet이 생성되어 있는데 그 중 2개는 Internet Gateway가 추가된 라우팅 테이블에 포함 시키고 나머지 4개의 Subnet은 Local 서브넷만 있는 기본 라우팅 테이블에 포함 시킨다.

- 총 6개의 서브넷에 EIP(탄력적 IP)를 부여한 다음 외부에서 접속이 가능한지 테스트 해본다.

 

-> 결론 : Internet Gateway가 추가된 라우팅 테이블에 포함된 Subnet은 외부와의 통신이 가능하지만 Internet Gateway가 포함되지 않은 라우팅 테이블에 포함된 Subnet은 공인 IP가 할당되어도 외부와의 통신이 불가능 한것을 볼 수 있다.

 

- 아래 설정을 사진으로 보면서 확인해 볼 수 있다.

 


728x90