1 (2014-12-19 18:38:40 отредактировано z668)

Тема: TTL

Добрый день.
В одном офисе наблюдается такая проблема, скачут пинги, теряются пакеты.
Есть одна странность с TTL, сеть устроена так: Router (Шлюз, включен DHCP) <витая пара> тупой свич <витая пара> AP 1 <Wi-Fi> AP 2 <витая пара> тупой свич <витая пара> 3 ПК (ip статикой прописаны, шлюз == роутер, маска 255.255.255.0, dns 1 - прописан шлюз).
При пинге с любого из 3-х компьютеров AP 1 TTL почему то составляет 64, почему такое может быть? Получается пакеты идут через WAN?

2

Re: TTL

Вы пингуете AP и у вас TTL 64? так и должно быть, тк устройство находится в той-же сети.
Ваш роутер должен изменять TTL (в любую сторону хоть это и не желательно) на выходе WAN, он должен отнимать 1. Если бы они шли через роутер то TTL был-бы 63

libastral.so не подключается, а бубен временно не доступен. Пишите подробнее.

3 (2014-12-19 18:38:54 отредактировано z668)

Re: TTL

Чет я в конец запутался с этим TTL, согласно этой статье: /praktiks/boremsya_s … ormom.html  изначальный TTL имеет значение 255, как получилось 64? По логике 255 - 64 = 191, т.е. пакет должен был пройти 191 хоп.

4

Re: TTL

нет, максимальное значение 8 бит, те 2^8=255 (тк считается от 0), ОС или роутер сами устанавливают значение TTL в пакете. Для XP это 64, в Ubuntu и Fedora тоже 64, хотя встречается и 128.
---- Вот что говорит Википедия
В IPv4 TTL представляет собой восьмиразрядное поле IP-заголовка. Оно находится в девятом октете из двадцати. Значение TTL может рассматриваться как верхняя граница времени существования IP-датаграммы в сети. Поле TTL устанавливается отправителем датаграммы, и уменьшается каждым узлом (например, маршрутизатором) на пути его следования, в соответствии со временем пребывания в данном устройстве или согласно протоколу обработки.

Если поле TTL становится равным нулю до того, как датаграмма прибудет в пункт назначения, то такая датаграмма отбрасывается и отправителю отсылается ICMP-пакет с кодом 11 — «Превышение TTL».

Отбрасывание пакетов с истекшим временем жизни позволяет избежать ситуаций, когда недоставленные датаграммы продолжают «вечно» циркулировать в системе Интернет, перегружая сеть (например, при образовании зацикленных маршрутов из-за некорректной маршрутизации).

Изначально, по стандарту RFC791, время жизни (TTL) в протоколе IPv4 должно было измеряться в секундах (отсюда и название). Каждая секунда ожидания в очереди узла (например, маршрутизатора), а также каждый переход на новый узел, через который проходит датаграмма, должен был уменьшить значение TTL на одну единицу. На практике, это не прижилось и поле TTL просто уменьшается на единицу на каждом транзитном узле (хопе), через который проходит датаграмма. Для того чтобы отразить это, в протоколе IPv6 поле TTL переименовано в «хоп лимит» (Hop Limit).

libastral.so не подключается, а бубен временно не доступен. Пишите подробнее.

5 (2014-12-19 18:39:00 отредактировано z668)

Re: TTL

Спасибо, теперь стало понятно откуда взялось значение, его установила ось при отправке пакета. Еще один момент, может быть знаете, по какому именно критерию устанавливается значение 64 или 128 осью?

6

Re: TTL

Да кто его знает, в принципе и 32 хватит что-бы по всем сетям пройтись, тк обычно от клиента до сервера 5-14 хопов

libastral.so не подключается, а бубен временно не доступен. Пишите подробнее.