Автор показывает, как написать упрощённый аналог traceroute на Rust примерно на 80 строк кода, используя UDP-сокеты с нарастающим TTL и raw-сокет для перехвата ICMP-ответов.
Подробно объясняется принцип работы утилиты traceroute, который основан на "хитрости с TTL": каждый IP-пакет имеет поле Time To Live, уменьшаемое каждым маршрутизатором, и когда оно достигает нуля, маршрутизатор отбрасывает пакет и отправляет отправителю ICMP-сообщение "Time Exceeded" со своим IP-адресом.
15.04.2026
Похожее
13.05.2026
Суперкомпьютер
В статье описывается опыт использования суперкомпьютера MareNostrum V (стоимость...
13.05.2026
Awesome axum
axum - это библиотека для маршрутизации HTTP и обработки запросов, написанная на...
12.05.2026
Свой TOML парсер
В этой статье научимся правильно обрабатывать ошибки в Rust. Учится будем создав...
11.05.2026
pgrust
Почему бы не переписать на Rust все? Не, ну прям реально все, даже если оно норм...