Vernet trasforma uno smartphone e un laptop in uno scanner di rete tascabile
Ogni volta che un altro servizio va giù in una rete domestica o d'ufficio, inizia la routine con le utility della console. Apri arp -a, nmap, infiniti ping nel terminale, e cerchi di ricordare quale indirizzo IP il router ha assegnato alla nuova scheda Raspberry Pi. Sul desktop puoi ancora cavartela, ma quando hai solo il telefono a portata di mano, districarsi con la situazione della subnet diventa notevolmente più difficile.
Recentemente mi sono imbattuto nel repository Vernet dell'organizzazione Open Society. È uno scanner di rete multipiattaforma con codice sorgente aperto, scritto in Flutter. Il progetto risolve un compito semplice: raccogliere le utility di rete di base in un'unica interfaccia pulita che funziona allo stesso modo su Android, Linux, macOS e Windows.

Cosa può fare l'app
invece di uno strumento gonfio tutto-in-uno, gli sviluppatori hanno creato un insieme di utility essenziali.
L'interfaccia è suddivisa in diverse schermate:
| Home | Elenco dispositivi | Porte aperte |
|---|---|---|
|
|
|
|
| Ping | DNS | Test velocità |
|---|---|---|
|
|
|
|
Questi sono gli scenari principali coperti da Vernet:
- Individuazione di dispositivi nella subnet. L'app esegue la scansione dell'intervallo di indirizzi locale e mostra un elenco degli host scoperti con i relativi indirizzi MAC e i nomi dei produttori delle apparecchiature.
- Scansione delle porte. Puoi specificare un indirizzo IP specifico e verificare le porte TCP aperte per determinare rapidamente se un server web, SSH o un database è attivo.
- Riepilogo della connessione corrente. Il programma mostra i parametri Wi-Fi, incluso il BSSID, e identifica il provider ISP esterno.
- Diagnostica della connessione. Include il ping dell'host, le query ai server DNS e la misurazione della velocità tramite speedtest.net.
Come è strutturato il progetto
Il repository è scritto in Dart utilizzando il framework Flutter. Questo rende la codebase unificata tra le build mobile e desktop.
Sul desktop, a volte l'app richiede dipendenze di sistema. Ad esempio, su Linux, è necessario il pacchetto net-tools per una corretta raccolta della tabella ARP, altrimenti l'utility non sarà in grado di mappare gli IP agli indirizzi MAC.
Le build Android sono distribuite tramite Google Play e il catalogo F-Droid. L'autore del progetto ha persino scritto una guida separata sulla pubblicazione di app Flutter su F-Droid, con un link lasciato nel repository.
Installazione ed esecuzione
Su Android, il modo più semplice per installare l'app è da F-Droid o Google Play. Se hai bisogno di un client desktop, i binari sono disponibili nella scheda Releases del repository.
Per eseguire su Linux sono necessari i seguenti passaggi:
# Устанавливаем net-tools для команды arp
sudo apt install net-tools
# Скачиваем архив из релизов, распаковываем и запускаем
unzip vernet-linux.zip
cd bundle
./vernet
Su macOS, la build non è ancora stata notarizzata da Apple, quindi al primo avvio dovrai aprire il binario tramite il menu contestuale di Finder tenendo premuto il tasto Control.
A chi sarà utile questo progetto
Vernet difficilmente sostituirà Wireshark o script nmap approfonditi per audit di sicurezza seri. Ma è un'ottima alternativa ai scanner mobili proprietari come Fing, che ultimamente sono stati sommersi di pubblicità, tracker e abbonamenti a pagamento.
Se hai bisogno di uno strumento leggero e tascabile per Android o di un'utility pulita per controlli rapidi di porte e IP su un laptop, il progetto merita sicuramente di essere salvato nei preferiti. Il codice sorgente è aperto con licenza Apache 2.0, quindi gli sviluppatori Dart possono esaminare l'implementazione delle chiamate di rete a basso livello in Flutter.
Progetti correlati