OVH Cloud OVH Cloud

(dés)activer une interface réseau avec cmd.exe

4 réponses
Avatar
polstice
bonjour

voil=E0 j'ai un petit souci, je souhaiterais pouvoir=20
activer/d=E9sactiver une interface r=E9seau a la ligne de=20
commande. il existe bien entendu netsh.exe qui devrait=20
permettre de le faire:

C:\>netsh interface show interface

=C9tat admin Type Nom de l'interface
----------------------------------------------
Activ=E9 D=E9di=E9 Wifi
Activ=E9 D=E9di=E9 Firewire
Activ=E9 D=E9di=E9 lan
Activ=E9 Boucle de rappel Boucle de rappel
Activ=E9 Interne Interne

C:\>netsh interface set interface lan DISABLED=20
DISCONNECTED lan

Les interfaces d=E9di=E9es ne peuvent pas =EAtre connect=E9es,=20
d=E9connect=E9es, activ=E9es ou d=E9sactiv=E9es. Impossible=20
d'accomplir cette fonction.

alors voil=E0 si vous constatez bien, ce n'est pas possible=20
d'apres netsh.exe... et je crains avec horreur qu'il=20
n'existe pas de commande capable de le faire!

sinon j'ai cherch=E9 dans la base de registre la commande=20
qui =E9tait associ=E9e au clic droit sur une interface r=E9seau=20
(mais je me suis un peu peaum=E9 a vrai dire...), je ne=20
sais pas trop si c'est la bonne solution mais je pense=20
que ca devrait pouvoir marcher! si qqun a un conseil l=E0=20
dessus, merci d'avance!

Pierre

4 réponses

Avatar
-----Message d'origine-----
bonjour

voilà j'ai un petit souci, je souhaiterais pouvoir
activer/désactiver une interface réseau a la ligne de
commande. il existe bien entendu netsh.exe qui devrait
permettre de le faire:

C:>netsh interface show interface

État admin Type Nom de l'interface
----------------------------------------------
Activé Dédié Wifi
Activé Dédié Firewire
Activé Dédié lan
Activé Boucle de rappel Boucle de rappel
Activé Interne Interne

C:>netsh interface set interface lan DISABLED
DISCONNECTED lan

Les interfaces dédiées ne peuvent pas être connectées,
déconnectées, activées ou désactivées. Impossible
d'accomplir cette fonction.

alors voilà si vous constatez bien, ce n'est pas
possible

d'apres netsh.exe... et je crains avec horreur qu'il
n'existe pas de commande capable de le faire!

sinon j'ai cherché dans la base de registre la commande
qui était associée au clic droit sur une interface
réseau

(mais je me suis un peu peaumé a vrai dire...), je ne
sais pas trop si c'est la bonne solution mais je pense
que ca devrait pouvoir marcher! si qqun a un conseil là
dessus, merci d'avance!

Pierre
.



