1 votes

Comment identifier le réseau local auquel vous êtes connecté ?

J'ai besoin d'un script pour pouvoir identifier si l'ordinateur est connecté à mon réseau domestique, à mon réseau professionnel, o à un réseau différent, soit par wifi, soit par câble.

Ma question est de savoir s'il existe un identifiant réseau disponible et comment l'obtenir à partir d'un Shell Shell.

3voto

BenjiWiebe Points 8464

S'il existe une commande simple pour faire cela, je n'en ai pas connaissance. Ce qui pourrait fonctionner est le suivant :

wireless=<put name of wireless card here, e.g. wlp2s0>
wired=<put name of wired network adapter here, e.g. p1p1>
dev=$(ip route | grep default | awk '{print$5}') #finds the device that your Internet is coming through
if [ x$dev = x$wired ]; then
    echo "Wired connection."
elif [ x$dev = x$wireless ]; then
    echo -n "Wireless connection: "
    iwconfig $wireless 2>&1 | grep ESSID | sed 's@.*ESSID:\"\(.*\)".*@\1@' # prints ESSID of wireless connection only
fi

Cela devrait fonctionner, tant que vous n'oubliez pas de remplir les variables filaire/sans fil.

EDITAR Vous devriez absolument dire que vous exécutez cygwin sous Windows. Ce script ne fonctionnera très probablement pas sous cygwin. Je n'ai jamais utilisé cygwin donc je ne sais pas à quel niveau il imite Linux. Si ce script ne fonctionne pas, vous n'avez pas de chance (je pense).

2voto

MariusMatutiae Points 45233

Votre maison, votre travail, etc. se distinguent par des différences public IP, de sorte que vous pouvez utiliser toute commande CLI qui renvoie votre adresse IP publique et agir en fonction du résultat de ces commandes.

N'importe laquelle de ces commandes fonctionnera sur une distro Linux normale, je suis certain que wget existe dans Cygwin, je ne connais simplement pas curl et lynx :

wget -q -O - ipecho.net/plain
curl ipecho.net/plain
lynx --dump ipecho.net/plain

Agir sur votre adresse publique présente l'avantage supplémentaire de vous permettre de distinguer un autre réseau local utilisant le même sous-réseau que votre travail/maison/quelque chose de votre travail/maison/..., si jamais vous emmenez votre ordinateur portable dans un nouveau lieu.

-1voto

njp Points 113

Les masques de sous-réseau sont-ils différents selon le réseau auquel vous vous connectez ? Le masque de votre domicile sera de 255.255.255.0 alors que celui de votre lieu de travail sera de 255.255.255.254 ou moins.

Vérifiez via la ligne de commande sous Windows avec ipconfig et vérifiez le masque de sous-réseau avec ifconfig pour Linux.

Une autre façon de le savoir serait de résoudre le DNS depuis votre ordinateur et de voir quel DNS le capte, est-ce le FAI que vous utilisez à la maison ou les serveurs DNS du domaine de votre bureau ? Cela vous permettrait également de savoir, je veux dire un regard sur vos tables de routage aussi.

Vérifiez que les premières routes proviennent du domaine de votre entreprise. Exécutez cette commande à partir de l'invite de commande. Trouvez l'invite de commande, ouvrez-la et tapez :

netstat -f

 TCP    10.0.0.145:56433       stackoverflow.com:http  ESTABLISHED  
 TCP    10.0.0.145:56462       stackoverflow.com:http  ESTABLISHED   
 TCP    10.0.0.145:56592       stackoverflow.com:http  ESTABLISHED
 TCP    10.0.0.145:56748       stackoverflow.com:http  ESTABLISHED
 TCP    10.0.0.145:56782       stackoverflow.com:http  ESTABLISHED
 TCP    10.0.0.145:56902       stackoverflow.com:http  ESTABLISHED
 TCP    10.0.0.145:56949       stackoverflow.com:http  ESTABLISHED
 TCP    10.0.0.145:57056       stackoverflow.com:http  ESTABLISHED

L'exemple ci-dessus montre où nous en sommes maintenant, les IP sont résolues grâce à notre système de gestion de l'information. -f sur ce site, il devrait l'être. Quelqu'un a dit que vous exécutez Cygwin dans l'environnement Windows. Pourquoi n'ajoutez-vous pas simplement l'option "cygwin" ? \bin "à votre chemin d'accès Windows ? Vous aurez un accès complet à la plupart des outils GNU, et pourrez les utiliser à peu près de la même manière que sous Linux.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X