Я изучаю компьютерные сети и ищу способ симулировать traceroute с помощью ping
команды. Я думаю, что это как-то связано с ttl, но я не знаю, как это развить дальше.
решение1
Есть способ сделать это.
В Linux или Cygwin:
for i in {1..30}; do ping -t $i -c 1 google.com; done | grep "Time to live exceeded"
В Windows:
for /l %i in (1,1,30) do @ping -i %i -n 1 google.com | find "TTL expired"
Пример вывода с Amazon EC2 VPS:
From 100.64.16.93 icmp_seq=1 Time to live exceeded
From 205.251.232.220 icmp_seq=1 Time to live exceeded
From 205.251.232.202 icmp_seq=1 Time to live exceeded
From 205.251.232.75 icmp_seq=1 Time to live exceeded
From 205.251.225.181 icmp_seq=1 Time to live exceeded
From 72.14.219.251 icmp_seq=1 Time to live exceeded
From 209.85.249.32 icmp_seq=1 Time to live exceeded
From 216.239.51.159 icmp_seq=1 Time to live exceeded
В этом случае пинг не разрешен, поэтому время ожидания истекло.