Se hai un router con firmware DD-WRT, potresti aver riscontrato problemi di connessione a Internet che richiedono un riavvio manuale per essere risolti. Con un semplice script, puoi automatizzare questo processo: il router controllerà periodicamente la connessione e si riavvierà automaticamente se Internet non è disponibile. In questa guida, ti spiegheremo come implementarlo passo dopo passo.

Come Funziona lo Script:
Lo script esegue un controllo regolare della connessione a Internet attraverso un ping al server DNS di Google (8.8.8.8). Se il ping fallisce per un certo numero di tentativi, lo script riavvia automaticamente il router. Dopo il riavvio, attende un periodo di tempo prima di riprendere i controlli per evitare riavvii continui.
Le principali funzioni dello script sono:
- Monitoraggio della connessione: Pinga periodicamente l’IP 8.8.8.8 per verificare la presenza di Internet.
- Rilevamento di problemi: Se il ping non riceve risposta per un numero specificato di tentativi, lo script considera la connessione persa.
- Riavvio automatico: In caso di connessione persa, il router viene riavviato.
- Intervallo di attesa post-riavvio: Dopo un riavvio, lo script aspetta un periodo di tempo per evitare loop di riavvio continuo.
- Aggiunto
grep "64 bytes"
: Questo verifica se il ping ha ricevuto una risposta valida.Evita falsi positivi dovuti a messaggi di errore del ping.
Script per il Riavvio Automatico
Copia e incolla il seguente script nella sezione <<Save Startup>> di DD-WRT:
#!/bin/sh
IP_TEST="8.8.8.8"
PING_COUNT=3
INTERVAL=60
REBOOT_WAIT=300
while true; do
if ping -c $PING_COUNT $IP_TEST | grep "64 bytes" > /dev/null; then
echo "$(date): Connessione OK"
else
echo "$(date): Connessione persa! Riavvio router..."
reboot
sleep $REBOOT_WAIT
fi
sleep $INTERVAL
done &
Accedi all’interfaccia DD-WRT:
Apri il browser e vai all’indirizzo IP del tuo router (di solito 192.168.1.1
) oppure quello modificato da voi su DDWRT. Effettua il login con le tue credenziali. Vai su “Administration” > “Commands” Incolla lo script nella sezione <<Commands>>. Clicca su <<Save Startup>> per salvare lo script in modo che venga eseguito a ogni avvio.


Riavvia il router Vai su <<Administration>> > <<Management>> e clicca su <<Reboot Router>>. Testa il funzionamento disconnetti temporaneamente il cavo WAN o disattiva la connessione Internet per verificare se il router si riavvia automaticamente.
Vantaggi di Questo Metodo
✅ Automazione totale: Non dovrai più riavviare manualmente il router quando Internet smette di funzionare. ✅ Funzionamento continuo: Lo script lavora in background e mantiene il router sempre online. ✅ Facilmente personalizzabile: Puoi modificare i parametri di ping e intervalli di attesa in base alle tue esigenze. ✅ Compatibile con tutti i router DD-WRT: Lo script funziona su qualsiasi dispositivo con DD-WRT installato.
Ulteriori informazioni:
Grazie a questo semplice script, puoi garantire che il tuo router DD-WRT si riavvii automaticamente in caso di problemi di connessione. Questo metodo è particolarmente utile per chi ha router remoti o vuole evitare di dover intervenire manualmente ogni volta che la connessione cade. Se vuoi migliorare ulteriormente il sistema, puoi aggiungere log o notifiche per tenere traccia degli eventi.