TAGS CLOUD
Incrementa dimensioniDecrementa dimensioni
IP da dinamici a statici in un attimo
La guida per sfruttare un servizio di Dynamic DNS e ottenere un indirizzo di rete fisso, indispensabile per essere sempre raggiungibile “online”, senza pagare soldi aggiuntivi al provider
(pagina 1 di 2)
A ogni nuova connessione a Internet, il nostro provider ci assegna automaticamente un indirizzo di rete diverso, i cosiddetti IP dinamici. Ora, se da un lato è vero che questo comportamento non ha nessuna controindicazione per la normale navigazione, dall'altro accade esattamente il contrario, in particolare quando bisogna offrire qualche tipo di servizio, ad esempio, un sito web. In questi casi, affinché gli utenti possano accedere in ogni momento al sito, è fondamentale che l'indirizzo IP da utilizzare sia sempre lo stesso, cioè statico. In genere, tutti i provider offrono la possibilità di acquistare (abitudine molto diffusa tra gli utenti che dispongono di una connessione ADSL) un indirizzo IP fisso, ovviamente, solo dietro il pagamento di una somma di denaro aggiuntiva. Ma questa non è l'unica soluzione. Utilizzando un sevizio di Dynamic DNS, è possibile “trasformare” gli indirizzi dinamici in statici e, soprattutto, in modo completamente gratuito. Ma, prima di addentrarci nella parte pratica, ecco un po' di teoria per scoprire cosa c'è dietro al sistema che consente ai computer di individuarsi e riconoscersi in rete, Internet compresa, ovvero il protocollo DNS.
Una questione di nomi
Il mondo informatico è governato dai numeri: tutti i dati e le informazioni sono espressi in sequenze di bit e byte, in quanto l'hardware è capace di distinguere (ed operare) numeri e non entità più complesse come una lettera o una frase. Le comunicazioni IPv4, che sono alla base di Internet, seguono la stessa rigida regola. Ogni singolo pacchetto di rete contiene due numeri a 32 bit: uno indica l'indirizzo del mittente, l'altro quello del destinatario. Generalmente tale numero viene scomposto in quattro parti, ognuna da 8 bit e viene rappresentato in una forma numerica più semplice, gli indirizzi IP, ad esempio 88.212.211.34. Specificando un indirizzo come questo nel browser o in qualsiasi altro programma che sfrutta la rete, esso cercherà di contattare il computer al quale è stato assegnato quell'indirizzo. Se Internet fosse stato fruibile solo attraverso l'utilizzo degli indirizzi nella forma numerica, probabilmente non avrebbe mai raggiunto il successo e la diffusione attuali. I computer amano i numeri, ma gli uomini hanno maggiori capacità di ricordare un nome piuttosto che una sequenza numerica. Da qui nasce la necessità di creare un servizio capace di convertire i nomi in indirizzi, fornito dai server DNS (Domain Naming Service). Il loro funzionamento è molto semplice, il server contiene le informazioni su uno o più domini per il quale è “autoritativo”. Ogni volta che qualcuno chiede informazioni su un nome che gli compete, esso risponderà fornendo al chiamante l'indirizzo numerico al quale collegarsi. I DNS forniscono anche informazioni aggiuntive: ad esempio i server SMTP (posta in uscita), che si occupano di consegnare le e-mail ai destinatari, sanno a quale server trasmettere la posta grazie ad un'interrogazione speciale sui DNS. Inoltre, ultimamente il DNS sta evolvendo per supportare anche il protocollo SIP per le comunicazioni VoIP (Voice over IP) e per la gestione degli Active Directory di Windows. Per poter usare un server DNS è necessario conoscerne l'indirizzo numerico, il quale in genere viene fornito con i parametri di connessione Internet del provider o in modo automatico nel caso di connessioni point-to-point.
Gerarchie di domini
 I nomi che poi verranno tradotti in indirizzo numerico sono organizzati in livelli gerarchici. Il livello di un dominio è riconoscibile dal numero di “parole”, separate dal carattere “.”, che lo compone:
  •  1° livello – it: il dominio “it”, che, ovviamente, non è realmente utilizzato, rappresenta un dominio di primo livello;
  •  2° livello – edmaster.it: in genere rappresenta i domini che identificano un'organizzazione. Sono spesso utilizzati per indirizzi e-mail;
  • 3° livello – linuxmagazine.edmaster.it: questo tipo di dominio in genere viene utilizzato per distinguere gli host di una organizzazione con lo scopo di fornire servizi.
 Ovviamente possono esistere ulteriori livelli, ma in genere la maggior parte dei nomi ne utilizzano solo tre. Una tale struttura serve a dettare una gerarchia di server DNS organizzati per dominio, in modo tale che solo alcuni server possano essere autorizzati a risolvere i nomi di alcuni domini o ad inoltrare la richiesta al server responsabile. Ciò è necessario sia per questioni organizzative che per sicurezza. Altrimenti, nessuno potrebbe garantire che un server DNS trappola non cerchi di dirottare il tentativo di collegarvi alla vostra banca verso un server malevolo. La maggior parte dei DNS dei provider permettono all'utente di interrogare qualsiasi host, in quanto, benché esso non sia autoritativo, sa come reperire il risultato della richiesta nel modo più corretto e sicuro.
