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 256514 fois
 

Réactions à cet article

Réaction n°161 

par nostromo le 29/11/2010 @ 08:15

Bonjour, comme dit dans le billet 157, j'ai un soucis bizarre identique. Un paquet de reveil sur deux provoque une erreur. Cela fait la meme chose avec la version en ligne de commande.

D'autre part serait-il possible d'inclure certaines fonctionnalités comme:

  • Possibilité d'ajouter des colonnes personalisé avec une requete wmi associé ou alors simplement l'intitulé de la colonne et une checkbox a cocher? (exemple, rajouter le type d'os, le service pack ou autre)
  • Possibilité d'ajouter une commande personnalisé avec laquelle on peut faire parcourir sur l'ordinateur local pour selectionner un fichier dont le nom serait utilisable en tant que variable dans la command perso. (exemple: %cheminfichier%)
  • Afficher le nombre de bécane qui répondent au ping (total qui sont en vert et en rouge)
  • Possibilité de faire une recherche sur un critère du tableau (nom d'ordinateur ou autre)

Merci de votre réponse

[réponse de damien, le 06/07/2010 à 18h48]

Désolé pour le retard de ma réponse mais en ce moment je n'allume pas systématiquement l'ordi en rentrant à la maison...

Le fait que tu rencontres le même problème que Richard est effectivement bizarre. Est-ce que tu utilises la version fournie avec l'installeur ou une version portable ? Quel OS ?

En ce qui concerne tes suggestions, autant les deux dernières me paraissent assez justifiées, autant les deux premières relèvent d'un besoin très spécifique. Et comme je l'ai déjà dit : le spécifique je n'aime pas ça. C'est à mon sens du temps de "perdu" pour contenter une petite poignée de personnes au détriment de la majorité. Sans compter que ça complexifie le produit.

Je garde donc tes deux dernières propositions mais pas les deux premières. Mais peut-être peux-tu enrichir l'appli en  développant des petits modules externes (à mettre en œuvre via les "commandes supplémentaires") ?

[réponse complémentaire de damien, le 28/11/2010 à 17h45]

Solution trouvée (par toi en plus sourire), voir ce billet...


Réaction n°160 

par Richard le 28/05/2010 @ 16:19

Bonjour,

J'ai tester le démarrage sur des machines de mon réseau, mais ne faisant pas partit de mon VLAN et évidemment ça n'a pas fonctionner.

 J'ai ensuite eu la bonne idée (enfin je croyait que s'en était une) de mettre un masque en 255.255.255.255. Et la comme par magie ça a fonctionné, mais le lendemain quand j'ai voulu refaire la même manip, aucun ordinateurs n'a démarré....

Je pense que c'est du aux switchs qui conservent la relation @MAC/@IP un certain temps mais qui ne la conservent pas indéfiniment (je suis en DHCP).

Auriez-vous une solution?

[réponse de damien, le 28/05/2010 à 18h04]

Peut-être qu'il y a une fonction WOL à activer dans le switch pour qu'à réception d'un magic packet il le retransmette sur l'adresse de broadcast du vlan en question plutôt que d'essayer de l'orienter vers un ordi en particulier (alors que la table de routage est probablement effacée au bout de quelques minutes) ? Ou bien il te faudra router un port manuellement...

Enfin j'dis ça mais je n'y connais rien dans le domaine de la configuration des switchs. pas ma faute


Réaction n°159 

par Richard le 25/05/2010 @ 12:29

Effectivement si j'installe Wake On Lan sur ma machine Lenovo (avant il était installé sur ma machine HP dc7900). Plus de problème d'envoi du paquet et les scripts fonctionnent à merveille.

Merci beaucoup pour votre aide! Je vais enfin pouvoir tester tout sur une trentaine de PCs.

Je vais tout de même vérifier si depuis ma machine Lenovo je n'ai pas de problème pour démarré les différents type de machines qu'il y a dans mon parc.

Je vous tient au courant...

Bizarre quand même que je ne puisse pas lancé de script depuis ma machine perso (HP) et que depuis une autre ça marche, surtout que ma machine est beaucoup plus récente...

Et encore merci pour votre aide!

[réponse de damien, le 25/05/2010 à 18h38]

Y a pas de quoi. Heureux que tout fonctionne, même si je n'ai pas d'explication pour que ce soit le cas depuis ton autre bécane. Il arrive parfois des choses étonnantes en informatique ! pas ma faute


Réaction n°158 

par Richard le 25/05/2010 @ 09:27

Pour la machine IBM le mode ligne de commande ne marche pas pour le réveil, et l'appli fenêtrée, me met une erreur d'envoi du paquet à la première tentative de reveil et réveil ensuite mon pc à la deuxième tentative.

J'ai effectuer des test avec wol monitor. Rien ne s'affiche quand je lance un réveil en ligne de commande (alors que la console me dit que le paquet a été envoyé). Pour l'appli fenêtrée a la première tentative (celle où l'appli me dit qu'il y a eu un problème d'envoi du paquet) évidamment rien ne s'affiche dans wol monitor, et à la deuxième tentative wol monitor m'affiche bien la trame envoyé et mon ordi en question démarre.

