Сомнение По умолчанию время жить (TTL) 255?

Я знаю, что значение "Время жизни по умолчанию" равно 255, каждый раз, когда пакет ipv4 пересекает маршрутизатор, это значение уменьшается на 1.

Но, когда я пингую мой маршрутизатор adsl, он показывает TTL как 64

Pinging 192.168.0.1 with 32 bytes of data:
Reply from 192.168.0.1: bytes=32 time=1ms TTL=64
Reply from 192.168.0.1: bytes=32 time=2ms TTL=64
Reply from 192.168.0.1: bytes=32 time=2ms TTL=64
Reply from 192.168.0.1: bytes=32 time=2ms TTL=64

Существует только один переход ч / б от компьютера к маршрутизатору, поэтому мой ожидаемый TTL составляет 254, но почему здесь ping показывает TTL как 64..

Любая помощь может быть оценена...

3 ответа

Вот соответствующая цитата из ping страница руководства:

ДЕТАЛИ TTL Значение TTL IP-пакета представляет собой максимальное количество IP-маршрутизаторов, через которые пакет может пройти, прежде чем его выбросят. В текущей практике вы можете ожидать, что каждый маршрутизатор в Интернете будет уменьшать поле TTL ровно на единицу.

Спецификация TCP/IP рекомендует установить для поля TTL для IP-пакетов значение 64, но во многих системах используются меньшие значения (4.3BSD использует 30, 4.2BSD использует 15).

И процитировать RFC 1700:

Текущее рекомендуемое время жизни по умолчанию (TTL) для Интернет-протокола (IP) составляет 64.

Максимальный TTL составляет 255, но это не значение по умолчанию. Значение по умолчанию зависит от операционной системы, как вы можете видеть здесь.

Например, посмотрите на pings до 127.0.0.1 в Windows против Linux:

Мои окна 7:

Пинг Windows

Мой Linux-компьютер:

Линукс пинг

Таким образом, кажется, что вы получаете ответы от машины, по умолчанию 64.

Значения TTL определяются удаленным компьютером. Например, если вы пропингуете компьютер с Linux, его исходное значение TTL равно 64. В зависимости от того, сколько сетей он пересекает, чтобы вернуться к вам, TTL вычитается из значения 1. Так что, если вы пропингуете 8.8.8.8, то есть Googles nameserver, он имеет исходное значение 128. К тому времени, когда он возвращается к вам, он может иметь значение 121 (это для меня). Это означает, что он пересек 7 сетей, чтобы добраться до меня, и это была машина Windows.

Общие значения TTL - Маршрутизатор - 255 Windows - 128 Linux-Mac - 64

Другие вопросы по тегам