Réveillez votre PC à distance avec WakeOnLan !

Magazine
Marque
Linux Pratique
Numéro
66
Mois de parution
juillet 2011
Domaines


Résumé

Pouvoir démarrer son PC à distance et accéder à toutes ses données personnelles sans passer par le cloud, quoi de mieux ? Ceci est possible grâce à WakeOnLan, un protocole et un programme qui permettent de démarrer un PC à distance, ou de le réveiller quand celui-ci est en mode veille. Bien que l'ordinateur soit arrêté, la carte réseau encore sous tension reçoit un paquet réseau « magique » et à la réception de ce paquet, elle démarrera l'ordinateur. Nous verrons ici plus particulièrement comment réveiller un PC en mode veille (« suspend to RAM ») depuis Internet.


Body

Paquets à installer pour cet article :

- Debian/Ubuntu : ethtool, tcpdump, wakeonlan.

- Fedora/CentOS : ethtool, tcpdump, wol.

1. Préparatifs sur le PC

Tout d'abord, regardons si notre matériel supporte le WakeOnLan. Il faut premièrement regarder dans le BIOS si la fonction WakeOnLan est disponible et l'activer. En général, elle est disponible dans le menu « Power Management Setup ».

Une fois le PC démarré, vérifions que la carte réseau supporte bien le WakeOnLan. Dans un shell root ou avec sudo :

# ethtool eth0 | grep Wake-on

Supports Wake-on: pg

Wake-on: g

Sans « g » dans la ligne Supports Wake-on, inutile d'aller plus loin : votre carte réseau ne supporte pas le WakeOnLan. Activons le support du paquet magique WakeOnLan :

# ethtool -s eth0 wol g

Nous allons maintenant ajouter la carte réseau dans la liste des périphériques aptes à sortir le PC du mode veille. Identifions la carte réseau sur le bus PCI :

lspci | grep Ethernet

05:00.5 Ethernet controller: JMicron Technologies, Inc. JMC260 PCI Express Fast Ethernet (rev 02)

Notre carte réseau est ici le 5ème périphérique sur le bus PCI. La liste des périphériques autorisés à sortir le PC du mode de veille est une entrée dans le système de fichiers virtuel /proc/ :

cat /proc/acpi/wakeup

FRWR S3 disabled pci:0000:03:00.0

ARPT S3 disabled pci:0000:04:00.0

GIGE S3 disabled pci:0000:05:00.0

...

On voit ici que le 5ème périphérique sur le bus PCI correspond à une entrée GIGE, pour Gigabit Ethernet. Dans un shell root ou avec sudo, éditons cette entrée :

# echo -n GIGE > /proc/acpi/wakeup

On automatisera le lancement des réglages précédents au démarrage en les ajoutant à /etc/rc.local :

# cat << ma_fin >> /etc/rc.local

echo Activating WakeOnLAN

ethtool -s eth0 wol g

echo -n GIGE > /proc/acpi/wakeup

ma_fin

2. Test et mise en route

Testons maintenant l'envoi d'un paquet WakeOnLan depuis Internet. Tout d'abord, assurons-nous d'avoir ouvert le port UDP 7 sur notre routeur et d'avoir redirigé ce port vers notre PC avec la translation d'adresse idoine.

Le site depicus.com possède un formulaire permettant l'envoi de paquets WakeOnLan à l'adresse suivante : http://www.depicus.com/wake-on-lan/woli.aspx (ou ce raccourci : ur1.ca/41p8l). Sélectionnez 255.255.255.255 comme masque de sous-réseau et 7 comme port UDP.

Avant de mettre le PC en veille, regardons avec l'analyseur de réseau tcpdump que le paquet WakeOnLan est bien reçu. Dans un shell root ou avec sudo :

rosa:~# tcpdump udp and port 7

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes

10:09:29.211117 IP mail.digitalwired.net.4419 > rosa.xen.prgmr.com.echo: UDP, length 102

