Почему меняется ttl при пинге
Перейти к содержимому

Почему меняется ttl при пинге

  • автор:

Why do TTLs differ in a ping

If I send a ping to a certain machine across the country with a ttl equal to 15, why does the response from the server have a ttl of 51?

asked Dec 6, 2012 at 3:58
user1553248 user1553248
123 1 1 silver badge 3 3 bronze badges

1 Answer 1

The TTL you set is on the echo request (from you to the remote host), the TTL you are seeing is the echo response (from the remote host to you). The remote host OS determines what the TTL starts at (or you can say it starts at 255 with the responding host deducting a set amount) and then every hop deducts 1.

Example: If you ping a Windows host, it will start at 128, and then if there are 12 hops, you’ll see a TTL of 116 (128-12). In your question you say it’s 51, so that could be a *nix host (starts at 64) with 13 hops.

answered Dec 6, 2012 at 4:13
Ian Shannon Ian Shannon
136 2 2 bronze badges

You must log in to answer this question.

  • networking
  • ping
    Featured on Meta
Linked
Related
Hot Network Questions

Subscribe to RSS

Question feed

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

Site design / logo © 2024 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2024.1.22.3688

What causes the TTL to change while pinging?

I always have a window open running a continuous with ping -t 8.8.8.8 . Many times my TTL changes after awhile and it causes disconnecting and reconnecting of apps and games. For example my TTL is 117 for one hour and without explanation it changes to 121. When it changes my apps and games disconnect and reconnect automatically. This is so annoying and none of the support technicians can explain what’s going on. As long as I’m not a autonomous, can anyone explain to me what’s going on with these TTL changes?! I have Windows 10.

25.8k 19 19 gold badges 97 97 silver badges 132 132 bronze badges
asked Nov 3, 2018 at 8:47
Alireza Mohebi Alireza Mohebi
31 1 1 gold badge 1 1 silver badge 3 3 bronze badges
Does your (public) IP change as well?
Nov 3, 2018 at 8:50

@twisty-impersonator, it looks like you created the [ttl] tag and wiki excerpt. Two questions: 1. Any chance that the tag will get misused and applied to other TTL meanings (if it’s needed, would it be better spelled out rather than an acronym)? 2. The excerpt doesn’t track with the Wikipedia definition: a mechanism that limits the lifespan of data in a computer or network (I’m not a networks guy so it’s out of my area, but wanted to raise the question).

Nov 3, 2018 at 21:29

@fixer1234 good point on possible name collision given the short acronym. I’ll see about «renaming» it because, while I can’t think of another identical term, it seems likely one could exist. I’ll tweak the except too. Excellent feedback—thanks!

Nov 3, 2018 at 21:32

@TwistyImpersonator, when I first saw it, I thought it was referring to transistor–transistor logic used in ICs. 🙂

Nov 3, 2018 at 21:37
@fixer1234 LOL, no kidding! OK, I obviously gotta fix that.
Nov 3, 2018 at 21:43

1 Answer 1

Communication over the Internet is accomplished by sending many small packets of information. Each packet is moved from its source to destination by devices called routers. Routers connect the many different smaller networks that comprise the public Internet.

When a packet goes through a router, the router decrements the packet’s TTL (Time To Live) field. This is done for two purposes:

  • It provides a mechanism to know how many routers (i.e. hops) the packet has traversed
  • It prevents packets from being transmitted in an infinite loop in the event of a network configuration error. When the TTL reaches zero routers will discard the packet.

The ‘ping’ command shows you the received TTL after it has already gone through this dec­re­menting. Usually the sender specifies a TTL of 128 (or 64), so if you receive it with TTL 117, that means it has travelled through 11 routers (128-117).

Can anyone explain me what’s going on with TTL changes?!

Routers on the Internet usually have multiple connections to other routers. Often the routers will have multiple connections that could be used to deliver your packet. The routers job is to pick the best one. Because of changing network conditions a router may not always pick the same route each time for your packets. When this happens, your packet may end up traversing a path that involves a different number of routers. This is why you see a different TTL. This is perfectly normal. The fact there are multiple routes between destinations is indeed one reason the Internet is so resilient.

my TTL is 117 for 1 hour and just in a moment with no clue it changes to 121 and with this change my apps and games has disconnect and reconnect

In this case your TTL changing is not the cause of your problem but rather a symptom. Whatever is causing your temporarily loss of Internet connectivity is also resulting in your packets taking a different route to their destination. If the TTL is changing for all of your packets, that suggests the problem is very close to you, either in your own LAN or in your ISP’s network.

forum.lissyara.su

Часто, когда ты думаешь, что выбираешь между «сделать хорошо» и «сделать плохо», ты лишь влияешь на момент, когда это будет «сделано через жопу».

Проблема с сетевкой ttl странности

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.

Первое новое сообщение • 12 сообщений • Страница 1 из 1
treycom проходил мимо Сообщения: 2 Зарегистрирован: 2010-12-18 10:50:05

Проблема с сетевкой ttl странности

Добрый день коллеги, прошу помощи!

