Недавно я обнаружил, что некоторые отправленные мне пинги давали TTL
ошибка. Когда кто-то пингует мой компьютер, он показывает другое TTL
значение для каждого пакета.
Например, ping.eu показывает, что:
--- PING 78.188.216.242 (78.188.216.242) 56(84) bytes of data. ---
64 bytes from 78.188.216.242: icmp_req=1 ttl=112 time=78.7 ms
64 bytes from 78.188.216.242: icmp_req=2 ttl=17 time=78.8 ms
64 bytes from 78.188.216.242: icmp_req=3 ttl=206 time=78.7 ms
64 bytes from 78.188.216.242: icmp_req=4 ttl=212 time=78.7 ms
--- 78.188.216.242 ping statistics ---
packets transmitted 4
received 4
packet loss 0 %
time 3002 ms
--- Round Trip Time (rtt) ---
min 78.734 ms
avg 78.782 ms
max 78.861 ms
mdev 0.050 ms
(И иногда я вижу request timed out
и TTL expired
ошибки тоже.)
Как видите, у каждого пакета свой TTL
стоимость. Это проблема? Если да, то это вызвано моей конфигурацией сети или моим интернет-провайдером? И что мне делать в этой ситуации?
Если это важно, я использую WRT54GH
домашний роутер с ZyXEL ADLS
мост-модем, соединяющий три компьютера с Windows. Вы можете попробовать пинговать меня по моему IP-адресу, 78.188.216.242
.
Я получил аналогичные результаты, проверяя ваш IP-адрес из США.
Когда я отправил эхо-запрос 81.212.77.58, следующий восходящий от вас переход, который, как я полагаю, является оборудованием вашего интернет-провайдера, мне каждый раз возвращался TTL равный 243. Это явно неверно.
Следующий переход в восходящем направлении от этого действовал разумно, каждый раз с TTL равным 54.
Мое сильное подозрение, основанное на этих результатах, состоит в том, что ваш интернет-провайдер искажает пакеты.
Если вы не пингуете себя, возвращаемые значения TTL являются значениями TTL для полученного пакета проверки связи. Вы мало что можете сделать, чтобы этим управлять.