개인의 기록
  • 소개
  • 프로젝트
  • 글
  • 링크

© 2026 newgirok

← 글 목록

NAT — 네트워크 주소 변환

2025년 9월 29일
NAT

NAT(Network Address Translation)는 사설 IP 주소를 공인 IP 주소로 변환하여 여러 장치가 하나의 공인 IP로 인터넷에 접속할 수 있게 하는 기술입니다.

NAT가 필요한 이유

IPv4 주소는 약 43억 개입니다. 전 세계 수백억 개의 기기가 모두 공인 IP를 가지는 것은 불가능합니다. NAT를 사용하면 가정이나 회사 내부의 수많은 기기가 하나의 공인 IP를 공유하여 인터넷에 접속할 수 있습니다.

사설 IP와 공인 IP

사설 IP 범위:

  • 10.0.0.0 ~ 10.255.255.255
  • 172.16.0.0 ~ 172.31.255.255
  • 192.168.0.0 ~ 192.168.255.255

이 범위의 IP는 인터넷에서 라우팅되지 않습니다. 내부 네트워크에서 자유롭게 사용할 수 있습니다.

NAT 동작 방식

[내부 네트워크]              [라우터/NAT]               [인터넷]
192.168.1.2:5000  →  공인IP:12345  →  서버 80
192.168.1.3:6000  →  공인IP:12346  →  서버 80

NAT 테이블

라우터는 내부 IP:포트 ↔ 외부 포트 매핑을 NAT 테이블에 보관합니다. 서버의 응답이 오면 NAT 테이블을 참조하여 올바른 내부 장치로 전달합니다.

NAT 종류

SNAT (Source NAT)

가장 일반적인 NAT입니다. 가정용 공유기가 사용하는 방식입니다.

DNAT (Destination NAT)

포트 포워딩이 대표적 사례입니다. 외부에서 공인 IP:포트로 접속하면 내부 서버로 연결합니다.

PAT (Port Address Translation)

일반적으로 말하는 NAT는 대부분 PAT입니다. IP뿐만 아니라 포트 번호도 변환합니다.

NAT의 단점

P2P 통신 어려움

두 내부 장치가 서로 직접 통신하려면 NAT를 통과해야 합니다. NAT 통과(NAT Traversal) 기술이 필요합니다. 화상 통화, 온라인 게임에서 NAT 문제가 자주 발생합니다.

추적 어려움

하나의 공인 IP를 여러 장치가 공유하므로, 공인 IP만으로 개별 장치를 특정할 수 없습니다.

IPv6가 보편화되면 사실상 무한한 IP 공간으로 NAT 없이 각 장치가 공인 IP를 가질 수 있게 됩니다.

← 이전 글Keep-Alive — 지속 연결
다음 글 →OSI 7계층 — 네트워크 통신의 계층 구조