더북(TheBook)

공유기는 패킷 헤더를 변경합니다. 패킷의 송신자 필드에는 192.168.0.5:10 내부 주소가 있는데, 이를 55.66.77.88:2010 외부 주소로 변경합니다. 이렇게 패킷에 적혀 있던 주소를 변환해 버리기 때문에 NAT라고 하는 것입니다. 이제 외부 인터넷 회선으로 패킷을 보냅니다.

이 패킷은 성공적으로 공유기 바깥 기기(11.22.33.44:1000)에 도착합니다. 이 기기는 패킷을 보낸 송신자가 55.66.77.88:2010인 것만 알 뿐, 그것이 공유기 안에 있는지 여부는 몰라도 됩니다.

도착한 곳에서 이제 응답 패킷을 보내 봅시다. 이때도 공유기 바깥 기기는 자기가 보내는 데이터를 받는 기기가 공유기 안에 있는지 알 필요가 없습니다. 이 패킷에는 송신자가 11.22.33.44:1000이고, 수신자가 55.66.77.88:2010일 것입니다.

이제 공유기는 이 응답 패킷을 받습니다. 패킷에는 수신자가 55.66.77.88:2010으로 되어 있습니다. 공유기는 이 주소에 대응하는 포트 매핑 엔트리를 찾습니다. 앞 과정에서 포트 매핑 엔트리를 이미 만들어 놓은 것이 대응합니다. 공유기는 응답 패킷의 수신자 끝점 필드를 포트 매핑 엔트리의 192.168.0.5:10 내부 주소로 바꾼 후 공유기 안 기기에 전달합니다.

이렇게 함으로써 성공적으로 공유기 내 기기와 공유기 외 기기가 서로 대화할 수 있습니다.

인터넷 공유기는 IPv4 네트워크에서 주소 개수가 모자라는 문제를 해결하기도 합니다. IPv6에서는 주소 개수가 모자라는 일이 거의 드뭅니다. 하지만 인터넷 상품은 대부분 IP 주소 하나만 제공하는 반면, 요즘 일반적인 가정에서는 가족 구성원마다 스마트폰이 하나씩 있고 컴퓨터도 한 대 이상 있습니다. 이러한 상황에서 IP 주소 개수만큼 인터넷 상품을 사는 것은 경제적이지 않겠지요. 이때는 인터넷 공유기가 효과적입니다. 따라서 NAT 기술은 여전히 활용될 것입니다.

3G, 4G, LTE 같은 모바일 셀룰러 통신은 매우 많은 수의 기기를 지원해야 합니다. 그러다 보니 여기서도 NAT 라우터가 쓰입니다. 스마트폰 통신 업체들이 사용하는 이 대규모 사용자용 NAT 라우터를 Carrier-grade NAT라고 합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.