Я вижу две команды, которые дают схожий вывод, но понятия не имею, есть ли разница между ними или нет. Например,
[$] tracepath debian.org
1?: [LOCALHOST] pmtu 1500
1: _gateway 0.819ms
1: _gateway 0.780ms
2: _gateway 0.751ms pmtu 1400
2: ??? 43.462ms
3: ??? 43.907ms asymm 4
4: ??? 48.361ms
5: ??? 46.492ms
6: ??? 48.009ms asymm 10
7: ??? 74.740ms asymm 9
8: ix-ae-4-2.tcore1.CXR-Chennai.as6453.net 69.183ms asymm 10
9: if-ae-13-2.tcore1.SVW-Singapore.as6453.net 285.982ms asymm 17
10: if-et-23-2.hcore2.KV8-Chiba.as6453.net 204.874ms
11: 10ge4-5.core1.pao1.he.net 298.418ms asymm 15
12: isc.gige-g4-17.core1.pao1.he.net 299.967ms asymm 14
13: debian.org 307.865ms reached
Resume: pmtu 1400 hops 13 back 14
а также
[$] traceroute debian.org
traceroute to debian.org (149.20.4.15), 30 hops max, 60 byte packets
1 _gateway (192.168.1.1) 0.538 ms 1.083 ms 1.474 ms
2 117.195.64.1 (117.195.64.1) 26.240 ms 28.890 ms 31.076 ms
3 218.248.164.82 (218.248.164.82) 34.412 ms 37.050 ms 39.784 ms
4 218.248.235.197 (218.248.235.197) 45.841 ms 47.977 ms 50.955 ms
5 218.248.235.198 (218.248.235.198) 52.842 ms 56.184 ms 57.904 ms
6 61.246.195.185 (61.246.195.185) 61.216 ms 62.437 ms 115.113.165.93.static-mumbai.vsnl.net.in (115.113.165.93) 64.571 ms
7 172.17.169.202 (172.17.169.202) 94.358 ms 125.62.187.214 (125.62.187.214) 145.327 ms *
8 ix (180.87.36.9) 48.755 ms 54.609 ms 56.072 ms
9 if (180.87.36.83) 274.598 ms 100ge4-1.core1.nyc4.he.net (72.52.92.166) 309.468 ms 310.433 ms
10 100ge14-1.core1.sjc2.he.net (184.105.81.213) 295.462 ms 295.832 ms if (180.87.67.33) 198.356 ms
11 10ge4 (72.52.92.69) 299.283 ms 304.763 ms 297.574 ms
12 isc.gige (72.52.94.70) 310.593 ms 313.728 ms 286.095 ms
13 debian.org (149.20.4.15) 274.097 ms if-ae-7-2.tcore1.PDI-Palo-Alto.as6453.net (209.58.86.74) 259.125 ms debian.org (149.20.4.15) 279.229 ms
Хотя я понимаю, что оба могли пройти разные маршруты, хотя имели одинаковое количество прыжков. Я вижу, что последний / второй traceroute дает немного больше информации о промежуточных серверах, т.е. вместо того, чтобы просто давать статические IP-номера, дать имя / URL-адрес, если кто-то хочет обратиться или определить промежуточный адрес.
Для чего это стоит, вот два пакета / команды -
[$] dpkg -L iputils-tracepath | grep /usr/bin/tracepath
/usr/bin/tracepath
а также
[$] traceroute: /usr/bin/traceroute.db
Я прочитал man-страницы, и, по крайней мере, для tracepath говорится, что главное - это дать MTU, и если мое предположение верно, то MTU, вероятно, является шлюзом моего ISP, который он разделяет как PMTU (я не уверен, что P обозначает)
_gateway 0.751ms pmtu 1400
все остальные соединения асимметричны, что означает, что они подвержены изменениям.
Обновление - ссылка, которой поделился комментатор, кажется, содержит устаревшую информацию.
Насколько я могу судить, ни одна из команд больше не должна быть пользователем root -
[$] which traceroute
/usr/bin/traceroute
[$] which tracepath
/usr/bin/tracepath
Это было намекали в одном из звеньев общих на askubuntu.com форумы https://www.techwalla.com/articles/differences-between-traceroute-tracepath , что трассировка имеет некоторые более продвинутые команды
К сожалению, эта веб-страница устарела, поэтому я не уверен, насколько она хороша или плоха сегодня
[$] aptitude show traceroute | grep Version
Version: 1:2.1.0-2
[$] aptitude show iputils-tracepath | grep Version
Version: 3:20161105-1
Было бы неплохо, если бы кто-нибудь мог сравнить их и поделиться некоторыми результатами.
Также может кто-нибудь поделиться продвинутыми командами, которые может выполнять traceroute, но не может tracepath?
С нетерпением жду, чтобы узнать.
источник
Ответы:
traceroute
это традиционная команда UNIX.tracepath
это более новая команда, которая добавлена в поддержку обнаружения MTU. Посколькуtraceroute
теперь есть опция --mtu, и ее можно запускать как обычный пользователь, я даже не удосужился установить ееtracepath
на свои машины.Если вы хотите попробовать что-то более причудливое и полезное, чем любой из них, сделайте снимок
mtr
(apt install mtr-tiny
). Это как комбинация трассировки и пинга. В частности, я считаю, что полосовая диаграмма при использовании--displaymode 1
очень полезна для диагностики именно того, где возникают проблемы с сетью.источник