공유기(NAT환경)의 작동 원리

어떤 소규모 기업이 인트라넷에 네트워크 ID 192.168.0.0을 사용하고 ISP(인터넷 서비스 공급자)로부터 공용 주소w1.x1.y1.z1을 받았다면 NAT(네트워크 주소 변환)는 192.168.0.0의 모든 개인 주소를 IP 주소 w1.x1.y1.z1로 매핑합니다. 단일 공용 주소에 여러 개의 개인 주소를 매핑하면 NAT는 동적으로 선택된 TCP 및 UDP 포트를 사용하여 한 인트라넷 위치를 다른 위치와 구별합니다. 참고
  • w1.x1.y1.z1와 w2.x2.y2.z2를 사용하는 것은 IANA(Internet Assigned Numbers Authority)나 ISP에서 할당 받은 대로 유효한 공용 IP 주소를 표현하기 위해서입니다.
다음 그림은 NAT를 사용하여 인트라넷을 인터넷에 투명하게 연결하는 예를 보여 줍니다. NAT 사용의 예192.168.0.10에 있는 개인 사용자가 웹 브라우저를 사용하여 w2.x2.y2.z2에 있는 웹 서버에 연결할 경우 사용자의 컴퓨터는 다음 정보를 사용하여 IP 패킷을 만듭니다.
  • 대상 IP 주소: w2.x2.y2.z2
  • 원본 IP 주소: 192.168.0.10
  • 대상 포트: TCP 포트 80
  • 원본 포트: TCP 포트 5000
이 IP 패킷은 NAT 프로토콜에 전달되고, NAT 프로토콜은 나가는 패킷의 주소를 다음과 같이 변환합니다.
  • 대상 IP 주소: w2.x2.y2.z2
  • 원본 IP 주소: w1.x1.y1.z1
  • 대상 포트: TCP 포트 80
  • 원본 포트: TCP 포트 1025
NAT 프로토콜은 {192.168.0.10, TCP 1025}에서 {w1.x1.y1.z1, TCP 5000}으로의 매핑을 테이블에 보관합니다. 변환된 IP 패킷은 인터넷을 통해 보내집니다. 응답은 되돌아 오고 NAT 프로토콜이 이것을 받게 됩니다. 받은 패킷에는 다음과 같은 공용 주소 정보가 들어 있습니다.
  • 대상 IP 주소: w1.x1.y1.z1
  • 원본 IP 주소: w2.x2.y2.z2
  • 대상 포트: TCP 포트 1025
  • 원본 포트: TCP 포트 80
NAT 프로토콜은 변환 테이블을 확인하여 공용 주소를 개인 주소에 매핑한 다음 192.168.0.10에 있는 컴퓨터에 패킷을 전달합니다. 전달된 패킷에는 다음과 같은 주소 정보가 들어 있습니다.
  • 대상 IP 주소: 192.168.0.10
  • 원본 IP 주소: w2.x2.y2.z2
  • 대상 포트: TCP 포트 5000
  • 원본 포트: TCP 포트 80
NAT 프로토콜에서 나가는 패킷의 경우, 원본 IP 주소(개인 주소)는 ISP 할당 주소(공용 주소)로 매핑되고 TCP/UDP 포트 번호는 다른 TCP/UDP 포트 번호에 매핑됩니다. NAT 프로토콜에 들어오는 패킷의 경우, 대상 IP 주소(공용 주소)는 원본 인트라넷 주소(개인 주소)에 매핑되고 TCP/UDP 포트 번호는 원래 TCP/UDP 포트 번호에 다시 매핑됩니다. 참고
  • IP 헤더에 IP 주소만 들어 있는 패킷은 NAT로 변환됩니다. IP 페이로드 내에 IP 주소가 들어 있는 패킷은 NAT로 변환되지 않을 수도 있습니다.
인터넷상에서 통신하려면 IANA(Internet Assigned Numbers Authority)에서 할당한 주소를 사용해야 합니다. IANA에서 할당한 주소로 인터넷을 통해 트래픽을 받을 수 있으며 이 주소를 공용 주소라고 합니다. 일반적인 소규모 기업이나 홈 오피스에서는 일정 범위의 공용 주소를 받은 ISP(인터넷 서비스 공급자)로부터 공용 주소를 할당 받습니다. 소규모 사무실이나 홈 오피스의 여러 컴퓨터가 인터넷에서 통신할 수 있도록 하려면 각 컴퓨터에 자체의 공용 주소가 있어야 합니다. 이 요구 사항 때문에 사용할 수 있는 공용 주소 풀을 확보하는 것이 큰 문제가 되었습니다. 이러한 문제를 해소하기 위해 IANA는 개인 인터네트워크의 네트워크 ID를 예약하는 주소 재사용 방법을 제공했습니다. 개인 네트워크 ID로 다음과 같은 것이 있습니다.
  • 서브넷 마스크가 255.0.0.0인 10.0.0.0
  • 서브넷 마스크가 255.240.0.0인 172.16.0.0
  • 서브넷 마스크가 255.255.0.0인 192.168.0.0
개인 인트라넷용으로 예약된 IP 주소 공간 부분에 대한 자세한 내용은 RFC 1918, "Address Allocation for Private Internets"를 참조하십시오. 이러한 범위의 모든 주소를 개인 주소라고 합니다. 개인 주소로는 인터넷을 통해 트래픽을 받을 수 없습니다. 따라서 인트라넷이 개인 주소를 사용하여 인터넷을 통해 통신할 경우에는 개인 주소를 공용 주소로 변환해야 합니다. 네트워크 주소 변환기는 개인 주소를 사용하는 인트라넷과 공용 주소를 사용하는 인터넷 사이에 놓입니다. 인트라넷에서 나가는 패킷은 NAT(네트워크 주소 변환)에서 공용 주소로 변환되는 개인 주소를 갖고 있습니다. 인터넷에서 들어오는 패킷은 NAT에서 개인 주소로 변환되는 공용 주소를 갖고 있습니다. 자세한 내용은 NAT 예제를 참조하십시오.
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기