Modifier ses résolveurs DNS - Angristan
Modifier ses résolveurs DNS

Modifier ses résolveurs DNS

Ce billet a été écrit il y a longtemps. Il peut contenir des informations erronées.

En cette période où le DNS est sous les projecteurs, voici un petit tutoriel pour vous expliquer comment changer vos résolveurs DNS sous Windows, GNU/Linux, Mac OS X, Android et iOS.

Qu’est-ce que le DNS ?

Le DNS signfie Domain Name System en anglais, soit Service de Noms de Domaine.

Son utilité principale est de transformer un nom de domaine (domain.tld, sous.domaine.tld) en une adresse IP ( 123.123.123.123 pour une adresse IPv4).

Ce service est donc indispensable à tous les usagers d’internet.

Par défaut vous utilisez les résolveurs DNS de votre FAI (Fournisseur d’Accès à Internet).

Pour savoir quels serveurs vous utilisez actuellement vous pouvez utiliser un site comme DNS leak test. Si vous êtes chez Free, vous aurez quelque chose comme cela :

Modifier ses serveurs DNS

Quels serveurs DNS utiliser ?

Pourquoi devrait-on se poser cette question ? Parce que comme tout ce qui est sur internet, les serveurs ont des logs (des journaux) qui contiennent beaucoup d’informations: adresse IP, date, requête…

Un log de résolveur DNS peut donc savoir qui fait quelle requête, quand.

Et qui mieux que votre FAI connaît la relation entre une adresse IP et une personne physique ?

Vous voyez le problème ? Les logs des résolveurs DNS sont presque aussi complet que l’historique de votre navigateur !

Il y a aussi un autre problème : les résolveurs DNS menteurs. On a pu le voir avec ThePirateBay ou encore plus récemment T411, deux sites qui proposent entre-autre du contenu gratuitement sans respecter les droits s’appliquant sur ce contenu. Hadopi étant inutile, le gouvernement a demandé aux FAI français de faire mentir leurs résolveurs DNS sur ces domaines. Les FAI n’oseraient surtout pas se mettre à dos l’état Français 😉

En soit, ce blocage est aussi inutile, puisqu’il suffit de changer ses résolveurs DNS pour accéder de nouveau à ces sites.

De nombreux sites profitent du « blocage » de ces sites connus pour ramener des visiteurs sur leurs sites en leur expliquer comment contourner ce blocage, et bien souvent ils proposent les résolveurs DNS de Google.

Là encore, très mauvaise idée ! Google sait déjà tellement de choses sur vous, et même si vous êtes utilisateur de Chrome (Shame on you), et que Google connaît déjà votre historique web et vos mots de passe, ce n’est pas une raison pour leur en donner plus.

À une époque, les serveurs de noms OpenDNS étaient recommandables, mais la société (américaine) a été rachetée par Cisco, fabriquant de matériel réseau ayant déjà collaboré avec la NSA (bon plan, hein ? 🙂 )

Modifier ses serveurs DNS

Le meilleur résolveur DNS est votre propre ordinateur, mais ce n’est pas à la portée de tout le monde, et nous en reparlerons dans un prochain article. Une bonne idée est aussi d’installer un résolveur DNS pour son réseau local, mais là encore, ce n’est pas l’affaire de quelques minutes.

Je vous conseille donc résolveurs DNS public de la FDN (French Data Network), un FAI associatif. Ils sont compatibles IPv4 et IPv6, vous trouverez leurs adresses ici.

Il y a également OpenNIC, qui se veut être une alternative démocratique à l’ICANN (Société pour l’attribution des noms de domaine et des numéros sur Internet). Ou encore dns.watch.

Modifier ses serveurs DNS

Vous pouvez trouver les résolveurs DNS OpenNIC les plus proches de chez vous sur leur site.

Changer ses DNS

Sous Windows

Sous Windows, on doit modifier les résolveurs DNS sur chaque carte/périphérique réseau (carte wifi, carte Ethernet, clé wifi…)

Allez dans Panneau de configuration > Réseau et Internet > Centre Réseau et partage > modifier les paramètres de la carte.

Choisissez la carte :

Modifier ses serveurs DNS

Cliquez sur IPv4 puis propriétés :

Modifier ses serveurs DNS

Et insérez les 2 résolveurs DNS :

Modifier ses serveurs DNS

Sous GNU/Linux

Il y a deux manières de changer ses DNS sous Linux.

Vous pouvez soit changer via l’interface graphique, connexion par connexion, soit en ligne de commande, pour toutes les connexions et toutes les interfaces.

Via l’interface Graphique

Allez dans paramètres > connexions réseau et choisissez le réseau pour lequel vous souhaitez changer vos résolveurs DNS, puis « modifier ».

Modifier ses serveurs DNS

Ensuite, allez dans « Paramètres IPv4 », puis mettez les deux adresses IP des serveurs DNS séparées par une virgule :

Modifier ses serveurs DNS

Cliquez sur enregistrer, et c’est bon.

En ligne de commande

Si vous êtes sous Ubuntu, vous devez supprimer les paquets resolvconf et unbuntu-minimal, sinon les résolveurs DNS par défaut vont revenir au reboot.

Éditez le fichier /etc/resolv.conf en tant que root :

sudo nano /etc/resolv.conf

Supprimez les lignes déjà présentes ou ajoutez un # en début de ligne pour qu’elles ne fassent plus effet.

Ajoutez ceci :

nameserver IP1
nameserver IP2

IP1 et IP2 étant les deux serveurs DNS.

Votre fichier devrait ressembler à ceci :

Modifier ses serveurs DNS

Ensuite, saisissez cette commande :

sudo chattr +i /etc/resolv.conf

Cela va empêcher toute modification du fichier. Sinon, il va être régénéré au boot.