В моей практике такого еще не было, суть в том, что с некоторых пор начал пропадать пинг до сервера
с 8.0-RELEASE FreeBSD. Сервер смотрит одним интерфейсом в локальную сеть и имеет ip 10.40.40.40.1 а вторым в инет.
Проблема появилась не так давно, до этого работал 3 месяца без сбоев.
Когда Я начинаю пинговать до сервака из локальной сети до интерфейса 10.40.40.1 до пинг имеет ttl 127 и нифига ничего не работает(апач, днс,фтп). Когда же Я самого сервера начинаю пинговать какой нить компьютер из сегмента локальной сети к примеру 10.40.40.4, то у пинга с домашнего компа до сервера с фряхой ttl меняется резко до 63 и всё начинает работать(апач, фтп,днс).

На рисунке видно как пингуется сервер, ttl 127-> начинаю пинговать до с фряхи до др. сервака и ttl поменялась, пинга пропала и ttl обратно поменялась на 127. Как будто интерфейс нужна какая то взбучка
Написал скрипт, чтобы он постояно пинговал какой нить другой сервер. Но не прокатывает всё равно.

Внутренняя сетевая была подключена в циску С2960 потерь на интерфейсе ничего нету. Подключил в другую циску, такая же муть приключается, т.е. не из за коммутаторов.

Может ли быть такое, что кто то из локальной сети себе ставит такой же IP ? И на моём сервере приключается такая же муть. Ядро не пере собирал, фаерволл не подключен.

bge0: flags=8843 metric 0 mtu 1500 options=9b ether 00:18:fe:28:4e:08 inet 10.40.40.1 netmask 0xffff0000 broadcast 10.40.255.255 media: Ethernet autoselect (100baseTX ) status: active bge1: flags=8843 metric 0 mtu 1500 options=9b ether 00:18:fe:28:4e:09 inet 77.233.172.131 netmask 0xfffffff8 broadcast 77.233.172.135 media: Ethernet autoselect (1000baseT ) status: active lo0: flags=8049 metric 0 mtu 16384 options=3 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3 inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000 
teleset74# netstat -rn Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default 77.233.172.129 UGS 3 4717 bge1 10.40.0.0/16 link#1 U 0 1882 bge0 10.40.40.1 link#1 UHS 0 111 lo0 77.233.172.128/29 link#2 U 0 0 bge1 77.233.172.131 link#2 UHS 0 0 lo0 127.0.0.1 link#3 UH 0 35 lo0 Internet6: Destination Gateway Flags Netif Expire ::1 ::1 UH lo0 fe80::%lo0/64 link#3 U lo0 fe80::1%lo0 link#3 UHS lo0 ff01:3::/32 fe80::1%lo0 U lo0 ff02::%lo0/32 fe80::1%lo0 U lo0 

Последний раз редактировалось f_andrey 2011-01-12 8:03:04, всего редактировалось 1 раз.
Причина: Автору, выбирайте пожалуйста раздел соответствуюший тематике вашего сообщения

почему может изменяться TTL? (2)

Так всё-таки, почему устройство (в частности принтер) может отвечать на ping вот так:

. Ответ от 192.168.7.3: число байт=32 время=1мс TTL=254 Ответ от 192.168.7.3: число байт=32 время=1мс TTL=254 Ответ от 192.168.7.3: число байт=32 время=1мс TTL=63 Ответ от 192.168.7.3: число байт=32 время=1мс TTL=63 Ответ от 192.168.7.3: число байт=32 время=1мс TTL=254 Ответ от 192.168.7.3: число байт=32 время=1мс TTL=254 . Ответ от 192.168.7.3: число байт=32 время=1мс TTL=254 Ответ от 192.168.7.3: число байт=32 время=35мс TTL=63 Ответ от 192.168.7.3: число байт=32 время=1мс TTL=254 . 

Toxo2 ★★★
04.10.21 15:57:33 MSK

Добавлю, что одновременно с TTL = 64 (63, если смотреть на шаг ниже) прилетает совсем другое поле Identification: (например 0x7f35 (32565)), когда в пакетах выше/ниже на ICMP reply с TTL = 255 (254 соответственно) Identification совсем не похож на этот (например — выше: 0x2113 (8467), ниже: 0x2114 (8468)).

Это кто-то вставляет такой пакет «не по порядку»? Кто? Принтер?

Рискну позвать эксперта ValdikSS

Toxo2 ★★★
( 04.10.21 17:00:19 MSK ) автор топика
Последнее исправление: Toxo2 04.10.21 17:02:41 MSK (всего исправлений: 1)

Ответ на: комментарий от Toxo2 04.10.21 17:00:19 MSK

У тебя нет конфликтов IP-адресов в сети? Похоже, что принтер и какое-то другое устройство используют один IP-адрес.

bigbit ★★★★★
( 04.10.21 18:18:23 MSK )
Ответ на: комментарий от bigbit 04.10.21 18:18:23 MSK

Спасибо. Простое и отличное объяснение было бы. Завтра попробую проверить.

Та сеть не совсем моя. Первый день на неё смотрю. Пытаюсь поженить «свою», переехавшую сеть со этой. На «моей» стороне шлюз по умолчанию и есть шлюз «туда». С той стороны — попросил человека прописать маршрут в эту сторону.