Un dominio ad ognuno
Per poter fornire dei servizi online o semplicemente per essere “raggiungibili”, è possibile acquistare un dominio di secondo livello (con la possibilità di crearne infiniti di terzo) a prezzi modici. Tutto sembra essere rose e fiori. Purtroppo non è così. I domini generalmente richiedono degli indirizzi statici, i quali vengono assegnati solo in contratti di connettività business, non accessibili a tutti e generalmente più costosi dei comuni abbonamenti domestici. Anche cercando di aggiornare l'indirizzo manualmente ad ogni suo cambiamento, si incontrerebbero ulteriori difficoltà, in quanto il tempo di propagazione dei cambiamenti delle voci di un DNS può essere di alcune ore o giorni.
I servizi di Dns dinamico
 Sono tanti i vantaggi di essere sempre raggiungibili anche quando si è vincolati dal possedere un indirizzo dinamico: ad esempio accedere alla propria rete domestica per gestire il computer di casa da remoto, o la fornitura di servizi sfruttati da terzi, come server di gioco o per lo scambio di file. Questa possibilità non è preclusa grazie ad alcuni servizi online, i quali offrono il servizio di “Dynamic DNS”. Chi opera in questo campo possiede uno o più domini di secondo livello ed una serie di server DNS, autoritativi per essi, configurati per ridurre al minimo i tempi di propagazione delle modifiche per tutti i sottodomini. I clienti/utenti del servizio ottengono uno o più domini di terzo livello a loro scelta con la possibilità (opzionale) di cambiare alcuni parametri del DNS o di usufruire di servizi opzionali ad essi associati. La maggior parte di coloro che forniscono il servizio di Dynamic DNS lo fanno sia in modo gratuito che a pagamento. Non esistono differenze di rilievo tra gli operatori in questo settore, ma quello più famoso, in quanto fu il primo a fornire un servizio del genere, è DynDNS ( www.dyndns.com). Questo operatore offre diversi servizi a pagamento, tra cui quello di gestire e registrare un dominio di secondo livello. Altri servizi comprendono la possibilità di avere una casella di posta, che ridirige tutti i messaggi ricevuti ad un altro indirizzo a vostra scelta (tutorial “Registriamo il nostro host DynDNS”). I cambiamenti operati attraverso l'interfaccia di DynDNS sono quasi immediati. Se abbiamo creato un hostname per un indirizzo IP dinamico, ogni volta che cambiamo indirizzo e vogliamo aggiornare la voce nel DNS, dovremo accedere al pannello del sito Internet e aggiornare l'associazione. Dato che i domini a disposizione sono in numero limitato, il servizio pone, nella versione gratuita, il limite di cinque hostname per utente. Inoltre, se l'utente non utilizza il servizio per alcuni mesi, i suoi hostname vengono liberati, in modo da essere disponibili per gli utenti che ne vogliano fare uso. Questa politica è nata per evitare la presenza di numerosi hostname non più utilizzati.
