[AWS] 인터넷 게이트웨이 및 라우팅 테이블
인터넷 게이트웨이
- 인터넷 게이트웨이는 퍼블릭 IP 주소를 할당 받은 인스턴스가 인터넷과 연결돼서 인터넷으로부터 요청을 수신 가능하게 하는 기능 제공
- VPC 생성 시, 인터넷 게이트웨이가 없으므로, VPC에 생성된 서브넷은 전부 프라이빗 서브넷이고, 인터넷 게이트웨이가 연결된 서브넷이 퍼블릭 서브넷이 됨
- VPC에는 하나의 인터넷 게이트웨이만 연결 가능
- 인터넷 업체가 온프레미스에 설치하는 인터넷 라우터와 유사
- 엄밀하게는 다름
- 기존 네트워크에서는 핵심 라우터의 주소를 인터넷으로 향하는 IP 주소로 구성
- 인터넷 게이트웨이에서는 관리형 IP나 네트워크 인터페이스가 없음
- 식별을 위한 AWS에서 부여한 ID(igw- 로 시작)가 생성 됨
- 인터넷 게이트웨이를 이용하려면 라우팅 테이블에 구성을 해줘야 함 (대상 주소는 0.0.0.0/0)
라우팅 테이블
- VPC는 리소스 형태로 가상 라우터를 구성하지 않고 소프트ㅜ에어 함수로 IP를 라우팅 (암시적 라우팅)
- 각 라우팅 테이블은 하나 이상의 라우팅과 하나 이상의 서브넷 연결로 구성
라우팅
- 라우팅은 라우팅 테이블과 연결된 서브넷 내 인스턴스에서 트래픽을 전달하는 방법을 결정
- IP 라우팅은 원본 IP가 아닌 대상 IP를 기반으로 작동
- 대상 주소는 CIDR 표기법으로 작성
- VPC 내의 인스턴스 간에 통신할 수 있도록 로컬 라우팅이 기본으로 포함 됨
보안 그룹
- 보안 그룹은 방화벽과 같은 기능을 제공
- 인스턴스의 탄력적 네트워크 인터페이스에 송수신되는 트래픽을 제어
- 보안 그룹은 상태 저장(stateful)이기 때문에 요청에 대한 응답 트래픽을 허용
인바운드 규칙
- 인바운드 규칙은 연결된 탄력적 네트워크 인터페이스에 혀용할 트래픽을 정의
- 소스, 프로토콜, 포트 범위, 대상 주소 CIDR 블록으로 구성
- 모든 프로토콜에 대해 0.0.0.0/0로 설정을 하면 인터넷 뿐만 아니라 VPC의 모든 인스턴스에서도 엑세스 허용
아웃바운드
- 탄력적 네트워크 인터페이스를 통해 송신할 수 있는 트래픽 정의
- 대상, 프로토콜, 포트 범위, 대상 주소 CIDR 블록으로 구성
Bastion 호스트
- 프라이빗 서브넷에 생성된 인스턴스에는 인터넷을 통해 엑세스할 수 없기 때문에 Bastion 서버를 통해 엑세스 필요
- Bastion 서버는 퍼블릭 서브넷에 생성된 인스턴스를 말함
- Bastion 서버를 통해 프라이빗 서브넷의 인스턴스에 엑세스하기 위해서는 프라이빗 인스턴스의 보안 그룹에 Bastion 서버의 보안 그룹을 인바운드에 추가 필요
