[AWS] NAT gateway 구성

고구마양갱·2024년 12월 23일

AWS CLOUD

목록 보기
14/32
post-thumbnail

지난번에 구성한 NAT instance 보다, NAT gateway 구성이 훨씬 쉽다.

NAT gateway 생성 시 서브넷과 Elastic IP (탄력적 주소)를 할당하고 프라이빗(사설대역) 라우팅의 target 을 NAT gateway 로 설정해주면 NAT gateway 구성이 완료된다.

VPC, NAT gateway 메뉴에 가면 NAT gateway 현황,생성, 설정을 할 수 있다.
우측의 Create NAT gateway 선택해서 NAT gateway를 생성한다.

NAT gateway 이름을 입력하고 subnet은 생성해둔 퍼블릭서브넷을 선택한다.
클라우드 외부와 통신하기 위해 만든 퍼블릭서브넷에 연결하는게 목적이기 때문이다.

connectivity type 은 public 으로 한다. 그리고 중요한것이 NAT gateway는 Elastic IP를 필수로 할당해야 한다. allocate Elastic IP를 선택해서 한개의 Elastic IP를 생성 후, 생성한 Elastic IP를 선택한다. 그리고 create NAT gateway 선택하면 NAT gateway가 생성된다.

NAT gateway를 생성했으니 사설대역의 라우팅 테이블을 수정해야한다.

예상대로 target type 은 NAT gateway, 그 아래에는 생성한 NAT gateway를 찾아 선택한다.
blackhole 이라고 뜨는 것은 NAT instance 구성 후 삭제했기 때문에, 유효하지 않은 라우팅 경로가 되었기 때문이다. (기존에 nat 인스턴스가 target 이었는데 삭제되었으니, 이를 경로로 지정한 라우팅은 의미가 없어진 것이다.)

NAT gateway는 활성화 되는데 어느정도 시간이 걸리니, 설정 후 NAT gateway가 활성화 되었는지 확인해야 한다.

생성한 베스천호스트를 통해서 프라이빗 인스턴스에 접속하고,

접속한 프라이빗 인스턴스(EC2,10.0.2.35)에서 외부 사이트(google.com)에 curl, ping 명령어를 사용하면 정상실행 되는 것을 확인 할 수 있다.

구성한 NAT gateway를 그리면 위와 같다.

** 마지막으로 반드시 elsatic ip를 release 함으로서 추가 비용 발생을 사전에 미리 차단한다. NAT gateway 생성시 탄력적 ip (elastic ip)를 할당하게 되는데 NAT gateway를 삭제하더라도 탄력적 ip는 그대로 남아 있게되어 추가 비용이 발생하게 된다. 그러므로 NAT gateway 삭제 시 탄력적 ip(elastic ip)도 같이 삭제(release) 해야 한다.

삭제 방법은 해당 리전 > VPC > 좌측 메뉴의 elastic ip 로 가면 탄력적 ip 현황을 볼 수 있고, 삭제할 탄력적 ip 선택 후 우측의 Actions > Release Elastic ip address 를 선택하여 삭제한다.

0개의 댓글