Сетевая утилита traceroute. Версия 1.0 Автор: Шинкаренко Тимофей (shinkarenkotimofeymain@gmail.com)
Описание: Данное приложение является реализацией сетевой утилиты traceroute и может быть использовано как по прямому назначению, для диагностики сети и подключению.
Требования:
- Python версии не ниже 3.11
- Scapy версии не ниже 2.6.1
Состав:
- Консольная версия: traceroute.py
- Модули: classes/
- Тесты: tests/
Консольная версия Справка по запуску: sudo ./traceroute.py --help Пример запуска: sudo ./traceroute.py <your_ip> <target_ip> Справка по командам: help [команда]
Подробности реализации Классы, отвечающие за логику утилиты, расположены в папке classes. В основе всего лежат класс Tracer, реализующий отправку пакетов с заданными условиями. Классы IPv4Header и IPv6Header позволяют создавать заголовки пакетов IP и IPv6 соответственно. Классы ICMPv4Packet и ICMPv6Packet позволяют создавать пакеты ICMP Echo Request с соответствующими заголовками. За работу утилиты в командной строке отвечает traceroute.
На данные модули написаны тесты, их можно найти в tests/.