Dans WOL mes machine sont importé de IPScan (avec le nom de la machine dans la case : Machine ou Utilisateur, l'@ IP dans la case Adresse Ip (ou nom NETBIOS/DNS) etl'@ MAC dans Adresse MAC). Donc je ne pense pas que le problème vient de cela.

 

[réponse de damien, le 25/05/2010 à 10h37]

Ben pour commencer, ce n'est pas normal que tu rencontres une erreur à l'envoi du paquet...

Tu peux essayer d'exécuter WakeOnLan depuis une autre machine ? Si l'anomalie est reproductible sur d'autres bécanes, tu as peut-être découvert un bug.


Réaction n°157 

par Richard le 29/11/2010 @ 08:18

Merci pour votre réponse. Cela m'a beaucoup aidé.

J'ai réussi à éteindre et rédémarrer 2 pc test à distance via wakeonlan.exe.

Cependant un léger problème persiste. Quand je créé mes scripts, l'extinction marche correctement, mais pour le démarrage j'ai un pc qui ne veut pas démarrer et un autre qui parfois ne démarre pas (ce qui m'obligerai à lancer deux fois le script).

Je pense avoir identifier le problème pour le pc qui ne veut pas démarrer, quand je veut le démarrer depuis wakeonlan.exe il me met une erreur d'envois du paquet la première fois et quand je relance le démarrage un deuxième fois là ça marche. Je pense donc que le logiciel analyse le problème et trouve une solution pour la prochaine tentative, tandis que le script lui envoie simplement le paquet sans se poser de question.

J'ai oublier aussi de préciser que les machines sont deux machines différentes (IBM 8124-CTO et Lenovo 9637-CTO). Le problème c'est que je voulais tester mes scripts en grandeur nature sur des IBMs...

Pensez-vous savoir comment résoudre ce problème?

[réponse de damien, le 25/05/2010 à 08h36]

Est-ce que le réveil "aléatoire" ne concerne que le mode ligne de commande ou le rencontres-tu aussi avec l'appli fenêtrée ? Car en principe les deux exécutables fonctionnent de façon identique, les fonctions du "noyau" étant les mêmes.

Je te conseille de faire des tests à l'aide du WolMonitor de Depicus pour voir si les paquets magiques arrivent bien sur ces machines lorsqu'elles sont allumées, ou non. Il peut y avoir un problème de résolution de nom si tu désignes les machines par leur FQDN (nom DNS) ou leur nom NetBIOS au lieu de l'IP...

Tiens moi au courant stp...

[réponse complémentaire de damien, le 28/11/2010 à 17h46]

Une explication/solution a été trouvé par un autre utilisateur (merci Nostromo merci), voir ce billet...


Réaction n°156 

par Richard le 19/05/2010 @ 12:50

Bonjour,

Je tiens tout d'abord a vous remercier pour votre travail, on m'a chargé de trouver une solution informatique pour pouvoir planifié l'extinction et le démarrage des machines de mon réseau. Et mon choix c'est naturellement tourner vers votre logiciel.

Mais j'ai quelque soucis, j'arrive bien a démarré ou éteindre une machine a distance.Mais je voudrais pouvopir planifié ces extinction/allumage distant. J'ai cru comprendre que c'était possible, mais après plusieurs heures de recherche ne n'ai rien trouvé...

Pourriez-vous me dirigé vers un lien expliquant comment planifié ces commande, et/ou me donner un exemple de script de planification, par ex: éteindre tout les ordinateur du réseau à 18h et les redémarrer à 8h.

Merci beaucoup pour votre réponse!

[réponse de damien, le 19/05/2010 à 19h34]

Alors d'abord, merci pour les compliments.

Pour la mise en œuvre de la planification du réveil et/ou de l'extinction, c'est assez simple : il suffit d'utiliser la version "ligne de commande" de WakeOnLan, à savoir WakeOnLanBatch dont l'exécutable se trouve dans le répertoire de l'appli.

S'agissant de l'exécution à heures fixes, l'appli n'intègre pas de "planificateur", il te faudra programmer les opérations via les tâches planifiées de Windows. C'est aussi simple que ça.

Tu pourrais très bien créer tes deux tâches planifiées avec l'appel à direct à l'outil mais je te conseille plutôt de créer un fichier batch pour chaque tâche (un premier pour le réveil, un second pour l'extinction) et de désigner ces fichiers batch dans les tâches planifiées correspondantes.

La commande pour le réveil général (à mettre dans le .bat ou à utiliser directement) :

wakeonlanbatch.exe /w:*

Et celle pour l'extinction :

wakeonlanbatch.exe /s:*

Bien entendu, tout ceci ne fonctionnera que pour les machines déclarées dans le fichier de configuration. Ce dernier étant partagé avec la version standard (en mode "fenêtre") de mon appli, tu utiliseras au préalable WakeOnLan.exe pour y référencer toutes tes machines. Attention toutefois à ne pas y référencer la machine "maître" qui jouera le chef d'orchestre, sinon elle s'éteindra elle aussi et ne pourra donc pas réveiller les autres le moment venu.

Voilà, j'espère que ça répond à tes interrogations.


Réaction n°155 

par HBruno le 04/05/2010 @ 18:53

Bonjour,

je dois surveiller des machines si elles sont éteintes ou allumées en temps réel et avoir la possiblité de les éteindre à distance, j'ai donc essayé LanAlertCenter, qui répond bien à la surveillance en temps réel mais je ne peut pas envoyer une commande d'extinction ou de fermeture de session. J'ai donc essayé WakeOnLan, très bon soft pour l'envoi de commande vers les machines mais, par contre, il n'y a pas la surveillance en temps réel, à moins de cliquer souvent sur "tester tout". Existerait-il une possibilité de rajouter un ping automatique, comme dans LanAlertCenter, pour les machines déclarées dans WakeOnLan ?

Merci

[réponse de damien, le 04/05/2010 à 20h26]

Ne jouais-tu pas aux LEGO quand tu étais gamin ? ! ;) Hé ben là c'est pareil : utilise la "brique" LanAlertCenter pour détecter les anomalies, couple-la avec la "brique" WakeOnLanBatch (la version ligne de commande de WakeOnLan) en utilisant les "actions"... Tu arriveras au même résultat.

Pour ce qui est de la syntaxe à utiliser pour les actions, je t'invite à faire une recherche rapide dans les réactions des autres utilisateur (et mes réponses) de l'article sur LanAlertCenter, tu y trouveras quelques exemples/explications. Si tu as du mal à trouver les infos nécessaires, n'hésite pas à me recontacter.


Réaction n°154 

par Eric le 30/04/2010 @ 11:39

Bonjour,

je suis tres intéressé par ton programme WakeOnLan, mais je n'ai pas trouvé de squéduleur sur la version Windows.

Dois-je le faire par la version PHP ?

Et encore merci pour ton aide.

Eric.

[réponse de damien, le 30/04/2010 à 12h33]

Désolé mais je n'ai pas tout compris avec ton histoire de "squéduleur"... Tu peux développer ton propos stp ?

PS.: message déplacé dans les réactions à l'article car il n'a pas sans place dans le livre d'or.


Réaction n°153 

par JM33 le 08/03/2010 @ 23:02
Merci pour toutes ces explications.
Je continue dans mes avancées....
Cordialement,
JM

Réaction n°152 

par JM33 le 08/03/2010 @ 19:32

Encore une petite question (la dernière pour ce soir, si, si...)
Est-il possible de réveiller (faire démarrer windows) un ordinateur qui a soit un mot de passe inscrit dans le bios, soit un mot de passe de session.
En fait (je n'ai pas testé) je pense qu'il démarre et s'arrête soit à l'attente du mot de passe bios (comme pour le démarrage manuel) soit à l'attente du mot de passe pour la session. Mais alors comment faire!!! (plus de mots de passe?)
Merci pour tes réponses et bonne soirée.
JM

[réponse de damien, le 08/03/2010 à 19h44]

La technologie WakeOnLan permet en principe de démarrer un PC nécessitant la saisie d'un mot de passe géré par le BIOS (pour l'ouverture de session en revanche, c'est mort). Mais je n'ai encore rien implémenté dans mon soft sur ce sujet... ce n'est pas une de mes priorités.

J'y viendrais probablement mais pas à court terme, n'ayant pas à disposition une machine me permettant de faire des tests.