1.1.1.1 รจ un DNS Resolver accessibile pubblicamente messo a disposizione dall’azienda statunitense Cloudflare, realtร impegnata nella fornitura di servizi dedicati all’ottimizzazione delle performances e della sicurezza dei siti web mediante reverse proxying, CDN, network security e DNS distribution.
Per capire cosa sia un DNS Resolver รจ perรฒ necessario comprendere innanzitutto il concetto di DNS (Domain Name System).
Indice
DNS e DNS Resolver
Con il termine DNS viene indicato un sistema che consente di tradurre i nomi a dominio (ad esempio โmrw.itโ) nei corrispondenti indirizzi IP (Internet Protocol).
Tutti i device connessi alla Rete sono associati ad un indirizzo IP che puรฒ essere in formato IPv4 (ad esempio โ195.231.5.188โ), cioรจ 4 numeri in notazione decimale separati da un punto e ognuno compreso nell’intervallo tra 0 e 255, o in formato IPv6, cioรจ 8 gruppi composti ciascuno da 4 cifre esadecimali (ad esempio โ2001:0db8:0a0b:12f0:0000:0000:0000:000โ) separati dal carattere per i 2 punti โ:โ anche ripetuto (โ::โ) in sostituzione di blocchi o serie di blocchi formati da soli 0.
Dato che memorizzare gli indirizzi IP sarebbe umanamente difficile e scomodo, i browser per la navigazione Web prevedono di poter accedere ad una risorsa presente in un server remoto tramite la digitazione, nella barra degli indirizzi, di una stringa chiamata URL (Uniform Resource Locator) formata dal protocollo di riferimento (โhttps://”), dall’hostname (ad esempio โwww.mrw.itโ) e dal percorso del file cercato (ad esempio un’immagine o una pagina HTML).
Il DNS Resolver si occupa di convertire una richiesta (query DNS) formulata sotto forma di URL, convertendo l’hostname in un indirizzo IP evitando che l’utente debba ricordare sequenze numeriche o alfanumeriche complesse.
Perchรฉ utilizzare DNS 1.1.1.1
Tutti gli ISP (Internet Service Provider) forniscono ai propri utenti un DNS resolver che i client, ad esempio un comune Pc o uno smartphone, accettano e utilizzano in modalitร predefinita al momento dell’installazione del router o tramite l’accesso ad una rete dati mobile. Tale impostazione puรฒ essere perรฒ modificata per diverse esigenze legate soprattutto alla tutela della privacy e alla sicurezza.
Non tutti i provider di connessione supportano infatti la crittografia dei dati in fase di navigazione. Quando disponibile questa tecnica fa in modo che le informazioni veicolate tra client e server non siano trasmesse โin chiaroโ, divenendo quindi leggibili da un soggetto estraneo a tale comunicazione, ma che vengano criptate tramite un’apposita stringa alfanumerica, detta chiave di cifratura, in modo da risultare inaccessibili.
Nello stesso modo, ancora piรน di frequente non tutti gli ISP offrono una conformitร completa alle specifiche DNSSEC (Domain Name System Security Extensions). Queste ultime, la cui adozione รจ ancora oggi abbastanza limitata, sono state pensate per dotare i Resolver DNS di un sistema standard universalmente condiviso con cui autenticare la sorgente dei dati DNS, garantire la loro integritร e la risoluzione certificata dei nomi a dominio. Ciรฒ รจ possibile tramite un processo basato sulla crittografia asimmetrica in cui gli interlocutori invece di scambiarsi una chiave di cifratura segreta dispongono di una coppia di chiavi, una privata e una pubblica. La chiave privata associa una firma digitale alle informazioni DNS (Resource Records) mentre la chiave pubblica permette ai client di verificare la firma confermando l’affidabilitร della fonte di dati.
Sostanzialmente, se applicate diffusamente, le specifiche DNSSEC garantirebbero che il traffico generato da una Web application venga veicolato in sicurezza ai server corretti in modo che la navigazione degli utenti non sia intercettata o esposta ad attacchi basati sull’hidden on-path, un’attivitร malevola che consiste nel posizionarsi tra due dispositivi (ad esempio un client e un server) e di intercettare o alterare le comunicazioni fra di essi.
A quanto detto si aggiungano i rischi derivanti dalla possibilitร che i provider sfruttino i dati di traffico per la profilazione, cosรฌ come le latenze legate ai sovraccarichi di Rete (in alcuni casi dovuti a tentativi di DDoS, Distributed Denial of Service) che potrebbero rallentare la navigazione.
I DNS 1.1.1.1 sono stati concepiti per bypassare tutte le problematiche precedentemente descritte. Scopriamo come.
Caratteristiche dell’infrastruttura DNS 1.1.1.1
1.1.1.1 รจ un resolver DNS ricorsivo, questo significa che il servizio non ha la proprietร di un record DNS ma opera da intermediario con il compito di fornire informazioni sul DNS stesso. Quando il riferimento a quest’ultimo viene allocato in cache il resolver risponde ad una query mettendo a disposizione le informazioni sul DNS o l’indirizzo IP di origine, altrimenti indirizza la richiesta ad un server DNS autoritativo per il recupero dei dati. Un server DNS autoritativo (o NameServer) รจ infatti un sistema che permette di gestire e aggiornare i DNS, contiene i riferimenti ai domini e risponde a tutte le query per la risoluzione dei nomi associati ai servizi richiesti (ad esempio Web o FTP).
1.1.1.1 fa riferimento al network di Cloudflare che ha creato un’infrastruttura composta da oltre un migliaio di server sparsi in 200 cittร a livello globale a cui fanno riferimento per l’accesso piรน di 20 milioni di Internet property con il compito di soddisfare rapidamente le query inviate dagli utilizzatori.
Completamente gratuito, 1.1.1.1 garantisce una velocitร media di risposta alle query DNS pari a 14.8 ms, meno della metร di Google Public DNS e circa un quinto rispetto ad un ISP operante nel mercato della connettivitร . Per quanto riguarda invece le feature dedicate alla tutela della privacy, il servizio non estrae nรฉ raccoglie i dati dei propri utenti per finalitร di marketing, nello stesso modo non li cede a terzi per scopi commerciali. I log relativi alla navigazione vengono conservati per 24 ore unicamente per motivi legati al debugging e sono successivamente rimossi dai server divenendo irrecuperabili.
Impostare DNS 1.1.1.1 sul proprio terminale
Impostare DNS 1.1.1.1 in sostituzione dei DNS forniti dal proprio ISP รจ estremamente semplice ma la procedura richiesta cambia a seconda della piattaforma di riferimento.
Impostazione DNS su Windows 10
Su Windows 10 basta aprire le โImpostazioniโ di sistema per poi seguire il percorso โRete e Internet > Modifica opzioni schedaโ, quest’ultimo si trova nella sezione โImpostazioni di rete avanzateโ.
Fatto questo si accede ad una lista delle โConnessioni di reteโ disponibili e si puรฒ selezionare quella desiderata per poi visualizzare le sue โProprietร โ tramite il menu contestuale del tasto destro del mouse.
Da tale posizione รจ necessario cliccare 2 volte sull’elemento โProtocollo Internet versione 4โ e, dalla finestra di proprietร ora aperta spuntare il radiobutton corrispondente all’opzione โUtilizza i seguenti server DNSโ. Nel campo โServer DNS preferito:โ si deve digitare โ1.1.1.1โ, mentre nel campo โServer DNS alternativo:โ il valore da utilizzare รจ 1.0.0.1. Una volta cliccato su โOKโ i nuovi DNS saranno impostati e operativi. La stessa operazione puรฒ essere svolta per il protocollo IPv6 indicando come DNS primario โ2606:4700:4700::1111โ e come DNS alternativo โ2606:4700:4700::1001โ.
Impostazione DNS su Linux
Per quanto riguarda Linux, su Ubuntu e derivate รจ possibile operare tale configurazione da โSistema > Preferenze > Connessioni di reteโ per poi selezionare la scheda โWirelessโ e di seguito la connessione di Rete corrente. Si puรฒ quindi cliccare su โModificaโ e successivamente su IPv4 o IPv6, ottenendo la lista dei DNS server a cui sostituire i valori indicati in precedenza per Windows. L’operazione viene conclusa cliccando su โApplicaโ.
Su Debian รจ invece possibile lanciare l’istruzione da linea di comando:
$ sudo vim /etc/resolv.conf
per poi sostituire i valori relativi ai DNS server con:
# IPv4 nameserver 1.1.1.1 nameserver 1.0.0.1 # IPv6 nameserver 2606:4700:4700::1111 nameserver 2606:4700:4700::1001
Dopo essere usciti dall’editor Vim con il tasto [ESC] รจ sufficiente digitare la sequenza โ:wqโ per chiudere la sessione di editing e confermare le modifiche effettuate.
Impostazione DNS su MacOS
La procedura richiesta per impostare i DNS 1.1.1.1 su MacOS prevede di accedere alle โPreferenze di sistemaโ e di cliccare l’icona denominata โNetworkโ presente nella sezione โInternet e Wirelessโ per poi selezionare โAvanzateโ.
Da questa posizione รจ possibile scegliere la scheda โDNSโ da cui rimuovere gli eventuali indirizzi IP giร presenti e aggiungere i valori โ1.1.1.1โ e โ1.0.0.1โ per IPv4 o โ2606:4700:4700::1111โ e โ2606:4700:4700::1001โ per IPv6.
Cliccando su โOkโ e successivamente su โApplicaโ si potranno confermare le modifiche precedentemente effettuate.
Impostazione DNS su iOS
Se si possiede un iPhone o un iPad, la procedura di configurazione dei DNS richiede di seguire il percorso โImpostazioni > Wi-Fiโ. Fatto questo รจ necessario toccare l’icona delle informazioni (โiโ) posta di fianco al nome della connessione che si sta utilizzando.
Fatto questo basta scrollare la schermata corrente per visualizzare la sezione โConfigura DNSโ e modificare l’impostazione di quest’ultima da โAutomaticaโ a โManualeโ.
Il prossimo e ultimo passaggio richiede quindi un touch sulla voce โAggiungi serverโ e la cancellazione degli indirizzi IP eventualmente giร impostati sostituendoli con โ1.1.1.1โ e โ1.0.0.1โ per IPv4 o โ2606:4700:4700::1111โ e โ2606:4700:4700::1001โ per IPv6, cliccando poi su โSalvaโ per confermare l’operazione.
Impostazione DNS su Android
Dalla versione 9 (Android โPieโ) il Robottino Verde supporta unicamente i protocolli DNS over TLS che hanno il compito di assicurare che le comunicazioni tra dispositivi e resolver DNS siano cifrate.
Tale funzionalitร garantisce in teoria un livello di sicurezza piรน elevato ma nella realtร rimane il fatto che anche in presenza di TLS un utente non puรฒ sapere se la propria connessione al server DNS รจ stata dirottata da un soggetto malevolo estraneo, problema che potrebbe verificarsi per esempio quando si accede alla Rete tramite un hotspot Wi-Fi pubblico.
Per limitare tale rischio gli utilizzatori di Android possono accedere al proprio sistema seguendo il percorso โImpostazioni > Connessione e condivisione > DNS provatoโ per poi selezionare โNome host del provider DNS privatoโ e digitare il valore โone.one.one.oneโ o โ1dot1dot1dot1.cloudflare-dns.comโ, salvare le modifiche effettuate e verificare che la procedura sia andata a buon fine visitando la pagina 1.1.1.1/help (o 1.0.0.1/help) che dovrebbe fornire una conferma sul successo dell’operazione.
I passaggi descritti potrebbero variare leggermente a seconda del modello di device scelto o della versione di Android utilizzata.