본문으로 건너뛰기
김신건의 로그

[Network] NAT: Network Address Translation

· 수정 · 📖 약 1분 · 335자/단어 #network #nat #routing
network-nat, NAT, Network Address Translation, 네트워크 주소 변환, SNAT, DNAT

정의

NAT (Network Address Translation) 는 IP 주소를 변환하는 기법. 주로 사설 IP 를 public IP 로, 또는 반대로 매핑.

왜 필요한가

  • IPv4 주소 고갈: 사내 100 대 호스트가 1 public IP 공유
  • 보안: 내부 호스트 은닉
  • 정책: 특정 서비스만 외부 노출

종류

SNAT (Source NAT)

아웃바운드 트래픽의 source IP 를 변경. 홈 라우터 기본 동작:

  • 내부 192.168.1.10:12345203.0.113.5:12345
  • 응답 오면 매핑 테이블 참조하여 원래 클라이언트로 전달

DNAT (Destination NAT)

인바운드 트래픽의 destination IP 를 변경. 포트 포워딩:

  • 외부 203.0.113.5:80 → 내부 192.168.1.10:8080

PAT (Port Address Translation, NAPT)

포트까지 매핑. 한 public IP 를 여러 호스트가 공유:

  • 192.168.1.10:12345203.0.113.5:1001
  • 192.168.1.11:12345203.0.113.5:1002

거의 모든 실제 NAT 는 PAT.

클라우드 NAT

AWS

  • NAT Gateway: 관리형, 프라이빗 서브넷의 아웃바운드
  • NAT Instance: 자체 관리 EC2

흐름

private subnet → NAT Gateway (public subnet) → Internet Gateway → Internet

함정

  • NAT traversal: P2P (WebRTC, BitTorrent) 는 NAT 통과 어려움 → STUN, TURN 서버 필요
  • Hairpin NAT: 내부에서 자기 public IP 로 접근하는 경우
  • NAT 만료: 매핑 테이블은 유휴 시 만료 → long-lived TCP 는 keep-alive 필요

참고

이 글의 용어 (3개)
[AWS] VPC: subnet, route, NAT, peeringcloud
정의 VPC (Virtual Private Cloud) = AWS 안의 논리적 격리 네트워크. CIDR 정의 + subnet 분할 + 라우팅. 구조 Subnet 종류 | 종류 |…
[Network] CIDR와 Subnettingnetwork
정의 CIDR (Classless Inter-Domain Routing) 은 IPv4 / IPv6 주소를 prefix length 로 표기하는 표준. 1993년 등장 (RFC 1…
[Network] IP: IPv4, IPv6, CIDRnetwork
정의 IP (Internet Protocol) 주소 는 인터넷에서 노드를 식별하는 논리 주소. IPv4 (32bit) 와 IPv6 (128bit) 두 버전이 병존. IPv4 4 …

💬 댓글

사이트 검색 / 명령어

검색

스크롤 = 확대/축소 · 드래그 = 이동 · 0 = 원래 크기 · ESC = 닫기