View Full Version : Modificare tabella ARP del router per il Wake on LAN
Trial4life
28-05-2019, 00:21
Ciao a tutti,
di recente sono riuscito a impostare correttamente la funzionalità Wake on LAN sul mio PC desktop collegato al modem router tramite cavo ethernet.
Tuttavia, se il PC resta spento per diverse ore, il WoL non funziona più, e sono costretto ad accenderlo manualmente. Dopo qualche ricerca, ho supposto che il problema sia dovuto al fatto che il router svuota la cache ARP dopo qualche ora, e quindi non è più in grado di svegliare il PC, dato che non lo "vede" più.
In questo thread (http://www.networking-forum.com/viewtopic.php?t=17614) ho trovato un utente con lo stesso problema che è riuscito a risolvere modificando manualmente la tabella ARP del router, rendendo di fatto statica l'associazione MAC--IP (come spiegato nel post n°10 della discussione).
Questa soluzione prevede l'utilizzo di telnet per aggiungere manualmente l'associazione statica di cui sopra; tuttavia, se provo a dare il comando telnet per connettermi al mio router, ottengo questo messaggio di errore:
Connessione a 192.168.1.254...Impossibile aprire una connessione con l'host. sulla porta 23: Connessione non riuscita
Dopo altrettante ricerche, scopro che il mio modem (Technicolor TG789vac v2_IAD di Fastweb) blocca di default le connessioni tramite telnet.
Per dare questo permesso bisognerebbe modificare il file di configurazione, ma qui c'è l'ennesimo problema: quando vado ad aprire il file di backup generato dal router (userini.bin), mi accorgo che in realtà è criptato e non posso modificarlo...
Ho quindi cercato, invano, un modo per decriptarlo: tramite OpenSSL, utilizzando diverse chiavi di cifratura (come a0dd1da4242d32424fdffaa0ed0e0f12 o a875e62aa6f1d430dac45fcd0e3bb246), non sono comunque riuscito nell'intento, in quanto ottengo il seguente errore:
10028:error:0606506D:digital envelope routines:EVP_DecryptFinal_ex:wrong final block length:evp_enc.c:518:
Ho fatto lo stesso tentativo, con le stesse chiavi, utilizzando il tool "Config-Crypt-Decrypt-Tch-Modem-Utility-master", ma ottengo un errore "The key is too short or too long", probabilmente perché sto usando una chiave di cifratura non corrispondente a quella del mio router (che non sono riuscito a trovare da nessuna parte).
Mi trovo quindi di fronte a un vicolo cieco... per provare a risolvere il problema del WoL, ho due possibilità:
1) Modificare in qualche altro modo la tabella ARP del router, senza dover dare i permessi per utilizzare telnet;
2) Trovare la chiave di cifratura del mio router.
Sapreste darmi qualche suggerimento per aggirare il router (o qualche strada alternativa per risolvere il problema del WoL)?
Trial4life
28-05-2019, 09:11
Queste sono le impostazioni DHCP del PC desktop nel pannello di configurazione del router.
Non sono riuscito a trovare da nessuna parte la tabella ARP... l'unico modo probabilmente è con telnet.
EDIT: mi ero scordato di specificare che sto cercando di far funzionare il WoL tramite Internet (ovvero da uno smartphone non connesso alla rete locale del PC deskop).
https://i.imgur.com/xDHADVe.png
OUTATIME
28-05-2019, 09:31
EDIT: mi ero scordato di specificare che sto cercando di far funzionare il WoL tramite Internet (ovvero da uno smartphone non connesso alla rete locale del PC deskop).
Ovviamente, visto che il problema è che i router moderni non supportanto il forward di broadcast.
Se ti puo interessare io ho risolto con 40 euro di Raspberry e l'applicazione etherwake
Trial4life
28-05-2019, 10:08
In realtà avevo provato anche ad aprire la porta 9 direttamente all'indirizzo IP del gateway, e nel pannello di configurazione del rourer compariva il nome del modello technicolor, quindi il port forward sul broadcast sembrava aver funzionato.. ma poi il WoL non funzionava neanche in locale.
Ma se riuscissi as impostare un'ARP entrt statica, riuscirei a risolvere anche se il router non supporta il port forward sull'indirizzo di broadcast?
OUTATIME
28-05-2019, 10:28
In realtà avevo provato anche ad aprire la porta 9 direttamente all'indirizzo IP del gateway, e nel pannello di configurazione del rourer compariva il nome del modello technicolor, quindi il port forward sul broadcast sembrava aver funzionato.. ma poi il WoL non funzionava neanche in locale.
Ma se riuscissi as impostare un'ARP entrt statica, riuscirei a risolvere anche se il router non supporta il port forward sull'indirizzo di broadcast?
L'ARP statica serve solo ad associare IP<->MAC. Il problema è che a te non serve sapere che IP ha un determinato MAC, ti serve sapere in che porta dello switch è collegato il MAC che vuoi controllare, ed è un'informazione che tu, a PC spento, non hai. E' per questo che i pacchetti WOL si indirizzano all'IP XXX.XXX.XXX.255, che vuol dire mandarlo in broadcast nella rete, ovvero a TUTTE le porte della LAN.
La cosa che vuoi fare tu, potrebbe forse funzionare fino alla prima volta che manca corrente, ovvero fino a quando il/i tuo/tuoi switch della rete perdono l'informazione della porta in cui è collegato il MAC da accendere.
Come detto sopra, dipende tutto dal tuo router.
Se questo non supporta un forward del pacchetto WOL sulla rete in broadcast, non puoi farci nulla.
Come suggerito, un raspberry credo sia una valida alternativa.
Trial4life
28-05-2019, 13:03
Ma cosa dovrei fare per verificarlo?
E comunque ho ancora un dubbio... io riesco comunque ad accendere il PC in WoW, ma solo entro poche ore dallo spegnimento. Questo non implica che si tratta di un problema di ARP cache e non di broadcast?
OUTATIME
29-05-2019, 09:55
Ma cosa dovrei fare per verificarlo?
Provi a fare una regola di port forward verso un IP di broadcast, ad esempio, se la classe di IP della tua è 192.168.1.X, prova a fare una regola di port forward verso 192.168.1.255
Comunque vedrai che al 99% non te la farà salvare come regola, l'ultimo router che supportava tale opzione l'ho visto 15 anni fa.
E comunque ho ancora un dubbio... io riesco comunque ad accendere il PC in WoW, ma solo entro poche ore dallo spegnimento. Questo non implica che si tratta di un problema di ARP cache e non di broadcast?
Non è l'ARP cache, è la cache dello switch integrato nel router che dopo un po', come ti avevo detto, perde l'informazione riguardante alla porta in cui è collegato un determinato MAC address, quindi il tuo router può anche sapere che l'IP X è associato al MAC address Y, ma di questa informazione non se ne fa nulla, perchè non sa dove fisicamente trovarlo nella rete.
E la situazione potrebbe peggiorare ulteriormente nel caso tu abbia un ulteriore switch collegato in cascata al router.
Torno a ripetere: con un Raspberry se hai un minimo di interesse e conoscenze del mondo Linux (basta sapere cos'è SSH o root, ad esempio) in 10 minuti di setup risolvi il problema.
Trial4life
29-05-2019, 10:01
Ho provato sia a 192.168.255, sia a 192.168.254 (che è i l'indirizzo del gateway)... non mi ha dato nessun messaggio di errore, ma non so come verificare se di fatto le porte sono state aperte o no.
https://i.imgur.com/TFsNEnv.png
Fatto sta che in questa configurazione il WoW non funziona neanche da standby (che in genere ha sempre funzionato)
OUTATIME
29-05-2019, 10:05
Ho provato sia a 192.168.255, sia a 192.168.254 (che è i l'indirizzo del gateway)... non mi ha dato nessun messaggio di errore, ma non so come verificare se di fatto le porte sono state aperte o no.
https://i.imgur.com/TFsNEnv.png
Fatto sta che in questa configurazione il WoW non funziona neanche da standby (che in genere ha sempre funzionato)
Scusa... non so che sezione del router sia questa, ma da quello che posso vedere, hai una regola di port forward verso due IP differenti? E il tuo router te l'ha fatta salvare?
Trial4life
29-05-2019, 10:08
No no scusa se l'immagine era ambigua, ho solo mostrato in uno stesso screen due configurazioni diverse! Ovviamente prima di aggiungere la seconda, ho rimosso quella precedente.
OUTATIME
29-05-2019, 10:11
No no scusa se l'immagine era ambigua, ho solo mostrato in uno stesso screen due configurazioni diverse! Ovviamente prima di aggiungere la seconda, ho rimosso quella precedente.
Ah... OK....
Quindi ti ha fatto salvare 192.168.1.255 ma non funziona?
Evidentemente un bug dell'interfaccia web, in ogni caso immaginavo che non funzionasse.
Trial4life
29-05-2019, 10:22
No non funziona in entrambi i casi..
Trial4life
29-05-2019, 10:26
La cosa che vuoi fare tu, potrebbe forse funzionare fino alla prima volta che manca corrente, ovvero fino a quando il/i tuo/tuoi switch della rete perdono l'informazione della porta in cui è collegato il MAC da accendere.
Non è l'ARP cache, è la cache dello switch integrato nel router che dopo un po', come ti avevo detto, perde l'informazione riguardante alla porta in cui è collegato un determinato MAC address, quindi il tuo router può anche sapere che l'IP X è associato al MAC address Y, ma di questa informazione non se ne fa nulla, perchè non sa dove fisicamente trovarlo nella rete.
Quindi ricapitolando: se trovo un modo per settare l'ARP entry statica, risolverei il problema ma solo se non va mai via la corrente, giusto? Cioè non c'è un timeout per la cache dello switch, come nel caso dell'ARP table?
Perché un'alternativa al raspberry potrebbe essere cambiare il firmware del modem in modo da poterlo sbloccare.
OUTATIME
29-05-2019, 10:42
Quindi ricapitolando: se trovo un modo per settare l'ARP entry statica, risolverei il problema ma solo se non va mai via la corrente, giusto? Cioè non c'è un timeout per la cache dello switch, come nel caso dell'ARP table?
No, lo risolvi esattamente come adesso, cioè non lo risolvi.... Il problema non è far sapere al router che l'IP X è associato al MAC Y, il problema è che la cache dello switch non la puoi bypassare, esisterà sempre, è alla base del concetto di switch. Tu stesso ti sei accorto che per un po' dopo lo spegnimento del PC funziona, semplicemente perchè il router ha due informazioni:
- MAC <-> IP (definito a livello di rete)
- MAC <->PORTA (definito a livello di collegamento)
Agendo sulla ARP table, agisci solo sul primo, sul secondo non credo ci sia modo di agire neppure a livello di switch di fascia enterprise, proprio perchè è una cosa che non ha senso fare ed è contraria al funzionamento delle reti switched stesse.
Se vuoi approfondire:
https://it.wikipedia.org/wiki/Modello_OSI
Perché un'alternativa al raspberry potrebbe essere cambiare il firmware del modem in modo da poterlo sbloccare.
Secondo me è più complicato e rischioso mettersi a giocare con il firmware dello switch
Orazio1938
04-01-2022, 20:40
E' da circa 20 anni che gioco con i Modem/Router e l'unico che permetteva di modificare la ARP table era il TP-Link 1043 (per ADSL).
Ora sono con la fibra di Fastweb (ho 3 contratti) e con nessuno dei moem di Fastweb si può modificare la ARP table.
Anche con il nuovissimo Nexxt non si può fare nulla.
Ho interpellato l'assistenza di Fastweb e l'unico consiglio che mi hanno dato è quello di provare con altri modem !!
Mi sono messo il cuore in pace, ma NON mi sono arreso ed ho trovato il modo di aggirare il problema in modo piuttosto semplice.
Sono entrato nel Bios del PC (con i soliti F1 o Escape o altro alla accensione del PC) a cui intendo accedere da remoto e lo ho configurato per accendersi quando viene alimentato ,sempre che il vostro PC abbia questa funzione.
Ho collegato questo PC ad una presa Smart comandata da remoto (si trovano anche a 20 Euro) e quindi quando accendo la porta a cui è collegato il PC questo si accende ed è possibile accedervi da remoto. Semplice no !
Nella stessa casa in cui ho il PC da accendere da remoto ho anche un NAS che però NON ha questa funzione.
Benissimo, accendo prima il PC e poi da questo accendo il NAS tramite uno dei tanti programmini WOL; essendo sulla stessa rete NON vi è bisogno di ARP Table !!
Provate anche Voi e sappiatemi dire.
https://img.huffingtonpost.com/asset/60d57d50410000982b81770e.jpg
https://www.qnap.com/it-it/product/qwu-100
Ok sicuramente un po costoso ma puoi farlo anche in casa con un raspberry.
Qsecofr01
06-09-2023, 10:28
Se ti puo interessare io ho risolto con 40 euro di Raspberry e l'applicazione etherwake
Sono un newbie di Raspberry, mi sono procurato un Pi Zero W solo per gestire il WOL, potresti darmi qualche dritta per come installare eterwake su Raspberry e poi come richiamarlo da un PC Windows per fare il WOL di un PC remoto (che è nella stessa rete del Raspberry naturalmente)?
Grazie mille.
(Scusate il necroposting)
Pierzucchi
06-09-2023, 11:07
La soluzione più semplice è acquistare un Alexa basico e poi utilizzare la relativa Skill per il Wake on Lan.
Penso ci sia l'omologa anche per Google Home.
Sono un newbie di Raspberry, mi sono procurato un Pi Zero W solo per gestire il WOL, potresti darmi qualche dritta per come installare eterwake su Raspberry e poi come richiamarlo da un PC Windows per fare il WOL di un PC remoto (che è nella stessa rete del Raspberry naturalmente)?
Grazie mille.
(Scusate il necroposting)
https://www.instructables.com/Raspberry-Pi-As-Wake-on-LAN-Server/
oppure
http://www.iz0kba.it/programmazione/raspberry/wake-on-lan/
Qsecofr01
06-09-2023, 16:39
https://www.instructables.com/Raspberry-Pi-As-Wake-on-LAN-Server/
oppure
http://www.iz0kba.it/programmazione/raspberry/wake-on-lan/
Grazie per i link.
Però non capisco perchè nel tutorial del primo link dice che sul Raspberry servono due interfacce LAN, una Ethernet e una Wifi.
Nel secondo invece dice che è sufficiente una sola interfaccia (Wifi o Eth) e che è obbligatorio che il PC da attivare sia collegato in Eth e non in Wifi (e il mio PC da attivare soddisfa il requisito in quanto è collegato in Eth).
Ma il mio Pi Zero W che ha solo Wifi va bene per eseguire etherwake ? Grazie.
Non è necessario avere due schede di rete, ne basta anche solo una. Nella guida diceva che usava il wifi per l'accesso a internet e la scheda fisica per la rete. Ma non ti cambia nulla a te.
Anche perché via WIFI non funziona. Mi spiego meglio: tu dal tuo pc connesso via wifi PUOI mandare il magic packet per accendere un pc connesso in rete (questo perchè il collegamento fisico è presente) mentre via wifi, se il pc è spento, non sei collegato ad alcuna wifi..
Qsecofr01
07-09-2023, 19:46
Chiarissimo, grazie.
OUTATIME
13-09-2023, 10:34
Sono un newbie di Raspberry, mi sono procurato un Pi Zero W solo per gestire il WOL, potresti darmi qualche dritta per come installare eterwake su Raspberry e poi come richiamarlo da un PC Windows per fare il WOL di un PC remoto (che è nella stessa rete del Raspberry naturalmente)?
Grazie mille.
(Scusate il necroposting)
E' un po' che non uso Raspberry, vista la penuria di forniture sono passato ad Orange Pi, ma la minestra non cambia, essendo basato su Debian anche questo.
Fatta questa premessa, mi sembra di ricordare che etherwake sia deprecato dai repository, adesso su Orange Pi ho scaricato wakeonlan, che si usa semplicemente con il comando wakeonlan seguito dal mac address del dispositivo da risvegliare. Poi ai tempi d'oro avevo pure installato apache e creato un'interfaccia web con il tasto da premere per il wake on lan... Bei tempi.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.