Comment release+renew une IP à distance ? [Résolu] - Win NT/2K/XP - Windows & Software
Marsh Posté le 23-07-2010 à 15:18:14
Je n'y connais pas grand chose sur psexec.
Mais, sans connâitre, est-ce que ceci est envisageable ?
Si tu fais ça :
psexec.exe @PCLIST.TXT -c -f psexec.exe (est ce que ça copie le psexec.exe dans le windows\system32 de la machine que tu veux relaese/renew ?)
Si c'est le cas, il suffirait de lancer psexec.exe @PCLIST.TXT -c -f ReleaseRenew.bat (pour copier le bat dans system32 de la machine ciblée).
Tu fais un fichier psexec.bat ( qui lancerait en local de la machine cible le c:\windows\system32\psexec.exe pour faire executer le c:\windows\system32\ReleaseRenew.bat).
C'est un peu tiré par les cheveux mais l'idée ça serait de lancer la commande psexec depuis le PC cible en local de façon à ce que le release ne casse pas le réseau avec le psexec distant.
Marsh Posté le 23-07-2010 à 15:42:43
Merci pour ta réponse !
En gros en exécuterait à distance un processus d'exécution à distance mais qui travaillerait localement ... c'est effectivement un peu tiré par les cheveux, mais ça vaut le coup d'essai
alors :
- Oui ça copie bien le psexec.exe dans le windows\system32 - à la limite je suis domain admin je peux le faire à la normale avec un copy
- je crée donc un nouveau fichier bat avec un appel vers le PSEXEC local qui doit donc travailler sur lui-même. Le prompt montre effectivement le psexec.exe qui s'exécute en remote (ligne de commande c:\windows\system32\psexec.exe \\localhost -c -f c:\windows\ReleaseRenew.bat) mais il reste bloqué après les 3 lignes d'intro de psexec. (le ipconfig /release n'est même pas exécuté).
(j'ai essayé sans le localhost, c'est pareil .. et avec le nom du PC tout de suite ce n'est pas possible puisque je voudrais travailler avec une liste dynamique provenant de PCLIST.TXT).
Idée intéressante donc, mais je pense que ça ne fonctionne pas ...
Marsh Posté le 23-07-2010 à 16:16:55
ahhhh trouvé !
en rajoutant le paramètre -i dans la commande :
Code :
|
, il exécute le programme en mode prompt visible (on voit littéralement le command prompt sur MONPCTEST),. Le message d'erreur est pile poil identique sur la machine depuis laquelle la commande est exécutée, *mais* le renew a effectivement été effectué.
Un mystère non expliqué, mais résolu !
Marsh Posté le 23-07-2010 à 14:47:17
Bonjour tous,
Je voudrais sur quelques machines, exécuter à distance un ipconfig /release suivi d'un ipconfig /renew.
J'ai trouvé ce topic sur un autre forum et ai conformément créé un petite ligne de commande avec psexec pour ce faire:
rappel des paramètres de psexec :
@ : permet de définir un fichier qui contient les machines à cibler (ici PCLIST.TXT, qui pour l'exemple ne contient qu'un seul PC : MONPC.mondomaine.com)
-c : copie le fichier batch à distance
-f : force la copie si le fichier existe déjà
-s : utilise le SYSTEM account pour l'exécution de celui-ci
ReleaseRenew.bat contient :
et j'exécute la ligne de commande depuis un command prompt en admin mode, depuis une session Vista ouverte avec un Domain admin.
Les machines à cibler sont dans le même domaine et sur XP/Vista/Seven (la machine de test ici en l'occurrence sur Seven)
Le problème est le suivant, voici ce que retourne la commande :
C:\test>psexec.exe @PCLIST.TXT -c -f -s ReleaseRenew.bat
PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com
\\MONPCTEST.mondomaine.com:
C:\Windows\system32>ipconfig /release
Windows IP Configuration
Error communicating with PsExec service on MONPCTEST.mondomaine.com:
The specified network name is no longer available
(ReleaseRenew.bat et PCLIST.TXT se trouvent évidemment dans C:\test sur la machine depuis laquelle j'exécute la commande)
J'observe en live ce qui se passe sur MONPCTEST et je vois que immédiatement l'IP est released --> le script semble atteindre la cible correctement.
En revanche, comme la fin de l'output semble le signifier, le renew n'est effectivement jamais lancé. Le réseau est coupé sur MONPCTEST, et je dois faire un ipconfig /renew à la main, sinon rien à faire
De plus, sur MONPCTEST je trouve bien le ReleaseRenew.bat dans c:\windows\system32 (--> il a correctement été copié) mais on dirait que malgré que je demande d'exécuter le bidule à distance, il ait quand même besoin d'un link permanent (mais pourquoi diable ?? )
J'ai aussi essayé :
, mais le problème reste le même.
--> Ma question : comment puis-je envoyer un programme à exécuter sur une machine distance, tout en autorisant le lien vers cette machine à être brisé au cours de l'exécution dudit programme ?
Message édité par ZeBix le 23-07-2010 à 16:17:12