darcosion / Echosounder

petit programme marrant
MIT License
14 stars 1 forks source link

Détecter automatiquement le subnet dans lequel on est #43

Closed darcosion closed 2 years ago

darcosion commented 2 years ago

Actuellement, le scan de subnet contient une valeur hardcodé en front : https://github.com/darcosion/Echosounder/blob/a529e8ddbd79e5da0d40e1cfd839515b5490c3c3/static/main.js#L17

Il serait plus intéressant d'avoir une requête backend pour cela qui mettrais à jour le front, en effet, le réseau local peut avoir des IP/CIDR différentes de 192.168.1.0/24 comme 172.168.1.0/24 ou 10.10.0.0/24...

darcosion commented 2 years ago

Bon, j'ai lu pas mal de doc là dessus, il ne semble pas forcément avoir de méthode trivial pour obtenir cela en python. On peut obtenir l'IP de la gateway via un traceroute où l'on met le TTL à "1", ce qui permet d'avoir le premier "nœud" réseau qui est logiquement la gateway.

Mais pour obtenir son masque de sous-réseau ? A priori, des requêtes DHCP d'attribution permettent d'obtenir cela, mais rien en terme de documentation python sur internet pour compléter ma connaissance du sujet...

darcosion commented 2 years ago

Le commit 93ab86f2064dd2235cdb1d8fe826772357a56bc1 résous complètement cette problématique. On laisse la valeur par défaut 192.168.1.0/24 mais si on sélectionne une interface puis son IP associé, cela met à jour cette valeur !