본문으로 건너뛰기

NAT (Network Address Translation)

IP 주소는 공인 IP 주소(Public IP Address)사설 IP 주소(Private IP Address) 가 존재합니다. 공인 IP 주소는 고유하며, 사설 IP 주소는 고유하지 않고 특정 사설 네트워크에서만 사용됩니다. 이때, 사설 네트워크는 외부 네트워크에 공개되지 않은 네트워크를 의미합니다. 사설 IP는 일반적으로 라우터가 할당하며, 할당받은 사설 IP 주소는 사설 네트워크 상에서만 유효합니다.

사설 IP 주소만을 가지고 외부 네트워크와 통신하기 어렵습니다. 이 문제를 해결하기 위해서 라우터 혹은 공유기의 NAT(Network Address Translation) 기능을 사용하는데요. NAT는 IP 주소를 변환하는 기술입니다. 해당 기능을 사용하면, 사설 IP 주소를 외부 네트워크에 사용되는 공인 IP 주소로 변환하여 외부 네트워크와 통신할 수 있습니다.

예를 들어, 사설 네트워크에서 출발한 패킷에 존재하는 사설 IP 주소(송신지)가 라우터를 거쳐 공인 IP로 변경됩니다. 그리고, 외부 네트워크로부터 출발한 패킷에 존재하는 공인 IP 주소(수신지)는 NAT 기능을 통해서, 사설 IP 주소로 변경되고 사설 네트워크 속 호스트에게 전달됩니다. NAT에서 주소 변환을 하기 위해서 내부적으로 공인 IP 주소와 사설 IP 주소가 대응되어 있는 NAT 변환 테이블을 사용합니다.

✔️ NAT 변환 테이블에서 공인 IP 주소와 사설 IP 주소는 일대일로 대응되어 있을까? 🤔

일대일 대응이라면 사설 IP 주소만큼 공인 IP가 필요하기 때문에 한계가 있습니다. 따라서, 일반적으로 공인 IP와 사설 IP가 일대일로 대응하지 않고, NAPT(Network Address Port Translation) 이라는 포트 기반의 NAT를 사용합니다. 해당 기능에서는 NAPT 변환 테이블에 IP 주소 쌍과 함께 포트도 함께 기록됩니다. 다음은 NAPT 변환 테이블의 예시입니다.

Private IPPrivate PortPublic IPPublic Port
192.168.10.280001.2.3.48001
192.168.10.380001.2.3.48002
Loading comments...