NAT
NAT: Network Address Translation
패킷이 라우팅 장치를 통해 전송되는 동안 패킷의 IP 주소 정보를 수정하여 IP 주소를 다른 주소로 매핑하는 방법, 공인 IP와 사설 IP로 나눠서 처리한다.
동작 원리

NAT는 라우터에서 동작하며, 내부 네트워크의 사설 IP 주소를 외부에서 사용할 수 있는 공인 IP 주소로 변환한다. 이를 통해 여러 장치가 하나의 공인 IP 주소를 공유하면서 인터넷에 접속할 수 있다.
동작 방식
출발지 주소 변환 (SNAT: Source NAT)
- 내부 네트워크의 컴퓨터가 외부에 패킷을 전송할 때 사설 IP주소를 공인 IP주소로 변환
목적지 주소 변환 (DNAT: Destination NAT)
- 외부에서 내부로 네트워크로 들어오는 패킷의 목적지 IP를 공인 IP에서 내부 네트워크의 사설 IP로 변환
포트 주소 변환 (PAT: Port Address Translation)
- 여러 내부 IP들이 하나의 공인 IP를 공유하기 때문에, 포트 번호로 이들을 구별한다.
- 하나의 공인 IP 주소를 여러 장치가 함께 사용할 수 있도록 포트 번호를 함께 변환하여 구분한다.
예를 들어 다음과 같이 서로 다른 내부 장치가 하나의 공인 IP를 사용할 수 있다.
192.168.0.10:50000 → 203.0.113.5:40001
192.168.0.11:50000 → 203.0.113.5:40002공인 IP 주소는 같지만 포트 번호가 다르므로, NAT 라우터는 응답 패킷을 올바른 내부 장치로 다시 전달할 수 있다.
NAT 테이블
패킷이 외부로 나갈 떄 마다, 변환된 주소와 포트 번호를 기록한 테이블, 사설 IP가 어떤 공인 IP와 포트로 연결되었는지 기록하여 수신된 패킷이 올바른 내부 디바이스로 전달될 수 있도록 한다.
포트 포워딩
외부에서 내부 네트워크의 디바이스에 접근할 수 있도록 설정하는 기술, 공인 IP 주소의 특정 포트로 들어오는 요청을 사설 IP 주소의 특정 장치와 포트로 전달해주는 방식
- NAT를 사용하는 네트워크에서는 내부 IP가 외부에 보이지 않아서, 외부에서 직접 접근이 불가능
- 공인 IP 주소로 들어오는 요청을 NAT 라우터가 받아서, 내부 네트워크의 디바이스와 포트로 전달한다.
특징
종류
- Static NAT: 하나의 사설 IP가 항상 동일한 고정 IP로 매핑되는 방식
- Dynamic NAT: 사설 IP가 NAT Pool 내부의 사용 가능한 공인 IP로 동적으로 매핑되는 방식
용도
보안 강화
내부 네트워크의 IP 주소와 외부에 보이는 IP 주소가 다르므로, 내부 네트워크에 대한 보안이 가능하다. 다만 NAT 자체가 보안 기능을 제공하는 것은 아니며, 내부 주소를 직접 노출하지 않는 효과를 가진다.
VPN
VPN 환경에서는 NAT를 이용해 사설 네트워크와 공인 네트워크 사이의 주소를 변환할 수 있다.
로드 밸런싱
NAT를 활용하여 들어오는 트래픽을 여러 서버로 분산할 수 있다.