WakeOnLan // Réveil, arrêt, redémarrage (et bien plus encore) de postes distants ; utilisation scriptable possible

wakeonlan01.png
français anglais allemand espagnol italien portugais roumain   (pour contribuer, rendez-vous sur la page des fichiers de langues)

Besoin d'intervenir sur un pc situé dans un bureau éloigné du votre et sur lequel vous possédez des droits d'administration (ou de connexion au bureau à distance) ? Le hic, c'est que cela n'est possible que lorsque la machine en question est allumée...

Plutôt que d'utiliser certains outils du même genre mais à l'ergonomie discutable, essayez ce WakeOnLan avec lequel vous allez pouvoir tester l'état des machines (grâce à des Ping très rapides) que vous aurez préalablement déclarées et redémarrer celles que vous souhaitez en un seul clic.

A noter que le réveil d'un pc n'est possible que :

  • s'il possède un adaptateur réseau (intégré à la carte-mère ou carte additionnelle) compatible avec le réveil à distance,
  • si cet adaptateur est raccordé au connecteur WOL de la carte-mère (sur les anciennes configurations matérielles)
  • si cet adaptateur est correctement configuré (paramétrage sous Windows)
  • si le BIOS de la machine est configuré pour permettre le réveil à distance

Mais le réveil à distance n'est pas la seule corde que cet outil a à son arc puisqu'il permet aussi de redémarrer, d'éteindre, de mettre en veille prolongée, de fermer/verrouiller la session sur une ou plusieurs machines distantes. Il faut toutefois que la configuration de la machine 'cible' le permette : le service 'serveur' doit notamment être démarré et vous (l'utilisateur qui souhaite éteindre la machine à distance) devez avoir des privilèges suffisants. A noter que certaines fonctionnalités ne sont pas accessibles aux postes sous Win9x...

Depuis la v3.0, WakeOnLan peut aussi être utilisé en mode ligne de commande. Pour plus d'informations à ce sujet, ouvrez une fenêtre d'invite de commandes, placez-vous dans le dossier dans lequel se trouve l'appli, et tapez WakeOnLanBatch /? (ça fonctionne aussi sans paramètre).

Avec la sortie de la v3.2, l'outil offre désormais la possibilité de réveiller des machines via Internet (fonctionnalité WakeOnWan, ou WOW)...
 

Télécharger Télécharger ce logiciel (version installeur) Télécharger Télécharger le script wakeonwan.php

Télécharger  Télécharger ce logiciel (version portable ZIP)

Note importante aux utilisateurs des versions portables

Date de création : 18/03/2005 @ 23:39
Dernière modification : 01/10/2017 @ 10:29
Catégorie : - Aide à l'administration
Page lue 290756 fois
 

Réactions à cet article

Réaction n°188 

par rbras le 15/06/2011 @ 11:17

Bonjour Damien,

Bravo pour WakeOnLan ... il me simplifie déjà la vie. Je suis professeur de dessin technique dans un lycée et dispose d'une grande salle équipée de 12 postes informatique pour l'utilisation d'un modeleur 3D. J'utilise déjà WakeOnLan pour démarrer/éteindre les postes depuis mon bureau mais j'ai besoin maintenant de pouvoir lancer 2 commandes personnalisées : La première pour connecter les postes en session "élève" (Protégée par mot de passe), puis la seconde pour lancer le fameux logiciel de modélisation sur tous les postes allumés. Le problème est que je ne maitrise absolument pas l'écriture de ces commandes. Est-il possible de recevoir ces lignes d'écriture contre un don ?

Merci d'avance pour votre soutien et encore bravo pour votre boulot !

[réponse de damien, le 15/06/2011 à 13h32]

Qu'entends-tu par "connecter les postes en session élève" ? Si c'est "ouvrir la session", je ne vois pas comment il serait possible de "simuler" la saisie du login/password sans interaction sur chaque poste. A moins de configurer les postes pour qu'ils utilisent la fonctionnalité AutoLogon de Windows mais on fait mieux côté sécurité...

