test
WAKE ON LAN

Définition : le but est d'allumer un ordinateur Windows XP à distance.

Description : Nous utiliserons la fonctionalité Wake-on-LAN intégrée dans la carte Ethernet, le BIOS et le pilote Windows de la carte réseau dans le but de rallumer à distance un ordinateur à partir d'un des deux états suivants : 1) arrêt complet ou 2) en veille. Le Bios active l'alimentation du PC quand la carte réseau indique qu'elle a recu une trame particulière applelée "Magic packet" qui contient son adresse MAC

Mise en oeuvre en 3 étapes :
 1.  configuraton du BIOS (et pour certains modèles d'ordinateur : les propriétés de la carte Ethernet sous Windows)
 2.  
utilisation d'un logiciel capable d'envoyer le "Magic packet"
 3.  configuration du pilote windows de la carte réseau pour la gestion du mode veille

Si vous passez directement à la pratique, cliquer ici

Un peu de théorie
Le Wake-On-Lan existe en trois "versions" :
  • Le Wake-On-Lan (WOL) désigne l'allumage à distance d'une machine via son interface Ethernet (ieee 802.3)
  • Le Wake-On-Wan (WOW) désigne l'allumage à distance via internet (une trame UDP/IP encapsule le "magic packet" pour le router vers la carte Ethernet)
  • Le Wireless Wake-On-Lan (WoWLAN) désigne l'allumage à distance d'une machine via son interface WIFI (ieee 802.11b/g & WMM)
Depuis la version PCI 2.2, le bus PCI gère des signaux PME (Power Management Events), ce qui permet à la carte Ethernet de "réveiller" l'alimentation ATX du PC.
Dans certains cas, la carte Ethernet doit être configurée pour accepter cette fonction : cela ne peut se faire que depuis Windows ("Propriétés" de la carte réseau).
La carte réseau est à l'écoute d'un paquet spécial, appelé
magic packet , qui est envoyé en broadcast et qui contient dans le champ "data" les octets FF FF FF FF FF FF, suivis de son adresse MAC répétée 16 fois (soit 7x16=112 octets).

Cette trame est donc une trame broadcast de niveau 2, ce qui signifie qu'elle ne traverse normallement pas les VLAN ou les routeurs... sauf si elle est encapsulée dans un datagramme UDP ciblant le réseau IP de destination (ca n'a même pas besoin d'être l'adresse IP réelle de la machine ciblée)... Dans ce cas, cette encapsulation ne sert qu'à atteindre le routeur de destination..

Elle est généralement encapsulée dans une entête udp (port 0, 7 ou 9); dans ce cas, le n° de port et l'adresse IP qu'on donne sont "bidons", puisqu'en fait ils ne sont pas lus par la couche réseau de l'ordinateur destinataire. (Attention quand même, car certains switch de niveau 3 surveillent la correspondance ("binding")  ip<=>mac)



1. Configuration du BIOS