Gli IP non sono infiniti
Il perché degli indirizzi di rete dinamici
La necessità degli Internet Service Providers (ISP) di assegnare ai propri clienti “domestici” degli indirizzi dinamici, nasce dal numero limitato di indirizzi IP globali disponibili. Attualmente si prevede l'occupazione di tutti gli indirizzi entro pochi anni, da qui la necessità di un protocollo più “generoso”, chiamato IPv6, che porterà il numero di indirizzi disponibili a 3,4 x 1038.
Per Gnu/Linux c'è DDclient
Benché il tempo di propagazione delle modifiche sia estremamente ridotto, la necessità di aggiornare l'indirizzo di un hostname con indirizzo dinamico è un'operazione noiosa se effettuata manualmente accedendo al sito Internet del servizio. Se non disponiamo di un dispositivo hardware capace di supportare i servizi di DynDNS, possiamo sempre utilizzare il client DDClient. Si tratta di un daemon (programmi che restano in esecuzione in background) scritto in Perl, quindi non necessita di particolari librerie di sistema per il suo funzionamento o di essere compilato. L'installazione può essere eseguita utilizzando i pacchetti forniti dalla propria distribuzione o mediante l'archivio disponibile direttamente sul sito Internet di DynDNS. Ottenuto il file (ddclient- 3.7.3.tar.gz) decomprimiamolo in una directory temporanea:
cd /tmp
tar -zxf /path/dcclient.tar.gz
cd dccclient-3.7.3
Purtroppo la configurazione e l'installazione effettiva non è banale, in quanto non è presente uno script automatico che configura e pone i file nelle directory giuste. Osservando il contenuto della cartella è possibile notare l'eseguibile chiamato “dcclient”, alcuni file di documentazione e altri di configurazione di esempio, i quali sono riconoscibili dalla presenza della parola “sample” nel nome. Quelli essenziali sono due, l'eseguibile e la configurazione generale. La loro installazione avviene copiando i file nelle rispettive directory:
cp dcclient /usr/sbin
cp sample-etc_ddclient.conf /etc/ddclient.conf
È sconsigliabile installare questi file in altre directory, in quanto gli script di esempio forniti con il client sono stati realizzati per cercarli nelle cartelle predefinite. In caso contrario sarebbe necessario modificare gli script stessi, operazione sicuramente più complicata.
Controllare il tipo di connessione
Lo scopo del client è determinare l'indirizzo IP utilizzato per il collegamento del computer su cui è eseguito e provvedere ad associarlo a uno (o più) hostname del proprio account su DynDNS. Purtroppo, quando il computer si trova all'interno di una LAN o dietro un comune router/modem ADSL, determinare quale sia il proprio indirizzo IP potrebbe essere un'operazione non banale. Prima di configurare ddclient è necessario conoscere la modalità di connessione tra una delle seguenti:
 Connessione diretta: questo tipo di connessione si ha quando ad una delle interfacce di rete del computer è associato un indirizzo internet. Dato che la macchina è raggiungibile dall'esterno, l'indirizzo può essere utilizzato per aggiornare il record dell'hostname dinamico;
Connessione peer-to-peer: quando la connessione Internet avviene attraverso un'interfaccia ppp, generalmente utilizzata nei collegamenti via modem, l'indirizzo associato all'interfaccia point-to-point può essere utilizzato per aggiornare il record dell'hostname dinamico. La differenza con il caso precedente è che l'interfaccia viene creata e distrutta a seconda dello stato di collegamento;
 Connessione tramite gateway: quando la connessione Internet è fornita da una LAN o da un router ADSL, il computer non ha cognizione diretta dell'indirizzo associato ad essa. In questo caso si devono trovare soluzioni alternative per determinarlo. Inoltre bisogna assicurarsi che le richieste ai servizi che si vogliono offrire vengano reindirizzate alla macchina nella rete locale.
Le ultime due voci sono quelle più frequenti nell'ambito “domestico”. Inoltre, le modifiche da effettuare alla configurazione del client e la modalità di invocazione dipendono dalla modalità di connessione.
Registriamo il nostro host su DynDNS
Pochi passi e siamo immediatamente raggiungibili con un hostname personalizzato
Creazione dell'account

Il primo passo è la creazione dell'account sul sito internet di DynDNS. Il form di registrazione, del tutto simile a quello utilizzato in molti altri servizi, richiede solo un nome utente, una password, una e-mail e l'accettazione dei termini d'uso. L'account sarà attivo dopo aver confermato l'inscrizione aprendo la pagina con il codice di conferma, il cui indirizzo verrà inviato nella vostra email
Scegliamo il dominio

