Менее 3 МБ, но распознаёт 15 сетевых протоколов
Что способна сделать утилита весом менее 3 мегабайт? Знакомьтесь с RustNet — кроссплатформенным терминалом для мониторинга сети. Проект собрал более 3900 звёзд на GitHub. Он объединяет основные возможности netstat, Wireshark и iftop в одной программе.

Ведёт реальный мониторинг соединений TCP, UDP, QUIC и определяет свыше 15 протоколов: HTTP, HTTPS, DNS, SSH, MQTT, BitTorrent и другие.

- Отслеживание процессов для каждого подключенияВ Linux используется технология eBPF для отслеживания работы процессов, производительность выше стандартного procfs. Сетевая активность новых программ фиксируется мгновенно. Каждое соединение показывает принадлежность процессу и его идентификатор, сокращая время поиска неисправностей.
- Распознавание протоколов помимо номеров портовПомимо портов определяет прикладные протоколы QUIC, NTP, mDNS, DHCP, SNMP, SSDP, NetBIOS. Для HTTPS отображается доменное имя, видны запросы и ответы DNS-серверов.
- Наглядное состояние сетевых соединенийУстановлены индивидуальные таймауты: 10 минут для HTTP, 30 минут для SSH, 30 секунд для DNS. Интерфейс использует цветовую индикацию: белый — активное соединение, жёлтый — бездействующее, красный — близкое к завершению.
- Поддержка всех популярных операционных системРаботает на Linux, macOS, Windows, FreeBSD, доступны разные способы установки.
- Безопасность за счёт ограничения правПерехват пакетов требует прав администратора. После запуска утилита автоматически снижает привилегии, ограничивает создание дочерних процессов и снижает угрозы безопасности.
Дополнительные функции: гибкая фильтрация по ключевым словам и регулярным выражениям, экспорт файлов PCAP для анализа в Wireshark, сохранение сведений о процессах в формате JSONL.

Команды установки
macOS и Linux:
brew install rustnet
sudo rustnet
Ubuntu 25.10 и новее:
sudo add-apt-repository ppa:domcyrus/rustnet
sudo apt update && sudo apt install rustnet
sudo rustnet
Windows (предварительно установить Npcap):
choco install rustnet
rustnet
Терминальный интерфейс имеет ограничения. В Linux отображается только 16 символов имени процесса, многопоточные программы показывают имена потоков. Определение процессов на Windows появилось недавно. Удалённый мониторинг доступен только по SSH, веб-интерфейса нет.
Универсальных инструментов не существует. Wireshark подходит для глубокого анализа пакетов, netstat — для простого просмотра подключений. RustNet заполняет промежуток и ускоряет диагностику ошибок DNS.
Проект распространяется под лицензией Apache-2.0.
Репозиторий: https://github.com/domcyrus/rustnet