En revanche, pour ce qui est de la seconde demande (lancement de l'appli), ça ne devrait pas être trop compliqué via WMI.


Réaction n°187 

par xianmai le 11/06/2011 @ 17:50

Bonjour,Merci pour votre excellent logiciel qui marche parfaitement.Cependant, j'ai voulu essayer le script wakeonwan.php en l'installant sur mon site perso. J'ai tenté de "réveiller" le PC  avec lequel j'avais essayé votre logiciel, mais sans succès. Il n'y a pas de message d'erreur, et l'exécution du script se termine normalement par le message "[OK001] Paquet envoyé avec succès à l'adresse "adresse_publique"".Merci d'avance pour votre aide.
 

[réponse de damien, le 11/06/2011 à 21h58]

Ton site perso ne serait-il pas hébergé chez Free par hasard ? Il faut savoir que certains hébergeurs (Free notamment) ont désactivé l'utilisation des fonctions socket_x() qui servent pour l'envoi du paquet... Cela dit, en principe ça génère une erreur du style [ERR11] Erreur utilisation socket.

Sinon, j'imagine que tu as bien contrôlé à plusieurs reprises que l'IP et de la MAC spécifiées sont correctes ? Idem pour l'url du script à configurer dans l'onglet "Réveil par Internet" de la fenêtre de configuration de mon appli ? Tu peux vérifier en la testant depuis un navigateur, par exemple :

http://www.tonsite.com/wakeonwan.php?ip=123.123.123.123&mac=00-11-22-33-44-55&port=9

Tu peux aussi essayer en utilisant les mêmes valeurs depuis un autre site (le mien par exemple) pour voir si le paquet arrive bien à destination (que tu peux vérifier avec WolMonitor de Depicus par exemple).


Réaction n°186 

par Laurent le 04/06/2011 @ 17:21

Bonjour,
Je viens de découvrir votre logiciel WakeOnLan mais je n'arrive pas à le faire fonctionner (ni en version portable ni en version installable). En effet, j'ai l'erreur suivante dès que j'essaye de renseigner une machine :
Erreur d'exécution '35613'ImageList must be initialized before it can be used
Je pense que cela provient en partie d'un autre logiciel que j'utilise : Dataram RAMDisk, car lors de l'installation de WakeOnLan, j'ai eu un "effet de bord", à savoir que le setup de Dataram RAMDisk se lance également.
En regardant de plus près, je vois que ces 2 logiciels partagent un composant commun : mscomctl.ocx, or j'ai 2 versions différentes de ce composant : l'un daté du 08/03/2004 (WakeOnLan) & l'autre du 19/12/2009 (Dataram RAMDisk).
Auriez-vous une idée de solution pour le problème que je rencontre ?
Par avance merci de votre réponse.

[réponse de damien, le 05/06/2011 à 11h58]

Je viens d'installer Dataram RAMDisk (V3.5.130R18) et mon WakeOnLan v3.53 sur une machine virtuelle XP SP3 toute propre et effectivement, je constate le même problème. J'ai essayé plusieurs manips mais je ne suis pas parvenu à faire fonctionner mon appli... déconcerté

Je poursuis les recherches et reviens vers toi dès que j'ai du nouveau.


Réaction n°186 

par Pierro le 20/05/2011 @ 16:23

Bonjour, merci beaucoup pour votre logiciel qui marche très bien pour une salle.
Par contre avez vous une idée de solution pour le rendre multi-réseau
Car si j'ai bien compris, le paquet magique ne passe pas les sous réseau.Du coup il faut mettre ca sur un serveur qui accède à toutes les machines et qui dirige les broadcast ?
Exemple, si vous avez 10 sous réseaux différents , comment peut on s'y prendre ?
Merci beaucoup

[réponse de damien, le 20/05/2011 à 17h44]

Il est inexact de dire que les paquets magiques ne "passent pas les sous-réseaux". En fait, cela dépend de la configuration des équipements. Routeurs notamment, mais peut-être aussi les switches je ne sais pas.

Donc la première chose à faire c'est de tester et, si ça ne fonctionne pas (après avoir contrôlé que les infos fournies à WakeOnLan sont correctes, que les PC "cibles" sont bien configurés et qu'il se réveillent depuis une requête locale), de voir avec "les gars du réseau" pour qu'ils désactivent l'éventuel filtrage mis en place ou qu'ils activent le WOL selon le cas.