Avatar
Jacques Barathon [MS]
Ce n'est effectivement pas autorisé via la commande netsh. Tu peux lire la
fiche technique à ce sujet (qui propose une autre méthode pour "désactiver"
l'adaptateur):

http://support.microsoft.com/?id&2265

Pour ce qui est de passer par la base de registres, à mon avis "no way"...
Les modifications faites dans la base de registres quand tu
actives/désactives un adaptateur sont trop complexes pour pouvoir être
reproduites par script.

Jacques

"polstice" wrote in message
news:b81e01c3ed79$8abe5120$
bonjour

voilà j'ai un petit souci, je souhaiterais pouvoir
activer/désactiver une interface réseau a la ligne de
commande. il existe bien entendu netsh.exe qui devrait
permettre de le faire:

C:>netsh interface show interface

État admin Type Nom de l'interface
----------------------------------------------
Activé Dédié Wifi
Activé Dédié Firewire
Activé Dédié lan
Activé Boucle de rappel Boucle de rappel
Activé Interne Interne

C:>netsh interface set interface lan DISABLED
DISCONNECTED lan

Les interfaces dédiées ne peuvent pas être connectées,
déconnectées, activées ou désactivées. Impossible
d'accomplir cette fonction.

alors voilà si vous constatez bien, ce n'est pas possible
d'apres netsh.exe... et je crains avec horreur qu'il
n'existe pas de commande capable de le faire!

sinon j'ai cherché dans la base de registre la commande
qui était associée au clic droit sur une interface réseau
(mais je me suis un peu peaumé a vrai dire...), je ne
sais pas trop si c'est la bonne solution mais je pense
que ca devrait pouvoir marcher! si qqun a un conseil là
dessus, merci d'avance!

Pierre
Avatar
polstice
merci pour la réponse, effectivement ca me laisse très embeté cette histoire car j'ai besoin de désactiver l'interface (et non pas changer l'adresse ip comme le conseille l'article) exactement de la même manière qu'on le fait dans le my network places. je vais quand meme tenter la base de registre, il va y avoir pas mal de recoupements a faire etc, mais je pense que ca reste possible...
Avatar
Jean-Claude BELLAMY
Dans le message b81e01c3ed79$8abe5120$,
polstice s'est ainsi exprimé :

bonjour

voilà j'ai un petit souci, je souhaiterais pouvoir
activer/désactiver une interface réseau a la ligne de
commande. il existe bien entendu netsh.exe qui devrait
permettre de le faire:

C:>netsh interface show interface

État admin Type Nom de l'interface
----------------------------------------------
Activé Dédié Wifi
Activé Dédié Firewire
Activé Dédié lan
Activé Boucle de rappel Boucle de rappel
Activé Interne Interne

C:>netsh interface set interface lan DISABLED
DISCONNECTED lan

Les interfaces dédiées ne peuvent pas être connectées,
déconnectées, activées ou désactivées. Impossible
d'accomplir cette fonction.


Eh oui !
Confirmé par cet article du MSDN :
http://support.microsoft.com/?id&2265

alors voilà si vous constatez bien, ce n'est pas possible
d'apres netsh.exe... et je crains avec horreur qu'il
n'existe pas de commande capable de le faire!


SI !! Je l'ai fait

Mais j'ai du phosphorer un max !
Parce que moi aussi cela m'énervait de ne pas pouvoir le faire, et la
solution de MS d'attribuer une adresse de passerelle folklorique pour
invalider une carte ne me plaisait pas du tout !
J'ai écrit un scritp wsf qui le fait nasodigitalement :
"CONNEXION.WSF"
http://www.bellamyjc.org/fr/vbsdownload.html#connexion

--------------------------------------------------------
Ce script permet d'activer ou désactiver une connexion
réseau local d'un ordinateur local en ligne de commande.
JCB © 2004
--------------------------------------------------------

Utilisation : connexion.wsf [/c:valeur] [/a:valeur] [?]

Options :

c : Nom de la connexion
Ce nom peut être partiel s'il n'y a pas d'ambiguïté.
Si ce paramètre est omis, la liste des connexions et
de leurs états respectifs est affichée.
a : Action à entreprendre :
ON -> activation de la connexion
OFF -> désactivation de la connexion
Si ce paramètre est omis, l'état de la connexion est affiché.
? : Affiche la présente aide

Exemples:
connexion.wsf
affiche la liste des connexions de l'ordinateur
connexion.wsf /c:"LAN2" /a:on
active la connexion "LAN2"
connexion.wsf /c:"Connexion" /a:OFF
désactive la connexion "Connexion au réseau local"
--------------------------------------------------------

Pour info, ce script procède ainsi :
- énumération des connexions dans les clefs

HKLMSYSTEMCurrentControlSetControlClass{4D36E972-E325-11CE-BFC1-08002BE
10318}

HKLMSYSTEMCurrentControlSetControlNetwork{4D36E972-E325-11CE-BFC1-08002
BE10318}
et récupération des ID et noms de services respectifs
- détermination de l'état du service par appel de la classe
Win32_SystemDriver de WMI
- détermination du dossier système des connexions distantes par lecture de
la clef
HKLMSOFTWAREClassesCLSID{7007ACC7-3202-11D1-AAD2-00805FC1270E}
- création d'un instance de l'objet "shell.application"
- recherche de l'objet correspondant à la connexion désirée
- exécution du 1er verbe de cet objet ("(dés)activer")


Et çà marche !

H:WSH>connexion.wsf
LAN2 : désactivée
VMware Network Adapter VMnet1 : activée
VMware Network Adapter VMnet8 : activée
BlueTooth : désactivée
LAN : activée

H:WSH>connexion.wsf /c:lan2 /a:on
Connexion LAN2 activée

H:WSH>connexion.wsf
LAN2 : activée
VMware Network Adapter VMnet1 : activée
VMware Network Adapter VMnet8 : activée
BlueTooth : désactivée
LAN : activée

H:WSH>connexion.wsf /c:lan2 /a:off
Connexion LAN2 désactivée

H:WSH>connexion.wsf /c:lan2
LAN2 : désactivée

--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
http://www.bellamyjc.org *