Vernet transforme un smartphone et un ordinateur portable en scanner réseau de poche
Chaque fois qu'un autre service tombe en panne sur un réseau domestique ou de bureau, la routine avec les utilitaires en ligne de commande commence. Vous avez recours à arp -a, nmap, d'interminables ping dans le terminal, et vous essayez de vous souvenir de l'adresse IP que le routeur a attribuée au nouveau Raspberry Pi. Sur un ordinateur de bureau, vous pouvez encore vous en accommoder, mais quand vous n'avez que votre téléphone en main, comprendre la situation du sous-réseau devient nettement plus difficile.
Je suis récemment tombé sur le dépôt Vernet de l'organisation Open Society. Il s'agit d'un scanner réseau multiplateforme au code source ouvert, écrit en Flutter. Le projet résout une tâche simple : rassembler les utilitaires réseau de base dans une interface épurée qui fonctionne de la même manière sur Android, Linux, macOS et Windows.

Ce que l'application peut faire
Au lieu d'un outil fourre-tout bloated, les développeurs ont créé un ensemble d'utilitaires essentiels.
L'interface est répartie sur plusieurs écrans :
| Accueil | Liste des appareils | Ports ouverts |
|---|---|---|
|
|
|
|
| Ping | DNS | Test de vitesse |
|---|---|---|
|
|
|
|
Voici les principaux scénarios couverts par Vernet :
- Trouver des appareils sur le sous-réseau. L'application scanne la plage d'adresses locale et affiche une liste des hôtes découverts avec leurs adresses MAC et les noms des fabricants des équipements.
- Scan de ports. Vous pouvez spécifier une adresse IP particulière et vérifier les ports TCP ouverts pour déterminer rapidement si un serveur web, SSH ou une base de données est actif.
- Résumé de la connexion actuelle. Le programme affiche les paramètres Wi-Fi, y compris le BSSID, et identifie le FAI externe.
- Diagnostics de connexion. Il inclut le ping d'hôte, les requêtes vers les serveurs DNS et la mesure de vitesse via speedtest.net.
Comment le projet est structuré
Le dépôt est écrit en Dart en utilisant le framework Flutter. Cela rend la base de code unifiée entre les builds mobiles et desktop.
Sur desktop, l'application nécessite parfois des dépendances système. Par exemple, sur Linux, le paquet net-tools est nécessaire pour une collecte correcte de la table ARP, sinon l'utilitaire ne pourra pas mapper les IP aux adresses MAC.
Les builds Android sont distribués via Google Play et le catalogue F-Droid. L'auteur du projet a même rédigé un guide séparé sur la publication d'applications Flutter sur F-Droid, avec un lien laissé dans le dépôt.
Installation et exécution
Sur Android, le moyen le plus simple d'installer l'application est depuis F-Droid ou Google Play. Si vous avez besoin d'un client desktop, les binaires sont disponibles dans l'onglet Releases du dépôt.
Les étapes suivantes sont nécessaires pour exécuter sur Linux :
# Устанавливаем net-tools для команды arp
sudo apt install net-tools
# Скачиваем архив из релизов, распаковываем и запускаем
unzip vernet-linux.zip
cd bundle
./vernet
Sur macOS, le build n'a pas encore été notarisé par Apple, donc lors du premier lancement, vous devrez ouvrir le binaire via le menu contextuel du Finder en maintenant la touche Contrôle enfoncée.
Qui trouvera ce projet utile
Vernet ne remplacera probablement pas Wireshark ou les scripts nmap approfondis pour les audits de sécurité sérieux. Mais c'est un excellent remplacement pour les scanners mobiles propriétaires comme Fing, qui ont récemment été surchargés de publicités, de trackers et d'abonnements payants.
Si vous avez besoin d'un outil léger de poche pour Android ou d'un utilitaire épuré pour des vérifications rapides de ports et d'IP sur un ordinateur portable, le projet mérite définitivement d'être ajouté aux favoris. Le code source est ouvert sous licence Apache 2.0, donc les développeurs Dart peuvent examiner l'implémentation des appels réseau de bas niveau dans Flutter.
Projets similaires