Back to feed
ASH avatar
ASH

2026. 5. 4.·base·

NAT Gateway + private subnet은 어떻게 인터넷 인바운드를 막을까?

네트워크 기초

network

외부 인터넷에서 인스턴스에 접속하려면 보통 대상이 공인 IP를 가지고 있고, 그 공인 IP가 IGW를 통해 라우팅되어야 한다. 하지만 Private subnet 인스턴스는 일반적으로 공인 IP가 없기 때문에 아예 접근 경로 자체가 존재하지 않는다.

그럼 NAT를 붙였을 때는 NAT가 public ip가 존재하므로 이걸 통해 요청이 가능하지 않을까?

이건 NAT의 동작 방식때문에 막힌다.
NAT Gateway는 private으로부터 패킷을 전달받고 패킷의 출발지 주소를 private IP에서 자신의 public IP를 변환하는 과정을 거치며 내부에서 나간 연결에 대해 이런 상태를 기록한다.

  • 내부: 10.0.3.8:12345
  • 외부에 나갈 때 변환: NAT공인IP:54321

이런 매핑이 선행되어야 응답이 돌아올 때 NAT공인IP:54321로 들어온 패킷을 다시 내부주소인 10.0.3.8:12345로 되돌릴 수 있게된다. (DNAT)

만약 외부에서 누군가가 NAT공인IP:3000같은 곳으로 먼저 접속을 걸면 NAT 입장에서는 이 포트가 어떤 인스턴스/어떤 포트로 매핑되어야 하는지에 대한 상태가 존재하지 않기 때문에 인바운드 연결은 어디로도 전달되지 않고 성립하지 않게된다.

0
Comments

Join the thread

Leave feedback, ask for clarification, or keep a focused discussion attached to this article.

0 comments
No comments yet. Start the first thread for this article.
Current user avatar
Styling with Markdown is supported