Получилось так, что с его стороны теперь все мои ресурсы нормально доступны, а мои люди через раз не могут печатать на тот принтер. То могут, то не могут. Полдня убил на это. По всем пирогам — должно работать. Но не работает. Вот эта странность с TTL, например, смущает.

Toxo2 ★★★
( 04.10.21 21:44:44 MSK ) автор топика
Ответ на: комментарий от bigbit 04.10.21 18:18:23 MSK

Хотя. Наверное нет.

Тогда же ведь MAC-адреса должны же были бы быть разные в дампе, насколько я понимаю?

Но и в ответе TTL=255, и в ответе TTL=64

Ethernet II, Src: KYOCERAD_7c:fb:26 (00:17:c8:7c:fb:26), Dst: ZyxelCom_0c:e0:2d (10:7b:ef:0c:e0:2d)

Кроме TTL только Identification подозрительный.

Но проверить вашу версию будет не лишним. Спасибо еще раз.

Toxo2 ★★★
( 04.10.21 22:25:20 MSK ) автор топика
Последнее исправление: Toxo2 04.10.21 22:26:47 MSK (всего исправлений: 1)

Ответ на: комментарий от Toxo2 04.10.21 22:25:20 MSK

Тогда же ведь MAC-адреса должны же были бы быть разные в дампе, насколько я понимаю?

Если через шлюзы проходит — в дампе ты будешь видеть мак своего gw.

Tanger ★★★★★
( 04.10.21 22:28:38 MSK )
Ответ на: комментарий от Tanger 04.10.21 22:28:38 MSK

Я и снимаю дамп непосредственно на шлюзе.

KYOCERAD_7c:fb:26 (00:17:c8:7c:fb:26) — это проблемный принтер.
ZyxelCom_0c:e0:2d (10:7b:ef:0c:e0:2d) — это шлюз.

Тут вроде почти понятно.

UPD: Под «снимаю дамп» подразумевается ZyWALL -> Maintenance -> Diagnostics -> Packet Capture на веб-морде шлюза. Получившийся cap смотрю в Wireshark. Сам ping посылается из внутренней моей машины при этом (вот на ней — уже 254 и 63 соответственно, что тоже, в целом, понятно).

Toxo2 ★★★
( 04.10.21 22:30:36 MSK ) автор топика
Последнее исправление: Toxo2 04.10.21 22:43:56 MSK (всего исправлений: 2)

Ответ на: комментарий от Toxo2 04.10.21 22:30:36 MSK

С той стороны — попросил человека прописать маршрут в эту сторону.

Каким образом? На шлюзе по умолчанию добавлен маршрут в твою подсеть или dhcp выдает статический маршрут?

В первом случае может ещё icmp redirect приходить.

Tanger ★★★★★
( 04.10.21 22:54:06 MSK )
Ответ на: комментарий от Tanger 04.10.21 22:54:06 MSK

О! Тоже отличное объяснение. Спасибо.

Да, добавили на том gw маршрут. DHCP там не трогали.

Toxo2 ★★★
( 04.10.21 22:58:40 MSK ) автор топика
Ответ на: комментарий от Toxo2 04.10.21 17:00:19 MSK

Рискну позвать эксперта ValdikSS

Касты не работают при редактировании сообщения.

Тоже склоняюсь к конфликту IP-адресов. Возможно, еще и MAC-адресов в придачу.

ValdikSS ★★★★★
( 05.10.21 00:55:16 MSK )
nanosecond
( 05.10.21 10:26:28 MSK )
Ответ на: комментарий от nanosecond 05.10.21 10:26:28 MSK

Это который Electromagnetic Interference? Спасибо, интересно, почитал немного. Первый раз слышу.

В общем так: совершенно точно эта Kyocera отвечает 255 ttl, когда находится в режиме энергосбережения. 64 ttl, когда находится в активном режиме.

Тупо ноутбук с VoidLinux проводом непосредственно к ней подключал и смотрел.

Отключили с человеком энергосберегающий режим для сетевой карты этого принтера — теперь она всегда отвечает 64.

Вроде у моих людей теперь стабильно работает. Тьфу-тьфу-тьфу.

Из оставшегося непонятным:

  • почему же если её никак не трогать она сама может одним-двумя пакетами 64 делать вид что проснулась и тут же обратно 255 как-будто уснула?
  • почему же в своей родной сети, без шлюза это никак не влияет на работу пользователей? Они и не знали про эту пляску ttl до вчерашнего дня.

Да и шут с ней. Люди счастливы, и чудненько.

bigbit , Tanger , ValdikSS спасибо за участие в мозговом штурме. )

С этим переездом офиса вся жопа в мыле. Новый шлюз, новый ISP, новые соседи по офису. Уж и не помню когда последний раз так потел четыре дня подряд на компутерах, а не на грядках ) Наконец-то всё устаканилось и можно свалить на дачу )

Toxo2 ★★★
( 05.10.21 10:52:45 MSK ) автор топика
Последнее исправление: Toxo2 05.10.21 11:20:30 MSK (всего исправлений: 1)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *