Lorsque j'utilise Netsh pour changer uniquement la passerelle, Vista
détruit ma config IP (pas de problème sous XP).
Par exemple, si je fais :
netsh interface ip set address name="Connexion au réseau local"
gateway=192.168.1.2
Je perd l'adresse IP et le masque.
Par contre, si je précise tout, ça fonctionne. Par exemple :
netsh interface ip set address name="Connexion réseau sans fil"
static 192.168.1.101 255.255.255.0 192.168.1.2
Pour l'instant, je suis donc obligé de mettre l'adresse IP complète
(adresse + masque + passerelle) pour que ça fonctionne.
Or, je voudrais pouvoir scripter des changements uniquement de la
passerelle.
J'ai bien une solution, en utilisant netsh + find + for ; mais une
syntaxe simple me conviendrait mieux.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Claude BELLAMY
"MCI (ex do ré Mi chel la si do) [MVP]" a écrit dans le message de news:
Bonjour !
Lorsque j'utilise Netsh pour changer uniquement la passerelle, Vista détruit ma config IP (pas de problème sous XP).
Par exemple, si je fais : netsh interface ip set address name="Connexion au réseau local" gateway2.168.1.2
Je perd l'adresse IP et le masque.
Par contre, si je précise tout, ça fonctionne. Par exemple : netsh interface ip set address name="Connexion réseau sans fil" static 192.168.1.101 255.255.255.0 192.168.1.2
Pour l'instant, je suis donc obligé de mettre l'adresse IP complète (adresse + masque + passerelle) pour que ça fonctionne. Or, je voudrais pouvoir scripter des changements uniquement de la passerelle. J'ai bien une solution, en utilisant netsh + find + for ; mais une syntaxe simple me conviendrait mieux.
Et un ch'tiot script VBS, çà ne te conviendrait pas ? Avec WMI et la classe "Win32_NetworkAdapterConfiguration" et sa méthode "SetGateways", ce n'est pas mal, n'est-il pas ?
J'ai écrit un script WSF qui met tout çà à profit. http://www.bellamyjc.org/download/vbs/setgateway.wsf
Cependant il y a un truc bizarre au niveau de la définition des métriques sous VISTA ... En effet, quand j'affecte des passerelles et leurs métriques associées, tout se passe bien p.ex. setgateway /card:"Connexion réseau Intel(R) PRO/100" 192.168.0.2 11 192.168.0.1 25 Si j'ouvre les propriétés de la carte réseau, avancés, je retrouve bien ces valeurs
Or si je veux lire avec mon script les adresses des passerelles et leurs métriques, j'obtiens bien les adresses, mais les métriques sont majorées de 20 ou de 30 ! setgateway /card:"Connexion réseau Intel(R) PRO/100" Ordinateur POUDENAS Carte Connexion réseau Intel(R) PRO/100 2 adresses passerelles 192.168.0.2 (31) (au lieu de 11) 192.168.0.1 (55) (au lieu de 25)
Sous XP, je n'ai pas ces problèmes !
Et en fouilant sur le net, je viens de découvrir un forum MSDN (http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID#08488&SiteID=1) qui fait mention de problèmes avec "SetGateways" uniquement sous VISTA ! Et un intervenant conclut par "I need MS verification of this problem. I think it is a very critical bug" Et le modérateur (Bruce Baker) a suggéré de procéder à une "escalade" du problème.
Cela est assez récent, vu que çà date de fin octobre 2007 ...
Si çà t'amuse t'investiguer dans cette voie ... ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
"MCI (ex do ré Mi chel la si do) [MVP]" <enleverlesO.OmcO@OmclaveauO.com> a
écrit dans le message de news:eFKlOPkPIHA.4712@TK2MSFTNGP04.phx.gbl...
Bonjour !
Lorsque j'utilise Netsh pour changer uniquement la passerelle, Vista
détruit ma config IP (pas de problème sous XP).
Par exemple, si je fais :
netsh interface ip set address name="Connexion au réseau local"
gateway2.168.1.2
Je perd l'adresse IP et le masque.
Par contre, si je précise tout, ça fonctionne. Par exemple :
netsh interface ip set address name="Connexion réseau sans fil" static
192.168.1.101 255.255.255.0 192.168.1.2
Pour l'instant, je suis donc obligé de mettre l'adresse IP complète
(adresse + masque + passerelle) pour que ça fonctionne.
Or, je voudrais pouvoir scripter des changements uniquement de la
passerelle.
J'ai bien une solution, en utilisant netsh + find + for ; mais une syntaxe
simple me conviendrait mieux.
Et un ch'tiot script VBS, çà ne te conviendrait pas ?
Avec WMI et la classe "Win32_NetworkAdapterConfiguration" et sa méthode
"SetGateways", ce n'est pas mal, n'est-il pas ?
J'ai écrit un script WSF qui met tout çà à profit.
http://www.bellamyjc.org/download/vbs/setgateway.wsf
Cependant il y a un truc bizarre au niveau de la définition des métriques
sous VISTA ...
En effet, quand j'affecte des passerelles et leurs métriques associées, tout
se passe bien
p.ex.
setgateway /card:"Connexion réseau Intel(R) PRO/100" 192.168.0.2 11
192.168.0.1 25
Si j'ouvre les propriétés de la carte réseau, avancés, je retrouve bien ces
valeurs
Or si je veux lire avec mon script les adresses des passerelles et leurs
métriques, j'obtiens bien les adresses, mais les métriques sont
majorées de 20 ou de 30 !
setgateway /card:"Connexion réseau Intel(R) PRO/100"
Ordinateur POUDENAS
Carte Connexion réseau Intel(R) PRO/100
2 adresses passerelles
192.168.0.2 (31) (au lieu de 11)
192.168.0.1 (55) (au lieu de 25)
Sous XP, je n'ai pas ces problèmes !
Et en fouilant sur le net, je viens de découvrir un forum MSDN
(http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID#08488&SiteID=1) qui
fait mention de problèmes avec "SetGateways" uniquement sous VISTA !
Et un intervenant conclut par
"I need MS verification of this problem. I think it is a very critical
bug"
Et le modérateur (Bruce Baker) a suggéré de procéder à une "escalade" du
problème.
Cela est assez récent, vu que çà date de fin octobre 2007 ...
Si çà t'amuse t'investiguer dans cette voie ... ;-)
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
"MCI (ex do ré Mi chel la si do) [MVP]" a écrit dans le message de news:
Bonjour !
Lorsque j'utilise Netsh pour changer uniquement la passerelle, Vista détruit ma config IP (pas de problème sous XP).
Par exemple, si je fais : netsh interface ip set address name="Connexion au réseau local" gateway2.168.1.2
Je perd l'adresse IP et le masque.
Par contre, si je précise tout, ça fonctionne. Par exemple : netsh interface ip set address name="Connexion réseau sans fil" static 192.168.1.101 255.255.255.0 192.168.1.2
Pour l'instant, je suis donc obligé de mettre l'adresse IP complète (adresse + masque + passerelle) pour que ça fonctionne. Or, je voudrais pouvoir scripter des changements uniquement de la passerelle. J'ai bien une solution, en utilisant netsh + find + for ; mais une syntaxe simple me conviendrait mieux.
Et un ch'tiot script VBS, çà ne te conviendrait pas ? Avec WMI et la classe "Win32_NetworkAdapterConfiguration" et sa méthode "SetGateways", ce n'est pas mal, n'est-il pas ?
J'ai écrit un script WSF qui met tout çà à profit. http://www.bellamyjc.org/download/vbs/setgateway.wsf
Cependant il y a un truc bizarre au niveau de la définition des métriques sous VISTA ... En effet, quand j'affecte des passerelles et leurs métriques associées, tout se passe bien p.ex. setgateway /card:"Connexion réseau Intel(R) PRO/100" 192.168.0.2 11 192.168.0.1 25 Si j'ouvre les propriétés de la carte réseau, avancés, je retrouve bien ces valeurs
Or si je veux lire avec mon script les adresses des passerelles et leurs métriques, j'obtiens bien les adresses, mais les métriques sont majorées de 20 ou de 30 ! setgateway /card:"Connexion réseau Intel(R) PRO/100" Ordinateur POUDENAS Carte Connexion réseau Intel(R) PRO/100 2 adresses passerelles 192.168.0.2 (31) (au lieu de 11) 192.168.0.1 (55) (au lieu de 25)
Sous XP, je n'ai pas ces problèmes !
Et en fouilant sur le net, je viens de découvrir un forum MSDN (http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID#08488&SiteID=1) qui fait mention de problèmes avec "SetGateways" uniquement sous VISTA ! Et un intervenant conclut par "I need MS verification of this problem. I think it is a very critical bug" Et le modérateur (Bruce Baker) a suggéré de procéder à une "escalade" du problème.
Cela est assez récent, vu que çà date de fin octobre 2007 ...
Si çà t'amuse t'investiguer dans cette voie ... ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
MCI \(ex do ré Mi chel la si do\) [MVP]
Bonsoir !
En fait, j'utilise actuellement le batch suivant (sous Vista) :
::fichier setgate.bat @echo off if [%1]==[] goto :PROBLEM setlocal for /F "usebackq tokens=2" %%a in (`arp -a ^|find "Interface"`) do set IP=%%a netsh interface ip set address name="Connexion au réseau local" static %IP% 255.255.255.0 %1 endlocal goto :EOF
:PROBLEM echo. echo Usage : setgate.bat xx.xx.xx.xx echo (xx.xx.xx.xx etant la passerelle a utiliser) echo.
Il contourne le problème de Netsh, en réutilisant l'adresse IP courante (récupérée avec arp -a |find "Interface" ). Mais, je trouvais ça un poil complexe, à expliquer.
Ton script pourrait faire l'affaire, mais, comme je dois commenter tout ça à des clients, ça risque d'être coton... Merci quand même.
Sinon, je ne comprends pas pourquoi MS, en ré-écrivant Netsh pour Vista, n'a pas maintenu une compatibilité ascendante dans la syntaxe. Il faudrait aussi vérifier si ce n'est pas lié au MUI (à la version française), car c'est maintenant un doute qui devient courant.
@-salutations
Michel Claveau
Bonsoir !
En fait, j'utilise actuellement le batch suivant (sous Vista) :
::fichier setgate.bat
@echo off
if [%1]==[] goto :PROBLEM
setlocal
for /F "usebackq tokens=2" %%a in (`arp -a ^|find "Interface"`) do
set IP=%%a
netsh interface ip set address name="Connexion au réseau local"
static %IP% 255.255.255.0 %1
endlocal
goto :EOF
:PROBLEM
echo.
echo Usage : setgate.bat xx.xx.xx.xx
echo (xx.xx.xx.xx etant la passerelle a utiliser)
echo.
Il contourne le problème de Netsh, en réutilisant l'adresse IP courante
(récupérée avec arp -a |find "Interface" ).
Mais, je trouvais ça un poil complexe, à expliquer.
Ton script pourrait faire l'affaire, mais, comme je dois commenter tout
ça à des clients, ça risque d'être coton... Merci quand même.
Sinon, je ne comprends pas pourquoi MS, en ré-écrivant Netsh pour Vista,
n'a pas maintenu une compatibilité ascendante dans la syntaxe. Il
faudrait aussi vérifier si ce n'est pas lié au MUI (à la version
française), car c'est maintenant un doute qui devient courant.
En fait, j'utilise actuellement le batch suivant (sous Vista) :
::fichier setgate.bat @echo off if [%1]==[] goto :PROBLEM setlocal for /F "usebackq tokens=2" %%a in (`arp -a ^|find "Interface"`) do set IP=%%a netsh interface ip set address name="Connexion au réseau local" static %IP% 255.255.255.0 %1 endlocal goto :EOF
:PROBLEM echo. echo Usage : setgate.bat xx.xx.xx.xx echo (xx.xx.xx.xx etant la passerelle a utiliser) echo.
Il contourne le problème de Netsh, en réutilisant l'adresse IP courante (récupérée avec arp -a |find "Interface" ). Mais, je trouvais ça un poil complexe, à expliquer.
Ton script pourrait faire l'affaire, mais, comme je dois commenter tout ça à des clients, ça risque d'être coton... Merci quand même.
Sinon, je ne comprends pas pourquoi MS, en ré-écrivant Netsh pour Vista, n'a pas maintenu une compatibilité ascendante dans la syntaxe. Il faudrait aussi vérifier si ce n'est pas lié au MUI (à la version française), car c'est maintenant un doute qui devient courant.