Одна из самых информативных утилит присутствующая в подавляющем большинстве систем1. Суть работы данного инструмента заключается в использовании поля время жизни пакета, которое уменьшается с каждым пройденным узлом в сети. При достижении минимального значения, пакет уничтожается и отправителю посылается соответствующее уведомление, получив которое можно узнать что за узел его отправил. traceroute
поочередно посылает пакеты, наращивая время их жизни и таким образом вычисляет все промежуточные узлы. Не все узлы отвечают на запросы: некоторые являются прозрачными, некоторые подменяют поле жизни, некоторые закрыты от любых внешних воздействий, но как правило те узлы которые отвечают позволяют узнать о сети достаточно много чтобы делать выводы:
- Географическое расположение узлов
- Пиринг соседей и аплинков операторов
- Узкие места в сети
- Типы оборудования
- Типы интерфейсов
Следует учитывать что маршруты прохождения трафика до точки назначения и обратно могут не совпадать, для составления полной картины можно поискать LookingGlass ресурсы.
Результаты выполнения команды будут выглядеть примерно так:
traceroute to www.ru (194.87.0.50), 30 hops max, 40 byte packets
1 gw.dev.nikrtr.ripe.net (193.0.4.2) 0.555 ms 0.503 ms 0.496 ms
2 GigabitEthernet6-17.car2.ams1.level3.net (195.69.144.110) 1.009 ms 1.108 ms 1.084 ms
3 4.69.162.181 (4.69.162.181) 0.927 ms 4.69.162.177 (4.69.162.177) 1.004 ms 0.989 ms
4 JSC-TRANSTE.edge4.Amsterdam1.Level3.net (212.72.40.166) 2.237 ms 2.153 ms 3.835 ms
5 mskn46.transtelecom.net (217.150.52.246) 51.829 ms 53.691 ms 56.418 ms
6 iki-c1-vl10.demos.net (194.87.0.111) 57.564 ms 56.957 ms 61.475 ms
7 www.ru (194.87.0.50) 58.465 ms 60.816 ms 60.915 ms
Видно доменное имя узла (может не быть), адрес и временные задержки. Наиболее читаемая часть это доменное имя, задаваемое оператором узла. Первая строчка ближайший маршрутизатор, следует поискать ARP запись в кэше. Можно предположить что узел принадлежит RIPE и основная его функция пограничный маршрутизатор тоесть расположенный на стыке двух систем, префикс gw
- шлюз, gateway. Помимо gw
встречаются:
rt
- маршрутизатор внутри системы.as
- точка входа в сеть (access server).sw
- коммутатор, если это видно вtraceroute
то наверное коммутатор уровня 3.edge
- можно видеть в строчке 4, тоже пограничное устройство на стыке систем.vl
- в 6 строчке, vlan и его номер.gi
илиg
,tg
илиt
- за которым следуют несколько цифр через точку или тире, соответственноg
- Gigabit иtg
- TenGigiabit. Например,g1-1-1
означает номер гигабитного интерфейса на устройстве. Это также применимо к 6 строчке в частиiki-c1
вероятно это внутреннее обозначение интерфейса на устройстве. Если посмотреть на 2 строку, то там без всяких сокращений написан тип и номер интерфейса.
В любом случае стоит внимательно присмотреться к коротким двух-трёх буквенным сокращениям и цифрам, в них может быть многое зашифровано. Из доменного имени конечно чаще всего видно принадлежность узла какому либо оператору, в нашем случае RIPE, Level3, Transtelecom, Demos.
Также часто видно географическое положение - во 2 и 4 строчке Амстердам (видим используемое сокращение ams
), в пятой строке Москва (сокращение msk
). Но стоит всегда помнить, что эти данные субъективны, поэтому они самые понятные, с одной стороны, но и могут не соответствовать действительности. Часть из них можно проверить с помощью отображаемого IP адреса.
Для нашего примера в 3 строке мы получили только IP адрес. Проверить его принадлежность оператору можно через службы компаний регистраторов, а географическое расположение через базы данных геолокации, например Maxmind. IP адрес отображается всегда если узел отвечает на запрос. Если узел ответить не смог мы увидим вместо значащей строчки символы “*
” или “.
”:
10 * * *
Осталось обратить внимание на цифры, фигурирующие в выводе команды. Это время в миллисекундах которое потребовалось чтобы запрос дошёл до узла и вернулся обратно 2. Объективные выводы сделать здесь достаточно сложно, в силу того что узел может обрабатывать подобные запросы в остаточном режиме и эти задержки никак не отображают его реальной пропускной способности. Но значительные перепады в показателях, как например между 4 и 5 строчкой от 2 до 50, может показать узкое место или множество скрытых устройств, например в MPLS туннеле.