만약 다른 IP를 가진 사용자가 동일하게 20.20.20.20 서버로 접속하는 경우, NAT 장비에서는 출발지 IP만 11.11.11.11로 동일하게 변경하고 서비스 포트는 다른 포트로 변경합니다.
즉, PAT 동작 방식은 NAT와 거의 동일하게 이루어지지만 IP 주소뿐만 아니라 서비스 포트까지 함께 변경해 NAT 테이블을 관리하므로 하나의 IP만으로도 다양한 포트 번호를 사용해 사용자를 구분할 수 있습니다. 하지만 이 서비스 포트의 개수는 제한되어 있어 재사용됩니다. 만약 서비스 포트가 동시에 모두 사용 중이거나 재사용할 수 없을 때는 PAT이 정상적으로 동작하지 않습니다. 따라서 동시 사용자가 매우 많을 때는 PAT에서 사용하는 공인 IP 주소를 IP 하나가 아닌 풀(Pool)로 구성해야 합니다.
PAT는 다수의 IP가 있는 출발지에서 목적지로 갈 때 NAT 테이블이 생성되고 응답에 대해 NAT 테이블을 참조할 수 있지만 PAT IP가 목적지일 때는 해당 IP가 어느 IP에 바인딩되는지 확인할 수 있는 NAT 테이블이 없으므로 사용할 수 없습니다. 즉, PAT는 뒤에서 다룰 SNAT와 DNAT 중 SNAT에 대해서만 적용되고 DNAT에는 적용되지 않습니다.
▲ 그림 7-5 PAT는 내부에서 외부로 출발하는 경우에만 가능하다.
지금까지 NAT와 PAT에 대한 예제를 통해 패킷이 어떻게 변경되고 통신하는지 알아보았습니다. NAT/PAT에 의해 패킷의 주솟값이 어떻게 변경되고 NAT 테이블이 어떻게 관리되는지 이해할 수 있다면 이어서 알아볼 NAT/PAT의 내용도 쉽게 이해하실 수 있습니다.