IP 대역 그리고 위치추적

안녕하세요 Mambo 입니다.

오늘은 IT 인프라를 구성하는 IP 대역과 NAT 그리고 IP를 활용한 위치 추적에 대해서 알아봅니다.

IP 대역

IT 인프라에서 IP는 퍼블릭 IP 그리고 프라이빗 IP로 구분되어집니다. 퍼블릭 IP는 인터넷에 접속할 수 있는 공인 IP를 말하며 프라이빗 IP는 개인적으로 구성한 네트워크 망에서 사용하는 사설 IP를 말합니다. 따라서, 사설망 IP로는 외부 인터넷 접속을 통해 구글 또는 네이버 사이트에 접근할 수 없습니다.

NAT

NAT(IP Network Address Translator)는 IPv4 주소체계의 한계로 인하여 IP 주소가 부족해지는 현상을 보완하기 위해 사용하는 기술입니다. NAT는 내부 사설망 IP를 가지고 외부 네트워크망에 접속할 수 있도록 공인 IP로 변환하는 기능을 수행합니다. 일반적으로 사용하는 공유기에는 NAT 기능을 포함하고 있기 때문에 공유기에서 192.168.0.2와 같은 주소를 할당하더라도 외부 인터넷에 접속할 경우에는 공인 IP로 변환하여 요청하게 됩니다.

이러한 차이로 윈도우 컴퓨터의 명령프롬프트에서 ifconfig 명령어를 실행하면 공유기에서 할당한 사설 IP를 확인할 수 있지만 아이피 정보를 확인할 수 있는 ipconfig.io, ifconfig.io, ifconfig.me에 접속해보면 사설 IP가 아닌 공인 IP를 확인할 수 있습니다.

내부 아이피 조회

외부 아이피 조회

IP 위치 조회

위에서 확인한 공인 IP에 대해서 위치추적 사이트라는 곳에서 조회를 해보면 실제로 살고있는 곳 보다는 터무니없는 곳을 보여주는 경우가 많습니다. 이렇게 위치추적 사이트에서 IP에 대한 위치 조회가 정확하지 않은 이유는 인터넷 서비스 사업자(ISP)인 KT 인터넷과 같은 업체에서 지역을 정해서 IP 대역을 할당하고 그 지역내에서 DHCP를 통해 동적으로 할당하기 때문입니다. 예를 들어, 한국인터넷진흥원에서 제공하는 WHOIS 서비스를 통해 IP를 조회해보면 조금 더 상세한 지역을 안내해줍니다.

WHOIS 조회

실제로 제가 살고 있는 경기도 양주시에서 사용중인 IP라고 안내해주었습니다. 이렇게 한국인터넷진흥원에서 보다 정확한 위치를 확인할 수 있는 이유는 KT 인터넷과 같은 인터넷 서비스 사업자에서 한국인터넷진흥원에 지역에 대한 IP 대역 정보를 등록하기 때문입니다.

공인 IP 대역의 218.152.0.0부터 218.159.255.255는 KT 인터넷에서 사용중인 IP 대역이며 그 중에서 218.156.190.X에 대한 IP 대역은 경기도 양주시에서 사용하도록 할당하는 것을 알 수 있습니다. 위치 추적 사이트에서 인터넷 서비스 사업자의 IP 대역은 알 수 있지만 특정 IP가 실제로 KT 인터넷이 어떤 지역에 할당했는지에 대한 정보가 없기 때문에 KT 인터넷에 대한 본사 또는 지역적으로 퍼져있는 KT 인터넷 장비의 위치 정보를 대신 표시해주는 것 입니다.

인터넷 서비스 사업자는 지역에 대하여 IP 대역을 형성하기 때문에 특정 IP 대역에서 트래픽 과부화가 발생하면 인터넷 속도를 제한하는 락을 걸기도 합니다. 실제로 인터넷 속도가 충분하게 나오지 않아서 인터넷 기사를 불러 확인해보면 주변 장비에 대한 정보를 확인하고 락 해제를 요청하는 걸 많이 경험했습니다.

지난 4월에 난리였던 KT ‘10기가 인터넷’ 속도저하 논란에 방통위 조사 나선다와 같은 경우도 트래픽 규모에 따라 제한을 둔 것인데 기술적으로 결함이 있지 않았나 싶네요.

