Утилита traceroute (tracert в Windows) предназначена для определения маршрутов следования данных в сетях TCP/IP и отслеживания задержек до промежуточных узлов.
В то время, как утилита ping может определить наличие проблемы, traceroute помогает определить место возникновения проблемы.
Traceroute может использовать разные протоколы передачи данных в зависимости от операционной системы. Такими протоколами могут быть UDP, TCP, ICMP или GRE. Компьютеры с Windows используют ICMP-протокол, Linux и Mac — UDP.
Мы советуем использовать протокол ICMP, для этого укажите параметр:
-I, --icmp
Например:
tracert -I [Имя хоста или IP-адрес]
Использование
Traceroute выполняется в интерфейсе командной строки.
Windows
Нажмите “⊞ Win” + “R”, введите “cmd.exe” и нажмите “Ввод” для запуска интерпретатора команд на вашем компьютере с Windows. Выполните команду tracert с указанием адреса хоста. Обратите внимание, что tracert по умолчанию использует пакеты ICMP для проверки маршрута.
tracert [Имя хоста или IP-адрес]
Linux
Нажмите Ctrl+Alt+T чтобы открыть Терминал. Выполните команду traceroute с указанием адреса хоста.
traceroute -I [Имя хоста или IP-адрес]
macOS
Нажмите “Command ⌘” + “Пробел”, введите “Terminal” и нажмите “Ввод” для запуска Terminal на вашем Mac. Выполните команду traceroute с указанием адреса хоста.
traceroute -I [Имя хоста или IP-адрес]
Например:
$ traceroute -I ucdn.com
traceroute to ucdn.com (188.72.220.195), 30 hops max, 60 byte packets
1 184.170.253.126 113,215ms 113,273ms 113,035ms
2 98.142.220.60 112,893ms 113,004ms 113,103ms
3 38.122.14.121 113,584ms 113,652ms 113,304ms
4 154.54.81.25 114,159ms 114,348ms 113,976ms
5 154.54.30.186 180,025ms 180,160ms 180,159ms
6 154.54.56.94 187,623ms 318,430ms 187,665ms
7 154.54.56.166 193,894ms 193,503ms 193,418ms
8 149.11.202.26 198,873ms 200,900ms 194,585ms
9 78.140.169.239 194,010ms 193,363ms 195,771ms
10 188.72.220.195 193,675ms 193,244ms 193,252ms
Интерпретация результатов
traceroute по умолчанию измеряет 30 отрезков маршрута:
traceroute to ucdn.com (188.72.220.195), 30 hops max, 60 byte packets
Первая строка в результатах traceroute сообщает о том, что делает команда: указывает хост назначения (ucdn.com), IP-адрес назначения (188.72.220.195) и максимальное количество отрезков маршрута, которые будут проверены в тесте traceroute (30).
Остальные строки показывают информацию о каждом отрезке на пути между отправителем и конечным пунктом назначения:
1 184.170.253.126 113,215ms 113,273ms 113,035ms
2 98.142.220.60 112,893ms 113,004ms 113,103ms
3 38.122.14.121 113,584ms 113,652ms 113,304ms
4 154.54.81.25 114,159ms 114,348ms 113,976ms
5 154.54.30.186 180,025ms 180,160ms 180,159ms
6 154.54.56.94 187,623ms 318,430ms 187,665ms
7 154.54.56.166 193,894ms 193,503ms 193,418ms
8 149.11.202.26 198,873ms 200,900ms 194,585ms
9 78.140.169.239 194,010ms 193,363ms 195,771ms
10 188.72.220.195 193,675ms 193,244ms 193,252ms
Первая строка представляет ваш маршрутизатор (если вы находитесь за маршрутизатором), следующие строки представляют вашего интернет-провайдера, а каждая последующая строка представляет сетевое устройство, которое находится дальше.
Формат каждой строки следующий:
hop [hostname/IP address] RTT1 RTT2 RTT3
hop:
Первый столбец результатов traceroute показывает количество переходов. Отрезок каждого маршрута, по которому пакет достигает следующего промежуточного сетевого устройства, называется переходом (hop). Например, в приведенных выше результатах для достижения указанного хоста (ucdn.com) из места, где traceroute был запущен, требуется 10 переходов.
[hostname/IP address]:
[Имя хоста] или [IP-адрес] помогает вам увидеть местоположение маршрутизатора / сетевого устройства.
RTT1, RTT2, RTT3:
This is the round-trip time that it takes for a packet to get to a hop and back to your device (shown in milliseconds). It is often referred to as latency. The traceroute sends three packets to each hop and displays each time. The output of the traceroute may show asterisks [ * * * ] instead of the hostname and response times. The asterisks indicate that the target network device does not respond as the traceroute expected before the timeout occurred. This could be an indication of packet loss.
Это время приема-передачи, которое требуется пакету, чтобы добраться до узла и обратно на ваше устройство (отображается в миллисекундах). Это часто называют задержкой. Traceroute отправляет три пакета на каждый переход и каждый раз отображает их время приема-передачи. В результатах traceroute вместо имени хоста и времени ответа могут отображаться звездочки [* * *]. Звездочки указывают на то, что целевое сетевое устройство не отвечает в соответствии с ожидаемой трассировкой до истечения тайм-аута. Это может быть признаком потери пакета.