Come configurare DuckDNS su Raspberry Pi
La maggior parte degli abbonamenti ADSL domestici non prevedono l’assegnazione di un IP statico ma utilizzando un servizio di DDNS (Dynamic Domain Name System) è possibile aggiornare automaticamente un nome di dominio con il nostro indirizzo IP esterno dinamico. I motivi per cui potresti aver bisogno di un nome host DDNS possono essere tanti, uno dei più comuni è la creazione di un server VPN. In questa guida, spiegherò come configurare un DDNS su un Raspberry Pi attraverso il servizio gratuito fornito da DuckDNS.
Prima di procedere con la guida di installazione, assicuriamoci di aver creato un account sul sito https://www.duckdns.org. Una volta completata la registrazione, ci verrà attribuito un token ed in più sarà possibile generare uno o più nomi di dominio.
Ora non ci resta che collegarci in SSH sul nostro Raspberry Pi e, una volta loggati, andremo a creare una cartella che conterrà il nostro script.
Questo script si occuperà di comunicare a DuckDNS, il nostro attuale indirizzo ip esterno.
Per cui digitiamo:
mkdir script
cd script
mkdir log
nano DuckDNS_update.sh
e riportiamo quanto segue:
echo url="https://www.duckdns.org/update?domains=[IL_TUO_DOMINIO]&token=[IL_TUO_TOKEN]&ip=" | curl -k -o ~/script/log/DuckDNS.log -K -
Ovviamente sostituiamo le voci [IL_TUO_DOMINIO]
con il nome di dominio creato su DuckDNS (ad esempio se il nome di dominio che ci è stato assegnato è http://pincopallo.duckdns.org, riportiamo semplicemente la voce pincopallo) e [IL_TUO_TOKEN]
con il token che ci è stato dato.
Una volta completata la modifica dello script con i nostri dati, possiamo chiudere il file digitando CRTL+X
dopo di che digitiamo Y
o S
(a seconda della lingua impostata) ed infine premiamo il tasto ENTER
per confermare.
Ora dobbiamo modificare i permessi allo script appena creato ed in seguito lo andremo ad aggiungere a crontab per programmare l’esecuzione di questo script ogni cinque minuti. Crontab è un task scheduler che automatizza determinati comandi.
chmod 700 DuckDNS_update.sh
crontab -e
ed incolliamo quanto segue alla fine del file
*/5 * * * * ~/script/DuckDNS_update.sh >/dev/null 2>&1
Una volta incollato il comando, possiamo chiudere il file digitando CRTL+X
dopo di che digitiamo Y
o S
(a seconda della lingua impostata) ed infine premiamo il tasto ENTER
per confermare.
Lo script verrà ora eseguito ogni cinque minuti, ma se volessimo testarlo si da subito ci basterà eseguire i seguenti comandi.
./DuckDNS_update.sh
cat log/DuckDNS.log
Se visualizzeremo nel file di log il messaggio OK dopo l’esecuzione dello script, vorrà dire che lo script ha funzionato correttamente. Se invece noteremo il messaggio KO, vorrà dire che c’è qualche errore nel nostro script o non sono state date le autorizzazioni appropriate allo script.
Buon Divertimento!
[…] un servizio di DDNS che ci consenta di raggiungere la nostra rete tramite un nome di dominio (qui una guida come utilizzare DuckDNS) e, a sua volta, aver girato le porte necessarie verso il nostro […]
ciao ,
dopo ./DuckDNS_update.sh
ho ricevuto il messagio
url: (3) bad range in URL position 48:
https://www.duckdns.org/update?domains=%5BIL_MIO_DOMINIO%5D&token=%5BIL_MIO_TOKEN%5D&ip=
grazie
Ciao Denis, se hai fatto copia e incolla prova a cancellare e ridigitare le virgolette (“”)… a volte capita che prende un simbolo simile ma il rasp non lo accetta.
Buongiorno,
Risolto, era un problemino con ‘[‘
grazie
Denis
[…] un servizio di DDNS che ci consenta di raggiungere la nostra rete tramite un nome di dominio (qui una guida come utilizzare DuckDNS) e, a sua volta, aver girato le porte necessarie verso il nostro […]