2009/Nodos/WAKE ON/Documentación

De Hackmeeting

Revisión a fecha de 19:41 21 oct 2009; Alberto (Discutir | contribuciones)
(dif) ← Revisión anterior | Ver revisión actual (dif) | Revisión siguiente → (dif)

Tabla de contenidos

WAKE ON *


1.- INTRODUCCION

El término Wake On * quiere hacer referencia a los distintos modos que existen para cambiar el estado de una máquina

conectada a la red eléctrica por medio de una señal externa enviada remotamente sin intervenir fisicamente con la misma. Ésto se puede conseguir si la máquina está conectada a una red o, porque no, conectada a un terminal teléfonico.

2.- ¿Para que es útil?

Alguna vez me han preguntado, ¿y para que quieres hacer eso?. Bueno, pues existen varios motivos por la que quizás sea bueno conocer

como realizar un Encendido Remoto. Por ejemplo, supongamos que quiere acceder a datos alojados en una máquina que esta apagada y preparada con Wake On *, pues tan solo tenemos que enviarle la señal de que queremos que despierte y acceder a él a través de ssh, ftp o como mas nos guste, siempre y cuando lo hayamos dejado configurado para tal fin. ¿Y no sería mejor dejarlo encendido todo el tiempo? Depende del uso que le des, sin embargo, quizás es más importante si lo usas habitualmente como servidor, ya que si por algun motivo la máquina se apaga, (un corte de luz, algún manazas, ...). Siempre que tengamos configurado el Wake On * podremos despertar a la máquina para que siga cumpliendo su función, siempre y cuando tenga alimentación eléctrica. Y si esto no os convence, puedo decir que me gusta ahorrar energía y prefiero apagarlo y encenderlo cuando me apetezca y esté donde esté.

3.- Tipos de RWU (Remote Wake Up)

La manera con la que he conseguido despertar la máquina fue con un simple Wake On Lan (Desde dentro la red local dónde se encuentra la máquina).

Y estuve intentando el Wake On Wan pero no disponia del router adecuado o no supe como configurarlo(Desde fuera de la red local dónde se encuentra la máquina). Actualmente con la redes Wifi se ha empezado a integrar el soporte para el Wake On WirelessLan, lamentablemente no he podido probarlo. Quizás lo más primario fuera el Wake on Modem cuyo funcionamiento es muy parecido al Wake On Lan. Y uno de los tipos en los que me he puesto a investigar es el Wake On Ring, en el que con una llamada telefónica puedes despertar a tu máquina.

4.-Cómo funciona

Normalmente cuando se apaga una máquina esta se queda conectada a la corriente, como así lo indican los leds que pueda haber en la placa base, pero todos los dispositivos se

quedan "durmiendo", es decir no esperan que se les pueda llamar por lo que, por mucho que les intentes mandar datos, éstos se van a perder.

Una vez se configura la BIOS y la tarjeta de red para que esten atentos para ver si les llega un mensaje, cuando apagas el ordenador, éste sigue enviando energía a la tarjeta de red para que pueda leer paquetes entrantes.

Si a dicha tarjeta de red le llega un mensaje en la que se repita 16 veces su dirección física precedida por 6 bytes de unos (en hexadecimal FF FF FF FF FF FF), ésta hara lo necesario para encender el ordenador. Este paquete ha sido bautizado como Paquete Mágico, dicho paquete se envía por broadcast a toda la red por lo que no es necesaria una IP para enviar el paquete dentro de una LAN, aunque se puede especificar si el router tiene rutas estáticas. Si lo que deseamos es hacerlo desde fuera de la red local, necesitaremos configurar el router para que si le llega un mensaje así lo enrute a broadcast por la red interna o a una ip estática si tiene configurada la tabla ARP.

Normalmente se suelen usar los puertos UDP 0, 7 o 9.