Dans l'éventualité où ils ne le souhaiteraient pas (pour éviter que tout le monde s'amuse à réveiller les machines de l'entreprise par exemple), il faut essayer de voir s'ils sont d'accord pour autoriser le réveil depuis une machine bien identifiée. Ils n'auraient qu'à configurer les routeurs pour que ces derniers laissent passer le paquet dès lors qu'il provient de cette machine spécifique servant de "serveur de réveil". Après, à toi de voir si tu veux y installer directement WakeOnLan dessus et l'utiliser en prise de main à distance, ou s'il n'est pas plus judicieux (personnellement je pencherais pour cette seconde solution) d'utiliser un serveur Web existant sur lequel tu mettrais en place mon script wakeonwan.php. Ce dernier serait alors appelé via la fonction de "réveil par internet" (qui fonctionnerait ici en intranet) de l'exécutable WakeOnLan installé sur ta machine. Compris ?

Voilà, à toi de trouver les bons arguments pour faire "fléchir" les admins réseau qui sont parfois bornés ! Si tu passes par ta hiérarchie ou la compta/gestion en mettant en avant le fait que la mise en œuvre de cette techno pourrait faire gagner en productivité (éviter des temps de déplacement souvent inutiles juste pour appuyer sur un bouton, le salarié pouvant alors occuper ce temps sur des activités à plus forte valeur ajoutée) et faire baisser la facture électrique, ils seront vite convaincus ! cligne


Réaction n°184 

par Eddy le 30/03/2011 @ 20:14

Merci pour ce petit logiciel bien sympathique. coucou Si comme moi certains ont eu des problèmes avec le pare-feu de Windows sur XP SP3, voici ce que j'ai fait pour résoudre ça:
 ouvrir une invite de commande et taper ça dedans:

netsh firewall set service type=remoteadmin mode=enable

Cela autorise l'administration à distance, et j'ai cherché pendant quelque temps car j'avais activé cela dans le pare-feu de manière graphique en croyant que c'était la même chose mais il semblerait que non.portnawak
source: http://www.packettrap.com/network/Knowledge-Base/PacketTrap-MSP/WMI-Troubleshooting.aspx#_Toc239699679

[réponse de damien, le 30/03/2011 à 21h37]

Merci beaucoup à toi d'avoir pris le temps de partager cette information. merci


Réaction n°183 

par Weastbug le 28/01/2011 @ 13:21

Re,

J'avais oublié de tester avec les outils copié dans le dossier sur le profil qui fonctionne et effectivement je retrouve le meme problème de programme qui se figue que j'ai sur mon profil.

Donc ce serait juste un souci de détection des outils dans le dossier windows sur mon profil.

[réponse de damien, le 01/02/2011 à 19h16]

Donc ça confirme que le problème ne vient pas de mon soft... en même temps, je n'avais pas trop de doutes dans la mesure où ça fonctionne correctement sous Windows 7.


Réaction n°182 

par Weastbug le 28/01/2011 @ 13:17

Réponse au message précédent:

Salut,

Oui je suis bien 3.5.3. Le message d'erreur pour les outils ne me laisse pas le choix, il ferme le programme.

Je viens de tester sur un autre 2008R2 et effectivement aucun souci et pas de message pour les outils.

J'ai donc désinstaller sur celui qui pause problème et réinstaller mais toujours le message d'erreur. ma variable path semble bonne et les commandes fonctionnent sous Dos.

Du coups j'ai testé un autre profil utilisateur (droits identiques et mêmes GPO) sur le serveur qui pose problème et là ca fonctionne. Je n'ai pas le temps pour le moment de chercher d'où vient le problème sur mon profil mais quand j'aurai un peu de temps j'y regarderai et ferai un retour si je trouve.