Per creare un host dinamico dobbiamo accedere alla sezione “Host Services”. Nel campo “Hostname” possiamo scegliere un nome a scelta tra i tanti domini disponibili. L'hostname dinamico può essere associato ad un indirizzo IP o ad un URL di una pagina su Internet. Abilitando il campo “Wilcard”, il servizio risponderà a tutte le richieste del tipo “*.hostscelto.dominioscelto.org”.
Host dinamico

Se abbiamo scelto di associare l'hostname ad un indirizzo IP, dovremo obbligatoriamente specificarlo nel campo sottostante. L'interfaccia permette di inserire automaticamente il proprio IP in modo rapido. Inoltre, è possibile configurare il TTL, ovvero l'intervallo di aggiornamento per la propagazione delle modifiche del DNS. Un valore alto permette interrogazioni più veloci a discapito di dati sempre “freschi” ed aggiornati.
Indirizzo “corto”

Se abbiamo scelto di effettuare un WebHop, l'hostname si comporterà come qualsiasi servizio di web redirector. Questa soluzione permette di “accorciare” l'indirizzo di un sito web particolarmente lungo (dovuto in genere ai servizi di hosting gratuiti) o per permettere un cambio di hosting indolore mantenendo lo stesso indirizzo pubblico. L'opzione “Cloak” permette di utilizzare un titolo per la pagina personalizzato.
Configurazione generale
All’interno del file “/etc/ddclient.conf”sono contenute le credenziali di accesso al servizio, gli hostname da aggiornare e i parametri per determinare l'IP di collegamento ad Internet. Parte delle direttive contenute in questo file, possono essere “scavalcate” dai parametri specificati nella linea di comando utilizzata per invocare il client. A questo punto, analizziamo le direttive utili alla configurazione generale:
pid=/var/run/ddclient.pid
daemon=300
ssl=yes
Queste tre voci permettono di configurare alcuni aspetti del daemon, in particolare il valore numerico rappresenta il numero di secondi tra gli aggiornamenti dell'indirizzo corrente da trasmettere a DynDNS. La voce ssl obbliga il client ad utilizzare una connessione criptata e protetta, condizione vitale per evitare che qualcuno possa sniffare le credenziali di accesso per il servizio di DynamicDNS.
syslog=yes # log update msgs to syslog
mail-failure=root # mail failed update msgs to root
Il programma può essere configurato per essere totalmente silente o capace di notificare lo stato di successo e di fallimento delle sue operazioni. La prima riga permette di registrare gli eventi del programma nel log di sistema, mentre la seconda permette di notificare, tramite email all'utente amministratore ogni fallimento.
protocol=dyndns2
server=members.dyndns.org
Queste direttive specificano il tipo di servizio di DynamicDNS e il server di collegamento. Questo client non supporta unicamente DynDNS, ma anche altri operatori quali il famoso “no-ip” ( www.no-ip.com). Nel file di esempio sono elencati i servizi al quale è possibile accedere.
login=testldit
password=miapassword
linuxmagazine.homelinux.net
Queste direttive, che devono essere aggiunte in coda al file di configurazione, specificano le credenziali di accesso e l'hostname dinamico da aggiornare. Se disponete di più host associati allo stesso account, potete specificarli separandoli mediante l'uso del carattere “virgola”.
Aggiornamento degli hostname
DynDNS offre diversi metodi per aggiornare gli indirizzi degli hostname dinamici
Il sito web

Il metodo più semplice è accedere al sito Internet di DynDNS, effettuare il login e aggiornare l'indirizzo dal pannello di modifica dei dati dell'hostname. Questa soluzione è totalmente manuale, ma utile qualora vogliate utilizzare il servizio saltuariamente.
Dispositivi compatibili

Molti router e modem ADSL supportano in modo nativo alcuni servizi di Dynamic DNS. Per aggiornare automaticamente l'indirizzo dell'hostname, è sufficiente trovare la voce relativa nel pannello web del vostro dispositivo.
Client dedicato

L'aggiornamento automatico può avvenire utilizzando alcuni programmi realizzati allo scopo. Il sito di DynDNS mette a disposizione alcuni software per le piattaforme più diffuse, tra cui l’efficiente client per GNU/Linux ddclient.
Un sito web “privato”
Pubblicare un sito web con Apache e DynDNS in presenza di un NAT
Il port forward