Si le BIOS le supporte (ce n'est pas toujours le cas!), il faut activer l' option adéquate. Malheureusement, cette option peut prendre de nombreuses dénomination différentes!

Chercher et activer ("[Enabled]") dans la partie "Gestion d'énergie" ("Power Management") une option appelée :
note 1 : Certaines options "prometeuses" ne fonctionnent pas toujours. Exemple : "Wake on PME" (voir : source intel)
note 2 : Certaines cartes nécessitent d'être en plus configurées dans Windows XP; par exemple, chercher dans "Propriétés" de la carte une option :  "Enable PME."

note 3 : Sur certaines machines, il est possible que la configuration indiquée au chapitre 3 soit nécessaire.


A ce stade, le wake-on-lan fonctionne; à condition que l'ordinateur soit éteint. (eg. pas en veille)

Pour le tester; passons à l'étape suivante :


2. Utilisation d'un logiciel capable d'envoyer le "Magic packet"


Télécharger par exemple les logiciels (il en existe d'autres !!) : http://www.laboratoire-microsoft.org/logiciels/10890/ ou http://depicus.com/wake-on-lan/wake-on-lan-gui.aspx

Nous devons dans un premier temps récupérer l'adresse MAC de la machine qui devra être allumée à distance :

Pour cela :
   -   faire un ping vers la machine

wol_3.jpg (Pour les techniciens : cela force l'ordinateur à faire un requête ARP qui permet à l'ordinateur d'obtenir l'adresse MAC correspondant à cette adresse IP)
Puis, immédiatement après :

   -   faire un "arp -a" 
wol_4.jpg  ...et relevez l'adresse MAC qui vous interresse
Sous Windows :

Utiliser le logiciel "WakeOnLanGUI" pour envoyer le "Magic packet" vers l'adresse MAC cible


wol_5.jpg Vous aurez compris que la valeur donnée à "Internet Adress", "Subnet Mask" et "Remote Port Number" est d'une importance toute relative...c'est-à-dire aucune si la trame n'a pas besoin d'être routée; si la trame doit être routée, il faut juste s'assurer que le réseau ciblé par "internet adress" et "subnet mask" soit celui du routeur de destination.
Sous Linux :

Utiliser le script "wakeonlan" éventuellement complété du frontend "gwakeonlan"





3. Configuration du pilote windows de la carte réseau

Ouvrir le "Gestionnaire de périphérique", clic droit sur la "carte réseau", puis "Propriétés"



Configurer l'onglet  "Gestion de l'alimentation"

ces options ne sont pas très claires, il faut parfois tatoner un peu. L'idée, c'est que la carte Ethernet doit rester alimentée pendant le mode veille.
wol_1
Configurer l'onglet  "Avancé"

Cet onglet est parfois fondamental, "magic packet" est l'option qui marche le mieux.

On peut y trouver aussi les options suivantes :

   - "Enable PME'
   -
   -  (...)
wol_2



Pourquoi le WAKE ON LAN ne fonctionne-t-il pas toujours ?
How reliable is Wake on Lan (if configured correctly)?
Le Wake-On-Lan ne fonctionne pas toujours ... et la raison n'est pas évidente à mettre en évidence.

Dans un "petit réseau" d'une trentaine de machine, il y a peu de problèmes; mais dans un réseau de plusieurs centaines de machines, un phénomène étrange se produit; petit à petit, le pourcentage de machines qui réagissent au "paquets magiques" se réduit, bien qu'on aie pas touché à la configuration.

Dans un certains nombre de cas : les cartes réseaux dépendantes de Windows, cela semble lié à des mises à jour, mais ce n'est le cas le plus courant.

Dans les autres cas, mystère !!

Un problème connu et répertorié : si la connexion Ethernet se met à l'état down pendant la période d'arrêt du pc (exemple switch redémarré), le wol avortera tant que le pc n'aura pas été rallumé et éteint manuellement. Ceci n'explique pas tout : par exemple, dans une même salle de 20 pc, reliés aux même switch, 5 se rallument et pas les 15 autres.

Une piste cependant : le dysfocntionnement du wol semble généralement s'accompagner du dysfonctionnement simultané de la mise en route programmée du bios. Le problème semble donc se situer dans la couche PME du bios; mais pas d'un bios en particulier : de tous les bios ! Il y aurai donc un bug majeur dans les focntions PME ? où est-ce lié aux alimentations ? des pannes ou des perturbations électriques pourraient-elles expliquer ces dysfonctionnements ?

Certaines personnes rapportent que quand on laisse un PC éteint pendant une période inhabitellement longue, le wol ne fonctionne plus; si on le relance manuellement, puis on l'éteint, le wol fonctionne à nouveau; cela ressemble à un problème d'électronique.

Mettre le paramètres "Restore on AC power loss"=on semble parfois résoudre le problème.

Autre piste = les fonctions d'économie d'énergie.

Les PC sous Linux semblent poser moins de problèmes ?

Parfois, le pc s'allume au bout de la 10ème tentative !!

On peut provoquer la panne en faisant plusieurs cycle marche/arrêt à la suite.