네트워크 문제 해결에 있어서 Ping과 더불어 가장 기본적인 도구 중 하나인 Traceroute (Windows 환경에서는 tracert)는, 이름에서도 알 수 있듯이, 한 컴퓨터에서 다른 컴퓨터로 데이터가 이동하는 경로를 추적합니다. 단순히 호스트 연결을 확인하는 것을 넘어, 그 경로와 발생할 수 있는 여러 문제에 대한 상세 정보를 제공하는 매우 유용한 도구입니다. 하지만, 그 유용성에도 불구하고 몇 가지 제한적인 면모도 가지고 있습니다. 다행히도, 많은 개발자들이 Traceroute의 개선된 버전을 만들기 위해 노력해 왔으며, 본문에서는 이러한 노력의 결과물들을 살펴봅니다. GUI 기반 도구, 명령줄 도구, 그리고 온라인 도구까지 다양하게 존재합니다.
Traceroute의 5가지 주요 대안을 소개하기 전에, Traceroute가 무엇이며 어떻게 동작하는지에 대한 기본적인 설명을 먼저 제공합니다. 그 후, 이 도구가 가진 몇 가지 한계점을 짚어보고, 이러한 한계점을 극복하기 위해 Traceroute에 적용할 수 있는 개선 사항에 대해 논의할 것입니다. 우리는 이상적인 ‘개선된 Traceroute’를 정의해 보고, 이를 토대로 최고의 대안 5가지를 소개할 예정입니다. 로컬 설치형 패키지 3개와 온라인 유틸리티 2개를 포함합니다.
Traceroute란 무엇인가?
위키피디아에서 정의하는 Traceroute는 “인터넷 프로토콜(IP) 네트워크에서 패킷 전송 경로와 지연 시간을 측정하는 네트워크 진단 도구”입니다. 하지만 이 설명만으로는 구체적인 동작 방식을 이해하기 어려울 수 있습니다. Traceroute는 컴퓨터와 원격 컴퓨터 사이의 모든 라우터의 IP 주소를 제공하며, 각 라우터의 응답 시간까지 알려줍니다.
Traceroute는 매우 오래된 도구로, 1987년에 처음 등장했습니다. 이는 컴퓨터 분야에서는 아주 오랜 역사를 가진 셈입니다. 유닉스 운영체제에서 처음 소개된 이후, 리눅스, OS X를 포함한 모든 유닉스 계열 OS에서 널리 사용되고 있습니다. 또한, Windows 플랫폼에도 이식되어, ‘tracert’라는 이름으로 사용됩니다.
네트워크 관리자라면 누구나 이해하고 활용해야 하는 도구이지만, 많은 사용자들이 Traceroute의 작동 원리를 제대로 이해하지 못하여 여러 함정에 빠지기도 합니다. 예를 들어, 트래픽이 나가는 경로와 돌아오는 경로가 다를 수 있으며, Traceroute에서는 이를 확인할 수 없습니다.
Traceroute는 어떻게 작동하는가?
인터넷이나 모든 IP 네트워크는 상호 연결된 라우터들로 구성됩니다. 라우터들은 서로 통신하여 도달 가능한 네트워크 정보를 교환하고, 이 정보를 바탕으로 라우팅 테이블을 생성합니다. 데이터 패킷이 라우터에 도달할 때마다, 라우터는 라우팅 테이블에서 목적지를 찾아 패킷을 다음 라우터로 전송합니다. 각 라우터는 다음 라우터에 대한 정보만 가지고 있을 뿐, 전체 경로는 알지 못합니다.
과도한 라우팅 홉으로 인한 전파 지연을 제한하기 위해, 모든 데이터 패킷의 헤더에는 TTL (Time To Live)이라는 데이터 필드가 포함되어 있습니다. 이름과는 달리 시간과는 관련이 없고 거리와 관련된 값입니다. 패킷이 출발할 때 TTL은 일반적으로 32로 설정되며, 패킷을 처리하는 각 라우터는 패킷을 전송하기 전에 TTL 값을 1씩 감소시킵니다. TTL 값이 0에 도달하면 라우터는 패킷을 전송하지 않고, ICMP “Time Exceeded” 메시지를 출발지로 되돌려 보냅니다.
Traceroute는 이러한 오류 감지 및 보고 시스템을 활용하여 동작합니다. 먼저 TTL 값을 1로 설정한 패킷을 목적지로 전송합니다. 경로의 첫 번째 라우터는 TTL 값을 감소시키고, “Time Exceeded” 메시지를 보내 Traceroute가 첫 번째 홉의 IP 주소를 알 수 있도록 합니다. 그 다음, TTL 값을 2로 설정하여 두 번째 홉의 정보를 얻는 방식으로, 목적지로부터 응답을 받을 때까지 TTL 값을 증가시켜 가며 경로를 추적합니다.
Traceroute는 각 응답을 받는 데 걸리는 시간도 측정하여 각 홉에 대한 응답 시간 테이블을 생성합니다. 또한, 각 홉의 IP 주소에 대한 DNS 조회를 수행하여, IP 주소 대신 각 호스트의 FQDN (Fully Qualified Domain Name)을 결과에 표시합니다.
Traceroute의 문제점은 무엇인가?
Traceroute는 유용하지만 몇 가지 단점도 가지고 있습니다. 주요 단점 중 하나는, 목적지까지의 경로만 보여주고 돌아오는 경로는 알 수 없다는 점입니다. 특히 반환 경로에 문제가 있는 경우, 정확한 문제 지점을 파악하기 어려울 수 있습니다. 응답 시간을 측정하지만, 나가는 경로와 돌아오는 경로 중 어느 경로에서 지연이 발생하는지 알 수 없어, 잠재적으로 잘못된 결과를 얻을 수도 있습니다.
또한, 여러 호스트로 부하 분산된 대상의 경우 문제가 발생할 수 있습니다. 각 연속적인 패킷이 동일한 호스트로 전송된다는 보장이 없기 때문에, 결과가 부정확할 수 있습니다. 일부 라우터는 보안상의 이유로 Traceroute가 사용하는 요청 유형에 응답하지 않도록 설정되어 있을 수도 있습니다. 이 경우, Traceroute는 해당 홉을 무시하고 연결할 수 없는 것으로 표시합니다.
개선된 Traceroute (Traceroute on Steroids)
Traceroute는 매우 유용한 도구이지만, 더 나은 추적 경로를 필요로 하는 사용자들도 많습니다. 다행히도, 많은 개발자들이 Traceroute의 개선을 위해 노력해 왔습니다. 일부는 단순히 외관적인 개선에 그쳤지만, 몇몇 도구들은 유용한 기능들을 추가했습니다. 예를 들어, 고급 Traceroute 도구들은 각 홉에 대한 상세한 정보를 제공합니다. IP 주소를 기반으로 라우터의 소유자 또는 위치 정보를 제공하기도 합니다.
일부 도구들은 더욱 발전하여, 추적된 경로를 지도 위에 시각적으로 표시하여 사용자가 경로를 보다 쉽게 이해할 수 있도록 돕습니다.
주요 Traceroute 대안 5가지
최고의 Traceroute 대안을 찾기 위해, 웹을 샅샅이 조사했습니다. 몇몇 도구들은 기존의 Traceroute와 완전히 다른 형태를 가지고 있지만, 다른 도구들은 더 작은 개선 사항을 제공합니다. 우리는 기능, 평판, 사용자 수 등을 고려하여 상위 5가지 도구를 선정했습니다.
우리가 선택한 도구들에는 로컬 설치형 도구와 웹 기반 도구가 모두 포함되어 있습니다. 로컬 소프트웨어는 대규모 기업 네트워크의 경로를 분석하고, 지연 시간 문제가 있는 네트워크 부분을 찾는 데 유용합니다. 웹 기반 도구는 원격 서버에서 실행되며, 여러 소스에서 동시에 테스트를 실행할 수 있도록 해주어, 웹사이트의 응답 문제 해결에 유용합니다.
1. SolarWinds Traceroute NG (무료 다운로드)
SolarWinds는 네트워크 관리 도구 분야에서 잘 알려진 기업입니다. 이들은 네트워크 모니터링 솔루션인 Network Performance Monitor를 포함하여, 다양한 네트워크 관리 도구를 개발하고 있습니다. 특히, 네트워크 관리자의 특정 요구 사항을 해결하는 무료 도구를 제공하는 것으로 유명합니다. Traceroute NG는 그 중 하나입니다.
Traceroute NG는 SolarWinds의 Netpath 기술을 활용하여 지속적인 TCP 및 ICMP 추적을 제공합니다. 다른 Traceroute 도구보다 빠르고, 몇 초 안에 결과를 보여준다고 주장합니다. (물론 네트워크 환경에 따라 다를 수 있습니다.)
Traceroute NG는 Traceroute의 속도를 향상시킬 뿐만 아니라, 상황에 대한 더 깊은 통찰력을 제공하는 다양한 정보들을 보여줍니다. 각 홉에 대한 패킷 손실률, 현재 및 평균 응답 시간, 지연 시간 그래프 등을 제공합니다. 또한, 역방향 DNS 조회를 통해 각 홉의 FQDN을 찾아 표시합니다.
경로 변경을 자동으로 감지하는 기능도 훌륭합니다. 특정 호스트에 대한 경로가 여러 개인 경우, 도구는 각 경로를 개별적으로 표시하여 부하 분산 환경에서 문제 해결에 유용합니다. TCP 또는 ICMP 패킷을 사용하여 테스트를 실행할 수 있는 기능도 제공하며, 이는 ICMP를 차단하는 장비가 있는 경우 유용합니다. 테스트 결과를 .txt 로그 파일로 저장하는 기능도 제공합니다.
Traceroute NG는 Windows에서만 실행되며, 설치가 필요하지 않지만, Winpcap이라는 별도의 프로그램이 필요합니다. 하지만 Traceroute NG 실행 시 Winpcap 설치를 자동으로 안내합니다.
TRACEROUTE NG(공식 다운로드 링크): https://www.solarwinds.com/free-tools/traceroute-ng
2. Open Visual Traceroute
GUI 기반 Traceroute 도구를 찾고 있다면, Open Visual Traceroute가 훌륭한 선택입니다. Windows, Linux, Mac OS X에서 사용 가능한 이 도구는 World 3D 맵 (원하는 경우 2D)에서 데이터가 컴퓨터에서 대상 호스트로 이동하는 경로를 시각적으로 보여줍니다. 지도를 확대/축소하거나 스크롤하여 원하는 수준의 세부 정보를 확인할 수 있습니다.
Open Visual Traceroute에는 몇 가지 유용한 추가 기능이 있습니다. 먼저 “패킷 스니퍼” 기능이 있습니다. Wireshark와 같은 전문 패킷 스니퍼는 아니지만, 로컬 시스템에서 인터넷으로 주고받는 데이터를 볼 수 있도록 도와줍니다. 또한, 인터넷에서 도메인 이름에 대한 정보를 가져오는 Whois 기능도 제공합니다.
3. MTR (My Traceroute)
MTR은 Mike라는 사람이 처음 개발했으며, Mike’s Traceroute의 약자입니다. 이후, 다른 사람이 인수하여 My Traceroute로 이름을 변경했지만, 여전히 같은 제품입니다. 1997년부터 사용되어 온 이 소프트웨어는 오랜 시간 동안 품질을 인정받고 있습니다.
MTR은 기능적으로 Traceroute NG와 매우 유사합니다. 주요 차이점은 Traceroute NG가 Windows 응용 프로그램인 반면, MTR은 Linux에서 실행되며, GUI 또는 명령줄에서 사용할 수 있다는 점입니다.
MTR은 Traceroute와 ping 기능을 하나의 네트워크 진단 도구에 결합했습니다. MTR을 실행하면 먼저 지정된 호스트에 대한 네트워크 경로를 학습하는 Traceroute와 유사하게 작동합니다. 경로를 파악한 후에는 각 라우터에 일련의 ICMP ECHO 요청을 전송하여 링크 품질을 측정하고, 통계 데이터를 화면에 표시합니다. 결과는 표준 출력으로 인쇄되기 때문에 파일로 리디렉션할 수도 있습니다.
4. Monitis Online Visual Trace Route Tool (온라인 도구)
Monitis는 TeamViewer 회사에서 만든 웹사이트 성능 모니터링 플랫폼으로, 클라우드 기반 가상 서비스를 통해 웹사이트, 서버, 애플리케이션 등을 모니터링할 수 있습니다. 약 25만 명의 사용자를 보유하고 있습니다.
Monitis는 온라인 시각적 추적 경로 도구를 웹사이트에서 무료로 제공합니다. 이 도구는 Monitis 서버와 사용자가 지정한 호스트 사이의 경로를 추적하여 지도 위에 표시합니다. 모든 홉의 지리적 위치를 파악하지 못하거나 일부 호스트가 응답하지 않을 수 있기 때문에, 지도 표시에는 모든 홉이 표시되지 않을 수 있습니다. 이는 다른 도구들에서도 공통적으로 나타나는 현상입니다.
이 도구는 기존의 Traceroute 도구와 유사하게 정보를 표 형식으로 표시합니다. 또한, 미국, 유럽, 아시아/태평양이라는 레이블이 붙은 세 개의 탭이 있지만, 탭을 클릭해도 실제 소스가 변경되는 것 같지는 않습니다.
5. G-Suite.Tools Visual Traceroute (온라인 도구)
이름에 속지 마십시오. G-Suite.Tools는 Google과는 무관합니다. 이 웹사이트는 몇 가지 유용한 네트워크 및 인터넷 도구를 제공하며, 그 중 하나가 시각적 경로 추적 도구입니다. 사용법은 매우 간단합니다. IP 주소 또는 FQDN을 입력하고 TRACE 버튼을 클릭하면, 페이지의 작은 지도에 지정된 호스트의 경로가 시각적으로 표시됩니다.
다른 유사한 도구들과 마찬가지로, 테이블 형태로도 정보가 제공됩니다. IP 주소, FQDN(확인 가능한 경우), 각 홉까지의 누적 왕복 시간을 보여줍니다. 이 도구의 가장 큰 장점 중 하나는 Traceroute 과정에 대한 풍부한 정보를 제공한다는 것입니다. 이 정보는 특히 새로운 사용자에게 유용합니다.
G-Suite.Tools에는 Traceroute 도구 외에도 DNS 조회, Whois 조회, ping, 내 IP 주소, IP 주소 위치 확인, 이메일 주소 확인 도구 등 다양한 도구를 제공합니다.
결론
Traceroute는 오랜 시간 동안 사용되어 온 가장 기본적인 진단 도구 중 하나입니다. 그리고 다양한 개선된 버전들이 등장하면서, Traceroute는 더욱 유용하고 강력한 도구가 되었습니다. 본문에서는 5가지 도구만 소개했지만, 더 많은 훌륭한 도구들이 존재합니다. 하지만 지면 관계상, 최고의 5가지 도구로 선택을 제한했습니다.