Post Thumbnail

Автор показывает, как написать упрощённый аналог traceroute на Rust примерно на 80 строк кода, используя UDP-сокеты с нарастающим TTL и raw-сокет для перехвата ICMP-ответов.

Подробно объясняется принцип работы утилиты traceroute, который основан на "хитрости с TTL": каждый IP-пакет имеет поле Time To Live, уменьшаемое каждым маршрутизатором, и когда оно достигает нуля, маршрутизатор отбрасывает пакет и отправляет отправителю ICMP-сообщение "Time Exceeded" со своим IP-адресом.

Похожее

Post Thumbnail

Lisette

Так, у нас тут пятница, а это значит время новых языков программирования. Сег...