1. NAT(Network Address Translation)
1.1 NAT
네트워크 패킷의 출발지 IP 주소와 목적지 IP 주소를 변환하는 기술이다. NAT를 통해 사설 네트워크와 공인 네트워크 간의 통신을 가능하게 하고, IP 주소의 부족한 문제를 해결할 수 있다.
DNAT은 목적지 주소 변환을 의미하며, 패킷이 목적지로 전달될 때 목적지 주소를 변환하여 해당 서비스로 패킷을 전달하는 기술이다.
1.2 주요 사용 사례
- 로컬 네트워크에 있는 여러 서버가 하나의 공인 IP 주소를 공유하여 외부에서 접속하는 경우에 주로 사용됨.
1.3 NAT의 장점
- IP 주소의 효율적 사용: NAT는 하나의 공용 IP 주소를 사용하여 여러 개의 사설 IP 주소를 인터넷에 연결할 수 있게 해준다. 이는 IPv4 주소가 부족한 상황에서 매우 유용하며, IP 주소의 사용을 최적화한다.
- 보안 강화: NAT는 외부 네트워크에서 내부 네트워크의 특정 기기를 직접 식별하고 접근하기 어렵게 만든다. 이는 사설 네트워크의 보안을 강화하는 데 도움이 된다.
- 네트워크 구성 변경의 용이성: 내부 네트워크의 IP 구성을 변경해도, 외부와의 연결에 사용되는 공용 IP는 그대로 유지될 수 있다.. 이는 네트워크 관리를 유연하게 만들어 준다.
- 포트 포워딩을 통한 서비스 제공: NAT를 사용하면 특정 포트에 대한 트래픽을 내부 네트워크의 특정 서버로 전달할 수 있다. 이를 통해 내부 서버가 외부에서 접근 가능한 서비스를 제공할 수 있게 된다.
1.4 NAT의 단점
- 엔드 투 엔드 연결성 저하: NAT는 데이터 패킷의 출발지와 목적지 주소를 변경함으로써 엔드 투 엔드의 원칙을 침해한다 이는 특정 애플리케이션과 프로토콜에서 호환성 문제를 일으킬 수 있다.
- 성능 저하: 모든 패킷의 주소 변환 과정은 추가적인 처리 시간을 요구하며, 이는 네트워크의 성능 저하로 이어질 수 있다.
- 공용 IP 주소의 한계: NAT는 공용 IP 주소 하나로 여러 개의 사설 IP 주소를 관리한다. 고성능의 대규모 네트워크에서는 이로 인해 병목 현상이 발생할 수 있다.
- 트래픽 모니터링 및 로깅의 복잡성 증가: NAT를 사용하는 경우, 외부 IP 주소와 내부 IP 주소 간의 매핑을 추적해야 한다. 이는 네트워크 트래픽의 모니터링과 로깅을 복잡하게 만들 수 있다.
1.5 관련 자료