현재까지 학습한 스위칭, 라우팅, 세션 처리 방법 등 네트워크 장비가 패킷을 처리하는 과정 외에도 IP 네트워크에는 통신을 도와주고 사용자를 편리하게 해주는 다양한 서비스와 프로토콜이 있다.
- DHCP : 사용자가 IP 설정을 하지 않더라도 IP 주소를 자동으로 할당해준다.
- DNS : 사용자가 복잡한 목적지 IP를 기억하지 않고 쉬운 도메인 이름을 사용하도록 도메인 이름과 IP 주소를 매핑해준다.
- GSLB : 사용자가 가장 가까운 지역의 데이터 센터에 접속해 신속한 서비스를 받게 해준다.
- NAT : 하나의 IP를 사용해 여러 단말 장비를 포함하는 네트워크를 손쉽게 구축하도록 도와준다.
NAT(Network Address Translation, 네트워크 주소 변환)는 이름 그대로 네트워크 주소를 변환하는 기술이다. 보통 라우터나 방화벽에 설치된다.
공인 IP 주소가 부족하기 때문에 1개의 공인 IP 주소에 여러 개의 사설 IP 주소를 할당한다. 그러면 여러 사람이 사설 IP들을 나눠서 사용하지만, 실제로 외부에서 보았을 때는 하나의 공인 IP로 취급한다.
이 사설 IP들은 인터넷 공간에서 라우팅되지 않기때문에 내부망을 외부로부터 보호할 수 있기도 하다. 하지만 너무 많은 주소 변환이 일어나게 되면 속도 저하가 커지는 단점이 있다.
NAT은 기본적으로 하나의 네트워크 주소에 다른 하나의 네트워크 주소로 변환하는 1:1 변환이 기본이지만, IP 주소가 고갈되는 문제를 해결하기 위해 1:1 변환이 아닌 여러 개의 IP를 하나의 IP 로 변환하기도 한다.
여러개의 IP를 하나의 IP로 변환하는 기술도 NAT 기술 중 하나이지만 실무에서는 PAT(Port Address Translation)라는 용어로 더 많이 사용된다.
💡 PAT으로 변환된 IP 주소로는 사내망 호스트들을 구분할 수 없기 때문에 포트번호를 부여하여 구분한다. 대부분의 홈 네트워크는 PAT을 사용하고 있다.- NAT에는 Static NAT과 Dynamic NAT이 있다. Static NAT(정적 NAT)
- IPv4 주소 고갈문제의 솔류션으로 NAT가 사용된다.
인터넷 대중화로 폭증한 IP 주소 요구를 극복하기 위해 사용된다.
외부에 공개해야 하는 서비스에 대해서는 공인 IP를 사용하고, 외부에 공개할 필요가 없는 일반 사용자의 PC나 기타 종단 장비에 대해서는 사설 IP를 사용해 꼭 필요한 곳에만 효율적으로 IP를 사용할 수 있게 된다.
- 보안을 강화하는데 NAT 기술을 사용한다.
IP 주소는 네트워크에서 유일해야 하고, 이 정보가 식별자로 사용되어 외부와 통신하게 해준다. 외부와 통신할 때 내부 IP를 다른 IP로 변환해 통신하면 외부에 사내 IP 주소 체계를 숨길 수 있다.
내부 네트워크에서 외부 네트워크로 나가는 동안은 통신을 허용하지만, 외부에서 시작해 내부로 들어오는 통신은 방어할 수 있다.
- IP 주소 체계가 같은 두 개의 네트워크 간 통신을 가능하게 해준다.
IP 네트워크에서 서로 통신하러면 식별 가능한 유일한 IP 주소가 있어야 한다. 공인 IP는 유일한 주소로 중복되면 안 되지만, 사설 IP는 외부와 통신 할 때 공인 IP로 변환되어 통신하므로 서로 다른 회사에서 중복해 사용할 수 있다.
- 불필요한 설정 변경을 줄일 수 있다.
KISA를 통해 인터넷 독립기관으로 등록하고 직접 IP주소를 운영하는것이 아니려먼 보통 통신사업자나 IDC 쪽에서 IP를 할당받아 사용하게 된다. 이 IP 들은 빌려서 사용하는 것이므로 회선 사업자를 바꾸거나 IDC를 이전하면 그동안 빌려왔던 공인 IP를 더 이상 사용할 수 없고 신규 사업자가 빌려주는 IP로 변경해야 한다.
만약 사용자가 NAT/PAT을 이용해 내부 네트워크를 구성하고 있었다면 서버와 PC의 IP 주소 변경 없이 회선과 IDC 사업자 이전이 가능하다.
💡 물론 외부에 서비스하던 공인 IP 주소가 변경되므로 DNS 서비스나 NAT을 수행하는 네트워크 장비는 번경해야 하지만 내부 서버나 PC 설정 변경을 최소화 할 수 있어 복잡한 작업을 많이 줄일 수 있다.NAT 기술엔 장점만 있는것은 아니다. 네트워크 운영자 입장에서는 IP가 변환되면 장애가 발생했을 때 문제 해결이 힘들어진다. NAT 으로 인해 주소가 변환되면서 단말 간 직접적인 연결성이 무너졌고, 개발자들이 애플리케이션을 제작할 때 NAT 환경을 항상 고려해야 하는 점 도 있다.
IPv6 전환이 IPv4 주소 부족 해결이라는 큰 목표도 있지만 이런 단점이 있는 NAT을 없애는(사용하지 않는)목적도 있다.
네트워크 프로토콜은 실제로 데이터를 실어나르는 ‘데이터 프로토콜’과 이 데이터 프로토콜이 잘 동작하도록 도와주는 ‘컨트롤 프토로콜’이 있다.
TCP/IP 프로토콜 체계를 유지하기 위한 주요 컨트롤 프로토콜에는 ARP, ICMP,DNS 가 있다. 이 중 DNS(Domain Name System)는 도메인 주소를 IP 주소로 변환하는 역할을 한다.