Post Thumbnail

Проcтая задача для сетевого снифера - возможность понимать, какая именно программа стучится в сеть. Но не тут-то было. Задача обернулась для автора и разработчика Sniffnet настоящим квестом на пару лет.

Во-первых, каждая операционная система хранит информацию о процессах и портах по-своему, и нормальной Rust-библиотеки, которая бы работала везде и сразу, просто не существовало. Во-вторых, пришлось выбирать: либо делать не инвазинно через снапшоты системы, которые могут не поймать короткие соединения, либо лезть в дебри ядра с eBPF и прочими штуками, что противоречит идее Sniffnet как простой и не навязчивой программы.

Автор решил не искать лёгких путей, а написал свою собственную библиотеку - listeners. Два года трудов, и теперь она умеет работать на Windows, Linux, macOS и даже FreeBSD, да ещё и прошла жёсткие тесты на производительность

Похожее

Post Thumbnail

Аллокаторы

Автор рассказывает, как устроены аллокаторы памяти в современных языках вроде Ru...

Post Thumbnail

Игры на Rust

Новые посты в большом туториале по написанию игр на Bevy. Круто, что автор не за...