NAT(네트워크 주소 변환)란 무엇인가요?
NAT는 "네트워크 주소 변환"의 약자로, IP 패킷의 헤더에 포함된 IP 주소를 다른 IP 주소로 변환하는 기술입니다. 일반적으로 조직 내에서 사용되는 개인 IP 주소를 외부 통신을 위한 글로벌 IP 주소로 변환하는 데 사용됩니다.
개인 IP 주소는 IPv4 주소 고갈 문제를 해결하기 위해 도입되었습니다. IPv4에서는 주소가 32비트로 표현되므로 약 40억 개의 고유 주소가 가능합니다. 그러나 인터넷이 급속히 확장되면서 IP 주소가 필요한 기기의 수가 기하급수적으로 늘어났고, 이로 인해 사용 가능한 주소가 결국 고갈될 것이라는 우려가 제기되었습니다. 글로벌 IP 주소를 보존하기 위해 조직별로 글로벌 IP 주소를 할당하고, 조직 내부에서는 개인 IP 주소를 사용하는 접근 방식이 채택되었습니다. 이로 인해 RFC 1918에 정의된 개인 IP 주소가 도입되었으며, 이는 다양한 조직 규모에 대한 범위를 지정합니다.
일반적으로 조직의 내부 네트워크 내의 장치에는 이러한 범위의 개인 IP 주소가 할당됩니다.
그러나 개인 IP 주소를 가진 기기가 인터넷을 통해 외부 서버에 접속하는 경우, 개인 IP 주소는 여러 조직에서 공유되므로 서버는 발신 기기를 식별할 수 없습니다. 따라서 인터넷 통신을 위해서는 개인 IP 주소를 조직의 고유한 글로벌 IP 주소로 변환해야 합니다. 여기서 NAT가 등장합니다.
NAT는 또한 내부 네트워크를 외부 네트워크에서 숨기는 추가 효과도 있으며, 내부 네트워크를 격리하여 일정 수준의 보안을 제공합니다. 그러나 NAT는 네트워크 분할에 유용하지만, 그 자체로는 보안 위협을 해결하는 포괄적인 솔루션이 될 수 없습니다. 추가적인 엔드투엔드 터널링 기술과 프로토콜이 종종 필요합니다.
NAT의 한 가지 한계는 일대일 주소 변환 기반으로 작동하기 때문에 여러 장치에서 동시에 통신을 처리하는 데 적합하지 않다는 것입니다. 이 문제를 해결하기 위해 NAT는 포트 번호 변환을 포함하도록 확장되었고, 그 결과 NAPT(네트워크 주소 포트 변환)가 탄생했습니다. 이는 IP 마스커레이드라고도 합니다. 오늘날 "NAT"라는 용어는 NAT와 NAPT를 모두 지칭하는 데 자주 사용됩니다.