--- Sleep Proxy Service (http://en.wikipedia.org/wiki/Sleep_Proxy_Service)


5.- Seguridad

Estos paquetes pueden ser capturados facilmente por cualquiera que esté escuchando en la red, por lo tanto algunas tarjetas soportan un método denominado "Secure On",

que permite al usuario almacenar una contraseña en el dispositivo de 6 bytes de longitud, (hex XX XX XX XX XX XX), si se implementa el usuario tendrá que enviar el paquete mágico con esos 6 bytes añadidos al final. De esta manera solo si la MAC y la contraseña son correctas se encenderá el ordenador.

Encriptación TLS: la acabo de descubrir por lo que puedo contaros mucho sobre ella.

6.- Requisitos mínimos

BIOS compatible con encendido a través de dispositivos LAN. Las placas madres antiguas tienen un conector WAKEUP-LINK que debe ser conectado a la tarjeta de red a través de un cable de 3-pin especial; sin embargo, los sistemas que soportan la norma PCI 2.2 en conjunto con una placa de red PCI compatible normalmente no requieren un cable WoL ya que la energía necesaria es provista por el bus PCI.

Los computadores portatiles con el chipset Intel 3945 o posterior (con soporte BIOS) permiten usar el estandar usando wireless (IEEE 802.11). Esto es llamado Wake on Wireless LAN (WoWLAN).

Tarjeta Ethernet, Wireless o Modem (según caracteristicas de BIOS)

Software para configuración del dispositivo y envío de la señal. (etherwake, ethtool).

7.- How to

Supongamos que tenemos la máquina y que la placa base soporta WOL.

Entramos a la BIOS y la configuramos, suele estar en Advances Power Options o en alguna pestaña relacionada con la energía.

Luego si estamos en linux descargamos la herramienta ethtool:

ejecutamos:

#ethtool DEV_NAME

y miramos la opcion wake-on, si esta a d la cambiamos asi por uno de estos valores, lo más común es la g:

#ethtool -s wol p|u|m|b|a|g|s|d... DEV_NAME
   Set Wake-on-LAN options. Not all devices support this. The argument to this option is a string of characters specifying which options to enable.
   
       p
           Wake on phy activity 
       u
           Wake on unicast messages 
       m
           Wake on multicast messages 
       b
           Wake on broadcast messages 
       a
           Wake on ARP 
       g
           Wake on MagicPacket(tm) 
       s
           Enable SecureOn(tm) password for MagicPacket(tm) 
       d
           Disable (wake on nothing). This option clears all previous options. 

Y ya tenemos configurado nuestro Wake on Lan.

Obtenemos la MAC ejecutando ifconfig y ya podemos apagar el ordenador, sin desconectarlo de la corriente puesto que tiene que alimentar a la tarjeta de red.

Desde otro equipo dentro de la red local, necesitamos tener etherwake p.e.

y ejecutar:

#etherwake  00:11:22:33:44:55

Usage:

 etherwake -u
 usage: etherwake [-i <ifname>] [-p aa:bb:cc:dd[:ee:ff]] 00:11:22:33:44:55
 
       This program generates and transmits a Wake-On-LAN (WOL)
       "Magic Packet", used for restarting machines that have been
       soft-powered-down (ACPI D3-warm state).
       It currently generates the standard AMD Magic Packet format, with
       an optional password appended.

       The single required parameter is the Ethernet MAC (station) address
       of the machine to wake or a host ID with known NSS 'ethers' entry.
       The MAC address may be found with the 'arp' program while the target
       machine is awake.

   	Options:
	 	-b	Send wake-up packet to the broadcast address.
	 	-D	Increase the debug level.
	 	-i ifname	Use interface IFNAME instead of the default 'eth0'.
	 	-p <pw>		Append the four or six byte password PW to the packet.
					A password is only required for a few adapter types.
					The password may be specified in ethernet hex format
					or dotted decimal (Internet address)
		-p 00:22:44:66:88:aa
		-p 192.168.1.1


Y con esto deberia bastar para encender el ordenador desde dentro de al Lan.

--Alberto 21:38 21 oct 2009 (CEST)

m i b u z o n d e m a i l s @ g m a i l . c o m

Herramientas personales
wiki-navigation
project-navigation