Разница между командами Traceroute и Tracert заключается в используемых протоколах и методах отслеживания пути пакетов данных. 2
Tracert используется в Windows и реализован на основе протокола ICMP (Internet Control Message Protocol). 12 Процесс начинается с отправки ICMP-пакета с начальным TTL (Time to Live) равным 1. 2 Когда TTL достигает нуля, маршрутизатор, обработавший пакет, не отправляет его дальше, а возвращает исходному хосту сообщение ICMP «Time Exceeded», что позволяет Tracert зарегистрировать устройство как промежуточный пункт (хоп). 2
Traceroute используется в Unix-подобных системах (например, Linux и MacOS) и отличается использованием UDP (User Datagram Protocol) вместо ICMP для отправки пакетов. 2 Traceroute отправляет несколько UDP-пакетов с последовательно увеличивающимися значениями TTL (начиная с 1 и далее). 2 Ключевое отличие состоит в том, как Traceroute определяет достижение конечной цели: когда UDP-пакет достигает целевого хоста, последний обычно отвечает сообщением «Destination Port Unreachable» из-за того, что целевой порт (обычно редко используемый порт, например, 34434) закрыт. 2 Это сообщение означает, что пакет достиг своего конечного пункта. 2