Merci pour tous ces logiciels qui me facilitent la vie et me font gagner du temps.

[réponse de damien le 01/02/2011 à 19h31]

Regarde du côté du dossier où est installé l'application. Il y a de fortes chances que tu y trouves un des ou les exécutables PING.EXE, NBTSTAT.EXE, ARP.EXE ou NSLOOKUP.EXE... Si c'est le cas, supprime-les, dans le cas contraire, il est peut-être opportun de songer à supprimer et recréer ton profil.


Réaction n°181 

par Weastbug le 24/01/2011 @ 13:38

Bonjour,

Je ne parviens pas à faire fonctionner WakeOnLan sur un 2008R2, dès que je lance une commande tel que "tester la selection" le programme ne répond plus.

Je pense que c'est peu être lié aux outils de ping et autre qui ne sont pas compatibles car apres l'installation j'avais le message "Au moins un des outils réseau (PING, ARP et NBTSTAT) nécessaires au fonctionnement de se logiciel est introuvable..." J'ai du les copier manuellement dans le dossier de l'appli.

Sur des Win 2008 R1 x64 je ne rencontre aucun souci de détection des outils et de fonctionnement du logiciel.

[réponse de damien, le 24/01/2011 à 20h20]

Question idiote, as-tu bien récupéré la dernière version (v3.5.3) ? Car je viens de re-tester sur un Windows 7 64 bits et ça fonctionne correctement. Je n'ai pas de Windows 2008 R2 sous la main, j'essayerai de tester ça demain au boulot.

A noter qu'il n'y a plus lieu de copier les exécutables PING, ARP, NBTSTAT et NSLOOKUP (au passage, j'ai oublié de mentionner ce dernier dans le message d'erreur) dans le dossier de l'exécutable, en fait c'était même une bêtise de ma part d'avoir prodigué ce conseil... Dans certains cas il est plus nuisible qu'autre chose au final.

[réponse complémentaire de damien, le 25/01/2011 à 10h34]

Je viens tout juste de tester la v3.5.3 sur une bécane 2008R2 de mon boulot et ça fonctionne tout à fait normalement : aucun message d'erreur (indiquant l'absence d'un des outils réseau) à l'ouverture, et l'utilisation des boutons "Tester" ne pose pas de problème. Tout est normal. pas ma faute


Réaction n°180 

par Tmay le 21/01/2011 @ 14:02

Bonjour,
je decouvre votre logiciel qui m'a l'air d'etre drolement bien bug
mon objectif est simple, forcer l'extinction des machines de mon domaine tous les soirs.
j'ai donc l'intention d'utiliser la version scriptable.

j'ai 2 questions préalables:
1. quelle est la difference entre
eteindre
eteindre/poweroff (wmi)
eteindre shutdown (wmi)

2. lorsqu'il y a des mises a jour a faire (via Win update) est ce que l'ordi fera les mise a jour avant de s'eteindre ? (ce qu'il propose quand on est devant l'ecran)