Si tout fonctionne, c'est maintenant le moment décisif : mettez votre PC en veille et essayez de le redémarrer à distance...

Si le PC ne bouge pas, il faut absolument être sûr que le paquet est bien arrivé jusqu'à votre ordinateur ; pour cela, les diodes de votre carte Ethernet ou de votre switch doivent clignoter lors de la transmission du paquet.

En dehors du site depicus.com, il est bien sûr possible d'installer un programme envoyant les paquets WakeOnLan sur un serveur distant, depuis votre ordinateur portable. Sur une machine Debian/Ubuntu avec le paquet wakeonlan installé, l'envoi du paquet magique prendra ainsi la forme suivante :

wakeonlan -i 173.245.73.65 -p 7 00:22:41:30:c9:04

Sending magic packet to 173.245.73.65:7 with 00:22:41:30:c9:04

Sur une machine Red Hat/Fedora avec le paquet wol installé, l'envoi du paquet magique prendra la forme :

wol --host 173.245.73.65 --port 7 00:22:41:30:c9:04

On peut même envoyer des paquets WakeOnLan depuis son smartphone Symbian/Nokia, iPhone ou Android. Alors bon réveil !

 



Articles qui pourraient vous intéresser...

Générer et manipuler des images ISO

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Quand bien même leur usage s’est quelque peu atténué au profit d’autres supports de stockage de masse depuis plusieurs années, les CD-ROM et autres DVD-ROM ont toujours une utilité en 2020 : stockage de données, création de disques bootables (pour distributions GNU/Linux entre autres), disques multimédias... S’il est vrai que sa durée de vie a été surestimée à une époque (peut-être pour favoriser son utilisation), la bonne vieille galette n’est pas encore morte, et il lui reste encore de beaux jours à vivre.

Gérez vos projets Git en mode graphique avec GitKraken

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Je vous ai précédemment présenté GitLab [0], une forge logicielle utilisant Git vous permettant une gestion globale de vos projets en équipe. Comme nous l’avions vu, une connaissance minimale de Git était nécessaire pour l’utilisation de GitLab. Certains de vos collaborateurs ne sont peut-être pas à l’aise avec la ligne de commandes, ne veulent tout simplement pas l’utiliser ou encore ne veulent pas apprendre la syntaxe des commandes Git. GitKraken [1] est fait pour eux. Il leur permettra de réaliser toutes les opérations Git à l’aide d’une interface graphique.

Le DevOps en pratique

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Aujourd’hui, le terme DevOps est au cœur de la transformation digitale. En effet, lorsqu’on évoque l’agilité dans le cycle de vie de développement logiciel, on est amené à pratiquer des méthodologies permettant d’accélérer d’une part le processus de développement et de fiabiliser la production logicielle d’un autre côté. Parmi ces méthodologies (Scrum, Kanban…), le DevOps est certainement celle qui a été adopté par la plupart des entreprises ayant comme activité principale ou annexe, la digitalisation de leur système d’information pour faire face au défi que représente l’essor des technologies numériques. Dans cet article, nous ferons un premier tour d’horizon de la partie outillage du DevOps. Il existe une panoplie d’outils et il est impossible de les évoquer tous dans un seul article, car chaque outil nécessiterait un ouvrage à part entière.

Créez vos clusters avec Elasticsearch

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Vous êtes-vous déjà demandé comment Facebook et Google gèrent leurs immenses masses de données tout en fournissant des services rapides ? Quelle serait votre solution pour gérer une base de données avec un trafic de données abondant ? Voici quelques éléments de réponse à ces questions.

Recréer un ancien environnement à l’aide de Docker

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
113
Mois de parution
mars 2021
Domaines
Résumé

Docker est un mot à la mode qu’on associe volontiers à microservices et autre Cloud. Cependant, nous allons voir ici qu’il peut aussi rendre des « macroservices » :-) dans un cadre tout à fait différent, voire contraire : celui de la maintenance logicielle !