Si jamais vous souhaitez modifier à nouveau le fichier :

sudo chattr -i /etc/resolv.conf

Si vous souhaitez utiliser OpenNIC j’ai créé un petit script qui le fera à votre place.

Sous Mac OS X

N’ayant pas de Mac, je me fie à cet article.

Allez dans préférences > réseau

Modifier ses résolveurs DNS

Comme sous Windows, choisissez l’interface pour laquelle vous souhaitez changer de résolveurs DNS :

Modifier ses résolveurs DNS

Allez dans l’onglet DNS

Modifier ses résolveurs DNS

Puis ajoutez/supprimez vos résolveurs DNS.

Modifier ses résolveurs DNS

Sous Android

Malheureusement, Android ne supporte pas la modification des résolveurs DNS nativement..

Pour moi, il n’y qu’une seule application qui a marché et c’est Engelsiz : DNS Changer.

Ouvrez l’application, allez dans « manual », ajoutez les deux résolveurs DNS séparément, puis cliquez sur le « v » à droite des deux IP.

Modifier ses serveurs DNS

Confirmez, et c’est bon ! 🙂

Edit : Une nouvelle application est disponible : DNS66. Elle fait aussi bloqueur et de pub et est open-source. Je vous la conseille.

Sous iOS

N’ayant plus d’appareil sous iOS, je me fie à cet article.

Vous devez aller dans Paramètres > Wi-Fi, puis appuyer sur la flèche bleue à côté du réseau.

Modifier ses serveurs DNS

Les captures d’écran datent d’avant iOS 7, mais la procédure reste la même 🙂

Dans la section DNS, mettez les deux adresses IP séparées par une virgule.

Modifier ses serveurs DNS

Box/Routeur

Par défaut, c’est le routeur auquel vous êtes connecté qui définie les résolveurs DNS à utiliser. Vous pouvez donc cherchez dans les paramètres de votre box ou de votre routeur si vous pouvez directement changer les serveurs DNS, afin d’éviter de refaire la manip’ sur chaque appareil.

Conclusion

Une fois vos modifications faites, n’oubliez pas d’aller vérifier vos résolveurs DNS sur DNS Leak Test.

D’autres articles sont à venir sur les résolveurs DNS (notamment pour GNU/Linux), cet article sert donc de base.

J’espère vous avoir éclairci sur ce qu’étaient le DNS et comment les modifier sur vos différents appareils. 🙂


Dernière modification le 17 décembre 2017.
S’abonner
Notification pour
guest

15 Commentaires
Le plus récent
Le plus ancien Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
siger

Est il possible de les modifier en tapant ?
vim /etc/resolv.conf

mpedro

Dans le cas où l’on se trouve avec ce message : chattr: Opération non supportée lors de la lecture des drapeaux sur /etc/resolv.conf

Que ce soit avec la méthode manuelle ou en utilisant le script cela ne fonctionne pas.

chattr +i /etc/resolv.conf
renvoi
chattr: Opération non supportée lors de la lecture des drapeaux sur /etc/resolv.conf

et le fichier /etc/resolv.conf est regénéré automatiquement à la réinitialisation de la connexion internet

La même opération en ajoutant nameserver directement dans /var/run/NetworkManager/resolv.conf, ne fonctionne pas.

Pour trouver la parade :

il faut tout simplement hors connexion (pour éviter une régénération de fichiers) supprimer resolv.conf dans /etc puis le recréer manuellement et rentrer les nameserver
et effectuer la commande chattr +i /etc/resolv.conf pour définir le bit d’immutabilité et empêcher l’accès. La suppression et la récréation manuelle du fichier resolv.conf est nécessaire.

Tom

Salut,
Je comprends pas.
Tu conseilles d’éviter les dns de Google, mais les nouveaux que tu édites sur iOS sont ceux de Google.
Pourquoi ne pas mettre au moins un de ceux des autres os ?

Tom

Lire que tu n’as pas d’appareil iOS ?
C’eut été plus judicieux de mettre un rappel que les DNS : 8.8.8.8 et 8.8.4.4 sont ceux de Google.
Tout le monde ne lit pas ton tuto en entier, on se dirige machinalement sur les OS qu’on possède.
Perso, je n’ai aucun Android, donc, je saute son passage.

À part ça, j’ai feuilleté quelques uns de tes sujets, c’est vraiment pas mal, bravo !

hich

Bonjour et merci pour ce tuto.
J’essaye d’utiliser votre serveur DNS hébergé chez OVH.
J’ai un message d’erreur quand je fais chattr ou lsattr :
« chattr: Opération non supportée lors de la lecture des drapeaux sur /etc/resolv.conf ».
– /etc est sur une partition ext4 qui normalement supporte chattr +i
– Je suis sur Debian8/testing
Si quelqu’un a une idée pour m’aider à avancer sur le sujet, elle est bienvenue.
Merci encore.

hich

Je viens d’essayer avec l’option -f et ça fonctionne 🙂 (ça m’intéresse de savoir pourquoi il me faut le -f si quelqu’un sait)

hich

Salut, non, resolvconf n’est pas installé. Quand je fais lsattr sur /etc j’ai le même message d’erreur pour plusieurs fichiers (printcap, localtime, mtab, os-release et resolv.conf).

Cascador

Tu peux faire ça aussi dans ton script (voir man echo) :
echo -e « nameserver $ns1nnameserver $ns2 » >> /etc/resolv.conf

Tcho !

Cascador

Hello,

Petite erreur. Si jamais vous souhaitez modifier à nouveau le fichier : sudo chattr -i /etc/resolv.conf

Concernant ton script chattr -i /etc/resolv.conf est réellement nécessaire ? De base je ne l’ai jamais vu « immutable » sur Ubuntu/Debian en tout cas.

Tcho !