3. y a t'il une aide plus developpée de l'appli en ligne de commande (je ne vois pas comment aller demander au script d'aller chercher le dossier que j'ai créé via l'interface graphique (ou meme d'aller chercher un fichier texte (celui généré par ipscan ?)


Merci pour vos réponses (et encore bravo pour la qualité et la praticité de  vos applis !

[réponse de damien, le 21/01/2011 à 18h29]

L'extinction via la méthode PowerOff est une des dernières fonctionnalités ajoutées. Elle est destinée à l'extinction des bécanes sous Windows2000 car sur ces dernières, la méthode Shutdown arrête bien le système mais pas la machine qui reste "bloqué" sur le message "Vous pouvez maintenant éteindre votre ordinateur en toute sécurité".

Pour ce qui est de l'application des mises à jour WindowsUpdate, je t'avouerais que je n'en sais rien. Mais ça ne te coûte rien d'essayer, personnellement je ne fais pas les mises à jour donc je ne peux pas tester...

Concernant le dernier point, non il n'y a pas de doc plus complète que ce que l'on obtient en lançant WakeOnLanBatch.exe sans argument. Mais ces explications détaillent la syntaxe à utiliser pour faire référence aux machines d'un dossier spécifique. Tu trouveras quelques exemples supplémentaires dans la réaction n°162.

Enfin, en mode ligne de commande (donc sous WakeOnLanBatch), il n'est pas possible de faire référence à un fichier autre qu'un fichier de configuration de WakeOnLan : si tu veux utiliser un fichier généré par IPScan32 il te faudra au préalable l'importer dans WakeOnLan...


Réaction n°179 

par louis75009 le 13/01/2011 @ 11:40

Bonjour,Bravo pour cet outil....J'ai (comme beaucoup?) un problème de rejet de la demande, J'ai effectué les opérations suivants (Win7x64) -saisi les noms d'utilisateur / mot de passe dans le logiciel, -activé les services gestion à distance de Windows + infrastructure de gestion Windows, -autorisé l'appel à distance autorisé pour ROOT dans les propriétés de contrôle WMI, sur l'ordi distant,-autorisé le WMI dans le parefeu Windowsle login via Net Use fonctionne, mais rien n'y fait... impossible d'utiliser ces contrôles WMI, et j'ai un peu peur pour ma sécurité... -> Mon but est de pouvoir allumer / éteindre le HTPC et programmer des enregistrements pendant mes vacances... Pour la prise de contrôle à distance, j'utilise Live Mesh de microsoft. Sinon, la fonction de réveil via internet peut-elle être utilisée sans le script, ou en local? Si votre serveur se fait pirater, c'est quand même ennuyeux. Voila, merci pour vos précisions et bon courage pour la suite!

[réponse de damien, le 13/01/2011 à 18h45]

Si la machine "cible" tourne sous Windows 7 (idem pour Vista et 2008) et que celle-ci est en groupe de travail (workgroup), l'accès distant à la couche WMI peut effectivement s'avérer impossible selon le paramétrage de l'UAC.

Cela s'explique par le fait que la requête est exécutée sous un compte d'utilisateur standard et ce même si le compte qui a initié la requête est bien admin. En session interactive, la fenêtre de l'UAC s'affiche pour proposer la montée de privilège mais c'est bien sûr impossible en utilisation WMI à distance.

Pour résoudre le problème il y a plusieurs solutions :

  • La plus simple, mais pas forcément la meilleure quand on se sent très concerné par la sécurité, c'est tout bonnement de désactiver l'UAC. Rebooter ensuite.
  • Une autre que je qualifierais de "moins pire" consiste à désactiver l'UAC pour les accès à distance uniquement : un petit coup de REGEDIT sur la clé HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciessystem, éditer (ou créer) la valeur LocalAccountTokenFilterPolicy (en DWORD) et lui affecter la donnée 1. Rebooter ensuite.
  • Enfin, Microsoft conseille plutôt de créer un compte spécifique sur la machine distante et faire en sorte (pas la peine de me demander comment, je n'en sais rien !) que les appels WMI externes soient effectués par ce compte.

Tu trouveras plus d'informations sur le site MSDN : http://msdn.microsoft.com/en-us/library/aa826699%28v=vs.85%29.aspx#handling_remote_connections_under_uac

En ce qui concerne ta seconde question portant sur le script utilisé pour le WakeOnWan : si la machine depuis laquelle tu effectues le réveil se trouve en DMZ alors tu peux directement faire du WOL et te passer du script. Dans le cas contraire, le réveil via internet ne peut se faire sans l'utilisation de ce script car il faut que la machine qui émet le paquet magique soit "sur le net" (qu'elle ait une IP publique et non privée en d'autres termes).

Maintenant, tu n'es pas obligé d'utiliser "mon" script : dans la fenêtre de config de l'appli il y a un onglet dans lequel tu peux spécifier l'url à utiliser pour le WOW. Tu peux désigner un script totalement différent (mais qui attend les même paramètres en entrée) ou récupérer le mien et l'héberger ailleurs... Alors, rassuré ?! cligne