NAT(Network Address Translation)은 이름 그대로 네트워크 주소를 변환하는 기술임. 즉, IP 주소를 다른 IP 주소로 변환해 라우팅을 원활히 해주는 기술
PAT(Port Address Translation)은 NAT와 거의 동일하게 동작하지만 IP주소 뿐 아니라 서비스 포트까지도 변환해주는 기술임
- 사설 IP에서 공인 IP로 전환하는 것 뿐 아니라 공인 IP에서 사설 IP로, 사설IP에서 또 다른 사설 IP나 공인 IP로 전환도 NAT로 정의될 수 있음
- 이 개념을 좀 더 확장하면 IPv4 ↔ IPv6 변환하는 기술인 AFT(Address Family Translation)도 NAT기술의 일종임
NAT/PAT의 용도와 필요성
- IPv4 주소 고갈문제의 솔루션으로 NAT가 사용됨
- 단기, 중기, 장기의 3단계 IP 주소 보존과 전환전략이 있는데, 이 중, 중기전략이 NAT사용임
- 단기 : 서브네팅
- 중기 : NAT와 사설 IP체계
- 장기 : IPv6 전환
- 보안을 강화하는 데 NAT 기술을 사용함
- IP 주소는 네트워크에서 유일해야 하고 이 정보가 식별자로 사용되어 외부와 통신하게 해줌
- 외부와 통신할 때 내부 IP를 다른 IP로 변환해 통신하면 외부에 사내 IP 주소 체계를 숨길 수 있음
- NAT 주소 변환 후, 역변환이 정상적으로 다시 수행되어야만 통신이 가능해서, 내부 네트워크에서 외부 네트워크로 나가는 방향 통신은 허용하지만 외부에서 내부로 들어오는 통신은 방어할 수 있음 → 보안 강화
- IP 주소 체계가 같은(사설 IP주소 체계가) 두 네트워크 간 통신을 가능케 함
- IP 대역이 같은 네트워크와 통신할 가능성이 높은 대외계 네트워크를 연결하기 위해 출발지와 도착지를 한꺼번에 변환하는 더블 NAT 기술을 사용함
- 불필요한 설정 변경을 줄일 수 있음
- KISA를 통해 인터넷 독립기관으로 직접 등록하고 소유한 IP 주소를 직접 운영하는 경우가 아니라면 통신사업자나 IDC 쪽에서 IP를 할당받아 사용하게 됨 → IP를 임시로 빌려 사용하는 것이기에 IP 변경이 필요한 경우가 존재함
- 이 때, NAT/PAT를 이용해 내부 네트워크를 구성했다면 서버와 PC의 IP 주소 변경 없이 회선과 IDC 사업자 이전이 가능함!!
NAT 동작 방식

- 사용자는 웹 서버에 접근하기 위해 출발지 IP를 10.10.10.10 → 목적지 IP와 서비스 포트를 20.20.20.20과 80으로 패킷 전송
- NAT 역할을 수행하는 장비에서 패킷 수신 후, NAT 정책에 따라 외부 네트워크와 통신이 가능한 공인 IP인 11.11.11.11로 IP 주소 변경
- NAT 장비에서 변경 전후의 IP 주소는 NAT 테이블에 저장됨
- NAT 장비에서 출발지 주소를 11.11.11.11로 변경해 목적지 웹 서버로 전송
- 패킷을 수신한 웹 서버가 사용자에게 응답 보냄. 목적지 : 11.11.11.11
- NAT 장비는 목적지 IP에 대한 원래 패킷을 발생시킨 출발지 IP 주소가 10.10.10.10인 것을 확인함
- NAT 변환 테이블에서 확인된 원래 패킷 출발지 IP(10.10.10.10)로 변경해 사용자에게 전송하면 사용자는 최종적으로 패킷을 수신함
PAT 동작방식

- 출발지 10.10.10.10 목적지 20.20.20.20, 포트는 80으로 채워 패킷 전송. 출발지 서비스 포트는 임의의 서비스 포트가 할당됨
- NAT 장비는 사용자가 보낸 패킷을 받아 외부 네트워크와 통신이 가능한 공인 IP인 11.11.11.11로 변경함
- 이 때, 출발지에 있는 다수의 사용자가 동일한 공인 IP로 변환되어야 하므로 패킷의 주소 변경 시 출발지 IP 뿐 아니라 출발지의 서비스 포트도 변경됨
- 변경은 NAT에 의해 수행되고 이 변경 정보를 NAT 테이블에 기록
- 이후 동일..