di FridayChild il 18 ott 2007, 16:15
Innanzitutto chiariamo cosa si intende per Wake on LAN: la possibilita' di riattivare il computer da uno degli stati di risparmio energia (standby, sospensione/ibernazione, spegnimento) inviando attraverso la rete locale un particolare impulso (un singolo pacchetto detto "magic packet" contenente nel payload l'indirizzo fisico della scheda di rete del PC). Perche' funzioni deve essere supportato:
- dal chipset della scheda di rete
- dal BIOS del computer
- nel caso del richiamo dallo standby, anche dal sistema operativo
Normalmente funziona solo all'interno della rete locale (per questo e' detto wake "on LAN") perche' - allo scopo di potere risvegliare anche sistemi che non hanno correntemente assegnato un indirizzo IP, per esempio perche' sono spenti - e' inviato come broadcast su tutto il segmento (e "tirato su" solo dalla macchina che ha l'indirizzo MAC contenuto nel pacchetto: le altre lo ignorano). In genere e per ottime ragioni i router sono impostati per non fare passare il traffico di broadcast da una rete ad un'altra (per ovviare al problema di dovere accendere un PC da remoto si puo' collegarsi all'interfaccia remota del router e fare in modo che sia quest'ultimo a inviare il magic packet sull'interfaccia fronte-LAN, oppure inviare un pacchetto routabile all'indirizzo IP dell'interfaccia WAN del router previa creazione di un'entry statica nella tabella ARP del router stesso in modo che il MAC address da risvegliare sia permanentemente in cache).
Dopo essersi assicurati che il controller Ethernet supporti WOL in genere occorre abilitare la voce "enable wake on LAN" nel BIOS se presente (oppure "wake on PCI" per lo meno se si usa una NIC su bus PCI) ed eventualmente inserire la NIC nella sequenza di boot. Ignora pure i settaggi "wake on ring" che presuppongono una chiamata PSTN ad un modem esterno. Per il wake dallo standby in Windows occorre visualizzare le proprieta' della NIC in gestione periferiche ed attivare nelle proprieta' avanzate la voce "wake on lan/magic packet" o equivalente se presente; inoltre nelle proprieta' di risparmio energia della scheda si deve o deselezionare l'opzione "permetti al sistema di spegnere la periferica" oppure tickare anche l'opzione "permetti alla periferica di interrompere lo standby"; e a questo punto per evitare risvegli indesiderati tickare anche l'opzione "pemetti solo alle workstation amministrative..." che in pratica restringe il tipo di traffico in grado di richiamare il PC dallo standby.
Come programma per il WOL puoi usarne uno qualsiasi dei tanti esistenti; io uso MagicWake e, da remoto, intendo usare l'interfaccia web del mio router (con il firmware moddato, perche' quello originale non consentiva il WOL). Attenzione solo a una cosa: in genere l'indirizzo MAC si indica come xx:xx:xx:xx:xx:xx ma alcuni software WOL richiedono di usare il trattino "-" come separatore al posto dei due punti (che e' poi anche il modo in cui Windows riporta gli indirizzi).
Se poi in Windows hai realizzato un bridge tra piu' connessioni di rete, occhio che il bridge assume un MAC address che e' una variazione di uno dei MAC address delle NIC unite al bridge; per risvegliare il PC questo MAC non va bene, ti ci vuole quello reale della scheda di rete (visualizzabile con il comando ipconfig /all oppure con il comando getmac non prima di avere rimosso dall'eventuale bridge la scheda che ti interessa).
Questo in soldoni e salvo inesattezze (chi volesse integrare/modificare quanto sopra e' il benvenuto)!