현실과 영화는 다르다

아무튼, 영화에서는 IP 정보를 알게되면 해당 IP를 사용하는 범죄자의 위치를 정확히 아는 것처럼 나오는 경우가 많습니다. 실제로는 경찰이 필요에 의해 웹 서비스 회사에 특정 아이디에 대한 IP 이력 정보를 요구하는 공조 요청을 하게 되고 제공받은 IP를 다시 인터넷 서비스 사업자인 KT 본사에게 IP 대역에 대한 정보를 요청하게 됩니다. 그래서 최종적으로는 정확한 위치는 아니더라도 대략적으로 읍면동까지는 알게됩니다.

범죄자가 사용하는 IP가 해외에서 사용하는 공인 IP 정보로 조회되는 경우에는 더 까다로워지는 것은 맞습니다. 해당 IP 대역을 할당하는 인터넷 서비스 업체에게 공조 요청을 하는게 아니라 국제형사사법 공조법에 의거해서 국가 간 공조 요청을 하고 제공받아야합니다. 경찰분들이 담당하는 사건들이 하나가 아니기 때문에 해외 IP에 대한 추적을 꺼려하는게 어찌보면 당연할 수 있습니다.

그럼에도 불구하고 성 착취 영상물을 유포한 사건의 용의자도 집요한 추적 끝에 잡아내기도 하죠. 해외 VPN 서버를 사용하면 추적할 수 없다는 이야기를 하는 사람들이 많은데 사실은 추적은 되지만 귀찮을 수 있다라고 봐야겠죠.

실무 환경에서의 IP

그러면 실무 환경인 회사에서 사용하는 IP에 대해서 알아보도록 하겠습니다. 회사에서도 자체 내부 사설망을 구축하여 회사 내부에서 근무하는 직원들이 사용할 수 있는 IP를 할당하게 됩니다. 이러한 것은 회사 네트워크를 관리하는 네트워크 담당자가 수행합니다.

NAT 아이피

일반적으로 라우터 장비로부터 DHCP로 동적으로 할당받는 내부 아이피를 사용하여 인터넷을 사용하지만 경우에 따라서는 외부 인터넷망에서 회사 네트워크 대역에 접근할 수 있도록 NAT 아이피를 요청해야하는 경우도 있습니다.

"외부에서 접근하기 위한 NAT 아이피가 필요합니다."

그러면 네트워크 담당자는 NAT 아이피가 필요한 사유를 검토하고 NAT 아이피와 함께 외부에서 접근 가능한 도메인 주소와 포트 정보를 전달해줍니다. 회사 라우터 장비에서는 외부 트래픽의 도메인과 포트를 확인하고 연결된 NAT 아이피로 트래픽을 전달해줌으로써 내부 사설망에서 실행중인 애플리케이션에 접근할 수 있게 됩니다.

VPN

코로나 19로 인하여 대부분의 IT 기업들이 재택근무를 허용하게 되었습니다. 필요에 의해 회사로 출근하기도 하지만 대부분의 업무는 집에서 수행합니다. 하지만, 개발 조직에서는 개발 환경에서 사용하는 많은 인스턴스를 외부에서 접근이 불가능한 회사 내부 사설망 서버에 구축합니다. 그리고 아마존 웹 서비스와 같은 클라우드 환경을 사용한다고 하더라도 SSH를 통한 인스턴스 접근은 회사에서 사용중인 아이피 대역에 대해서만 허용하는 경우가 많습니다.

집에서 사용하는 공인 IP는 회사에서 사용하는 아이피 대역이 아니므로 SSH 접근이 불가능합니다. 그렇기 때문에 회사 외부에서도 회사에서 사용하는 아이피 대역처럼 사용할 수 있는 VPN을 활용하게 됩니다. 제가 다니고 있는 회사에서는 TLS 프로토콜을 적용하여 통신하는 OpenVPN을 사용하고 있으며 여자친구가 일하는 회사에서는 Pulse Secure와 함께 VIP Access을 사용하여 2단계 인증까지 요구하기도 합니다.

이 글을 보신 여러분들도 인터넷 접속을 위해 할당받은 외부 아이피를 확인해보고 한국인터넷진흥원의 WHOIS 서비스를 통해 어느 지역까지 추적되는지 경험해보시기 바랍니다.

감사합니다.