LINUX.ORG.RU
решено ФорумAdmin

Что значит «* * *» в выводе traceroute?

 , ,


0

2

Всем привет :) Просто из любопытства, интересно что это значит когда я пытаюсь через traceroute посчитать транзитные участки. Это сепаратор какой-то (например выход из локальной сети в глобальную) или это что-то важное значит? Например до Яндекса у меня 7 hop'ов, «* * *» на шестом, до гугла их 19 и «* * *» на 5, 11-18. В случае с гуглом как-то сепаратор выглядит не логично. Спасибо за ответы :)

★★★★

Заранее извините за глупый вопрос :)

dnb ★★★★
() автор топика
Ответ на: комментарий от MrClon

О как! А я могу как-нибудь узнать что это за хосты, которые не ответили? Эта информация из DNS берется?

dnb ★★★★
() автор топика
Ответ на: комментарий от dnb

А я могу как-нибудь узнать что это за хосты

Кажется нет

Эта информация из DNS берется?

DNS, в данном случае, используется только для получения имени хоста, когда известен его IP (который известен благодаря тому что хост ответил на трассировку). При чём получение имени хоста из DNS это опциональное поведение

«Для определения промежуточных маршрутизаторов traceroute отправляет целевому узлу серию ICMP-пакетов (по умолчанию 3 пакета), с каждым шагом увеличивая значение поля TTL («время жизни») на 1. Это поле обычно указывает максимальное количество маршрутизаторов, которое может быть пройдено пакетом. Первая серия пакетов отправляется с TTL, равным 1, и поэтому первый же маршрутизатор возвращает обратно ICMP-сообщение «time exceeded in transit», указывающее на невозможность доставки данных. Traceroute фиксирует адрес маршрутизатора, а также время между отправкой пакета и получением ответа (эти сведения выводятся на монитор компьютера). Затем traceroute повторяет отправку серии пакетов, но уже с TTL, равным 2, что заставляет первый маршрутизатор уменьшить TTL пакетов на единицу и направить их ко второму маршрутизатору. Второй маршрутизатор, получив пакеты с TTL=1, так же возвращает «time exceeded in transit».

Процесс повторяется до тех пор, пока пакет не достигнет целевого узла. При получении ответа от этого узла процесс трассировки считается завершённым.»
https://ru.wikipedia.org/wiki/Traceroute

«* * *» это те хосты которые получив пакет с TTL=1 не отправляют сообщение «time exceeded in transit»

MrClon ★★★★★
()

В man traceroute написано, что означают звёздочки:

If the probe answers come from different gateways, the address of each responding system will be printed. If there is no response within a certain timeout, an «*» (asterisk) is printed for that probe.

Вообще, в документации много чего полезного написано. При возникновении вопросов, стоит её читать.

i-rinat ★★★★★
()
Ответ на: комментарий от dnb

А я могу как-нибудь узнать что это за хосты, которые не ответили?

А сейчас мы проведём проверку посещаемости. Кого нет, поднимите руки, чтобы я мог вас записать.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

«Они» присутствуют. Делают свою работу. Но, немы. :)

Bootmen ☆☆☆
()

Это сепаратор какой-то..

Можете и свой домашний роутер ввести в такое состояние. Что то вроде параметра icmp_echo

Bootmen ☆☆☆
()
Последнее исправление: Bootmen (всего исправлений: 1)
Ответ на: комментарий от slapin

По дефолту вроде ICMP. Хотя не уверен. Впрочем не суть. Ссылку на рукипедию я оставил, если ТС хочет деталей и уточнений то может сходить туда (про UDP там вроде тоже написано). Не копипастить-же всю статью

MrClon ★★★★★
()
Ответ на: комментарий от Bootmen

Echo тут ни при чем.

Вообще traceroute не будет работать у провайдеров, не пропускающих ICMP (таких еще полно), которое одно время считалось страшной дырой в безопасности.

slapin ★★★★★
()
Ответ на: комментарий от Bootmen

Не знаю параметров (речь ведь о параметрах ядра?), но такого эффекта по идее можно добиться iptables-ом (или любым другим фаероволом который можно достаточно гибко настраивать) дропая ICMP пакеты с типом 11

icmp_echo по логике должен разрешать или запрещать отправку ICMP echo response (ответов на пинги, тип пакета 0). Ну или ICMP echo request-ов. Но где логика, а где мы (:

MrClon ★★★★★
()
Ответ на: комментарий от i-rinat

Иногда при повторной проверке посещаемости в конце пары выяснялось, что некоторые записанные в листочек уже «успели» куда-то уйти.

grem ★★★★★
()
Ответ на: комментарий от Bootmen

Это, по логике, должно дропать весь транзитный ICMP трафик. А вот собственный может и пропускать (т.е. в трасерте будет буден этот роутер, но не видны все следующие). Через такой роутер и гугла не попингуешь. Сурово

MrClon ★★★★★
()
Ответ на: комментарий от i-rinat

Вообще ты бы мог оставить ссылку на документацию, но это слишком низко для тебя, да? Так вот ты как 5 звёзд заработал...

dnb ★★★★
() автор топика

Спасибо всем ответившим по делу, нашел куда читать :)

dnb ★★★★
() автор топика
Ответ на: комментарий от dnb

какую тебе ссылку? man имя_программы или имя_программы --help вот тебе и документация. Быдло неблагодарное.

anonymous
()
Ответ на: комментарий от slapin

Вообще traceroute не будет работать у провайдеров, не пропускающих ICMP (таких еще полно), которое одно время считалось страшной дырой в безопасности.

И всё же таких никогда не было полно. Звездочки возникают не от «не пропускающих», а не отвечающих. Вот таких, действительно мало того что полно, так становится всё больше. Типа, они не хотят показывать их внутреннюю кухню — туннели и прочий MPLS.

vodz ★★★★★
()
Ответ на: комментарий от vodz

Ну не отвечать и молча дропать тоже не хорошо, обычно не отвечают некоторые маршрутизаторы, которые без динамики. Ну и те, что с серыми адресами.

slapin ★★★★★
()
Ответ на: комментарий от dnb

Документация уже у тебя на компе, и i-rinat даже дал команду которая позволяет её прочесть. Не пренебрегай man-ами

MrClon ★★★★★
()
Ответ на: комментарий от slapin

Вообще traceroute не будет работать у провайдеров, не пропускающих ICMP (таких еще полно), которое одно время считалось страшной дырой в безопасности.

Ну да, помню ping -l 65510 example.com и ICMP Redirect =)

vasya_pupkin ★★★★★
()
Ответ на: комментарий от i-rinat
Type = 5 	Code 	Header checksum
IP address
IP header and first 8 bytes of original datagram's data 

IP address - это SRC или DST?

Пьяный админ прописал DST - мухосранск.сру вместо яндекс.ру

SturmFuerer
()
Ответ на: комментарий от slapin

Вообще traceroute не будет работать у провайдеров, не пропускающих ICMP (таких еще полно)

Во многих ОС traceroute использует UDP по-умолчанию, а ICMP требует дополнительных прав:

$ traceroute -I www.ru
You do not have enough privileges to use this traceroute method.

AS ★★★★★
()
Ответ на: комментарий от AS

А отвечают ему чем, святым духом? На отправку да, обычно udp. Я об этом раньше по топику писал.

slapin ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.