Il dispositivo che fa da router, deve essere configurato per inoltrare le richieste sulle porte relative ai servizi da offrire. Se siamo in presenza di un server web come, ad esempio, Apache, la porta da utilizzare è la 80.
E con i Firewall?

Se sul computer è attivo un firewall, è indispensabile “aprire” le porte per i servizi che bisogna rendere pubblici, magari utilizzando un'interfaccia per iptables come Firewall Builder ( www.fwbuilder.org).
Configurare Apache

Con DynamicDNS è possibile configurare un virtual host di Apache in modo da visualizzare un sito diverso per ogni hostname dinamico. Ovviamente, il sito scomparirà quando il computer non sarà più collegato.
Connessione diretta e  P2P
 Le variazioni alla configurazione del client per le tipologie di connessioni diretta e peer-to-peer (P2P) sono minime. In particolare, è necessario aggiungere una tra le seguenti direttive:
 use=if, if=eth0
use=if, if=ppp0
La prima riga va utilizzata nel caso la connessione è di tipo diretta, mentre la seconda è necessaria nel caso di una connessione ppp (Point to Point Protocol). Tuttavia, la modalità di invocazione del daemon è differente. Nel primo caso stabiliamo di eseguire il daemon all'avvio del sistema. Ciò è fattibile utilizzando uno dei file di esempio da copiare nella directory “/etc/init.d”. È possibile riconoscere quello più indicato alla distribuzione in uso in base al nome. Ad esempio per Ubuntu o Debian GNU/Linux la procedura da seguire è quella seguente:
cp sample-etc_rc.d_init.d_ddclient.ubuntu
/etc/init.d/ddclient
ln -s /etc/init.d/ddclient /etc/rc2.d/S90ddclient

A questo punto, non solo il daemon verrà eseguito all'avvio del sistema, ma è possibile gestirlo invocando lo script presente in /etc/init.d: /etc/init.d/ddclient start|stop. Nel caso di una connessione peer-topeer è più indicato invocare l'aggiornamento dell'indirizzo quando viene creata un'interfaccia ppp. In questo modo è possibile eseguire il client senza che esso diventi in seguito un daemon. Le distribuzioni “moderne” permettono di eseguire operazioni arbitrarie alla creazione di una interfaccia ppp eseguendo tutti gli script contenuti nella directory “/etc/ppp/ip-up.d/”, ai quali il daemon pppd passa alcuni parametri essenziali, tra cui l'indirizzo di collegamento. Nel nostro caso l'operazione da effettuare è la seguente:
cp sample-etc_ppp_ip-up.local /etc/ppp/ip-
 up.d/99ddclient
Quando l'IP non è noto
Se non abbiamo una conoscenza diretta dell'indirizzo con cui siamo collegati in Internet, dobbiamo istruire il client a determinarlo in qualche modo. Se siamo connessi ad Internet con un router/modem ADSL, possiamo sperare che sia supportato dal client. Esso infatti è capace di accedere al pannello web del vostro router e ottenere l'indirizzo automaticamente. Se per esempio possedete un LinkSys, bisogna inserire le seguenti direttive:
use=linksys,
fw=192.168.1.1:80
fw-login=admin,
fw-password=XXXXXX
Con queste righe, oltre a specificare l'indirizzo del router, impostiamo anche l'username e la password necessari ad accedere al pannello di amministrazione. Nel file di configurazione di esempio troverete la lista di tutti i router supportati. Se il router non è supportato o non è possibile accedere al pannello di gestione, il client permette di utilizzare uno dei tanti servizi sul web per conoscere l'indirizzo di collegamento:
 use=web, web=ipdetect.dnspark.com,
 web-skip='Current Address:'
Esistono diversi siti che svolgono la stessa funzione. Se decidete di cambiare servizio dovete anche assicurarvi che esso rilevi l'indirizzo corretto e controllare se la parte di risposta da ignorare, espressa nel campo “web-skip”, sia effettivamente quella corretta. Anche in questo caso è consigliabile eseguire il client all'avvio del sistema utilizzando lo script da porre nella directory “/etc/init.d”.
Pagina 1/2
Lascia un commento
Tag: ip, dinamici, statici, domini, dns, hostname
Condividi