[AWS] Network Address Translation (NAT)

Joney의 SW 공부 블로그·2023년 9월 9일
0

AWS VPC

목록 보기
3/6

NAT (Network Address Translation)

  • 탄력적 네트워크 인터페이스를 퍼블릭 IP 주소와 연결할 때 프라이빗 IP는 변하지 않음
  • 인스턴스가 인터넷에 트래픽을 보낼 때, 인터넷 게이트웨이는 프라이빗 IP를 퍼블릭 IP로 변경
  • 인터넷을 통해 인스턴스로 트래픽이 수신 될 때 인터넷 게이트웨이가 퍼블릭 IP에서 프라이빗 IP로 변경
  • 인터넷 게이트웨이처럼 맵핑되어 있는 IP를 변환하는 프로세스를 NAT라고 함

NAT 디바이스

  • AWS에서는 인터넷 게이트웨이 이외에 NAT 인스턴스, NAT 게이트웨이 서비스도 제공
  • 인터넷상의 호스트가 인스턴스에 직접 도달하지 못하게 할 때 사용
  • 인스턴스가 업데이트 패치를 받거나 데이터를 업로드할 때 인터넷에 연결해야하지만, 클라이언트의 요청에 응답할 필요가 없을 때 사용
  • NAT 디바이스를 사용하면 인스턴스에 퍼블릭 IP를 할당하지 않음

NAT 인스턴스

  • 퍼블릭 서브넷에 생성해서 인터넷과 연결될 수 있게 해야함
  • 사전에 구성된 Amazon Linux AMI를 사용해서 구성
  • AMI 지원이 종료했기 때문에 NAT 게이트웨이를 사용할 것을 권장
  • 인스턴스 유형에 따라 대역폭이 달라짐
  • 단일 인스턴스이기 때문에 확장성이 없어 대역폭 요구가 증가하더라도 자동 확장이 안됨
  • 보안 그룹를 따로 관리 필요
    • NAT 인스턴스 보안그룹의 인바운드 규칙에 VPC CIDR 블록 추가 필요 (HTTP, HTTPS)
    • NAT 인스턴스 보안그룹의 인바운드 규칙에 ICMP 추가 필요 (source는 VPC의 CIDR블록)
  • 인스턴스기 때문에 SSH도 지원해서 Bastion 서버로도 사용 가능
  • source/destination 확인을 중단 설정 필요
  • NAT 인스턴스를 통해 통신할 프라이빗 인스턴스의 라우트 테이블에 NAT 인스턴스를 대상으로 추가


NAT 게이트웨이

  • AWS에서 관리하는 NAT 디바이스
  • 인터넷 게이트웨이처럼 하나의 NAT 게이트웨이로 어떠한 대역폭 요청도 처리 가능
  • 퍼블릭 서브넷에 배포 필요
  • 프라이빗 서브넷이 연결되어 있는 라우트 테이블에 NAT 게이트웨이를 대상으로 추가 필요
  • 보안 그룹을 적용할 수 없으므로 트래픽을 제어하려면 서브넷에 NACL을 적용 필요

profile
SW 지식 노트 블로그

0개의 댓글