Changer de DNS

De Wiki. Analyse, Communication, Développement, Hacking.
Aller à : navigation, rechercher
 Le Wiki collaboratif de Vision du web vous encourage à écrire en Markdown, le langage de mise en forme qui permet d'intégrer du contenu sur un wiki.
 Avec les deux outils suivants, vous pouvez tester le principe du Markdown, vous verrez, c'est très simple : https://stackedit.io/editor et http://www.tablesgenerator.com/mediawiki_tables
 Maintenant que vous avez testé le Markdown, vous pouvez participer à l'élaboration du contenu sur différents wiki existants, pour cela, il vous faut créer votre compte utilisateur.

Sommaire

Changer de DNS

Système de noms de domaine.
DNS est l’abréviation de Domain Name System, système de noms de domaine.
Pourquoi changer de résolveur DNS ?
Le serveur DNS habituel des Français est celui proposé par leur FAI et/ou par Google.
Liste des serveurs DNS des principaux FAI : Liste des serveurs DNS des principaux FAI.
Ceux-ci peuvent mentir, parfois involontairement, après une attaque d'empoisonnement du cache DNS.
Les résolveurs DNS menteurs sont utilisés pour nuire à la concurrence ou censurer des sites Internet.
Utiliser les DNS de Google offre le listing des sites que vous visitez à cette entreprise qui saura presque tout de vous.
Google utilise ces données pour mieux se renseigner sur les habitudes des utilisateurs et cibler sa publicité.
Il est possible d'utiliser son propre résolveur de DNS, ou, les DNS d'un autre service comme OpenDNS.

Les avantages d'avoir son propre serveur DNS

Serveur local rapide

Installer un serveur DNS sur son réseau local réduit notablement le temps que prennent les requêtes DNS.

En configurant le serveur pour qu'il conserve les données en cache, les requêtes se feront sans intermédiaires en profitant des performances de votre réseau local. Cela rendra la navigation plus fluide.

L’avantage de ce serveur est que les adresses sont cherchées directement, sans passer par Google ou un FAI et qu’elles sont mises en cache pour un usage future indépendamment du navigateur ou autre programme qui en a besoin.

Portabilité

Le serveur de DNS unbound fonctionne aussi bien sous Linux que Windows et Mac OSX.

Sécurité

On gagne en confidentialité.

Conserver la neutralité de son internet

Les requêtes envoyées à notre serveur sont transmises directement aux serveurs racines si il est configuré pour.

Si on passe par un serveur DNS contrôlé par un organisme, une société ou un état, nos requêtes peuvent être analysées pour diverses raisons.

Enregistrement des habitudes de surf, priorisation ou limitation du débit vers certains sites, faire mentir le serveur et par exemple faire disparaître des sites de votre internet.

Censure de l'accès à certains noms de domaine

Fermer l'accès aux domaines des régies publicitaires comme googlesyndication.com, doubleclick.net, ads.youtube.com, adserver.yahoo.com.

Configurer son serveur de DNS pour que ces noms de domaines pointent vers une adresse ip ne pouvant rien renvoyer ce qui empêchera l'affichage des pubs.

Conférences sur le DNS

Installer unbound

Manuel : https://unbound.net/documentation/index.html

IPv4 ou IPv6

Dans le doute, configurer vos DNS avec IPv4 et IPv6.

Si le DNS ne marche plus, configurer uniquement en IPv6, ou, uniquement en IPv4 si ça ne marche pas en IPv6.

Le projet Kame fait danser une tortue si la connexion est configurée en IPV6 : http://www.kame.net

Installer unbound sur GNU/Linux Debian Stretch

Installer le paquet unbound

sudo apt-get install unbound
# The following additional packages will be installed:
# libfstrm0 libprotobuf-c1 libunbound2 unbound-anchor
# Paquets suggérés :
# apparmor
# Les NOUVEAUX paquets suivants seront installés :
# libfstrm0 libprotobuf-c1 libunbound2 unbound unbound-anchor

Modifier les paramètres réseau

Dans les paramètres réseau, modifier manuellement la connexion.
Depuis l'onglet Paramètres IPv4 ajouter 127.0.0.1 dans Serveurs DNS supplémentaires.
Pour l'onglet Paramètres IPv6 ajouter ::1 dans Serveurs DNS supplémentaires.

Appliquer les changements

sudo sed -i 's/dns=dnsmasq/#dns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf
sudo service network-manager restart
sudo service unbound stop
sudo /etc/init.d/dns-clean restart
# sudo apt-get install nscd - Installer ce paquet pour vider le cache DNS.
sudo /etc/init.d/nscd restart
sudo unbound -c /etc/unbound/unbound.conf
sudo unbound-anchor -a "/var/lib/unbound/root.key"
sudo service unbound start

unbound-checkconf

unbound-checkconf
unbound-checkconf: no errors in /etc/unbound/unbound.conf

Connaître les DNS utilisés

cat /etc/resolv.conf

Téléchargement de la liste des serveurs DNS racines

# Téléchargement de la liste des serveurs DNS racines
cd /var/lib/unbound/ && wget -c ftp://ftp.internic.net/domain/named.cache
# Mise en place de cette liste pour le serveur Unbound
mv named.cache root.hints && chown unbound:unbound root.hints

Modifier la configuration de unbound

Modifier le fichier de configuration de unbound installé par défaut : /etc/unbound/unbound.conf

Configuration initiale
# Unbound configuration file for Debian.
#
# See the unbound.conf(5) man page.
#
# See /usr/share/doc/unbound/examples/unbound.conf for a commented
# reference config file.
#
# The following line includes additional configuration files from the
# /etc/unbound/unbound.conf.d directory.
include: "/etc/unbound/unbound.conf.d/*.conf"
Exemple à tester
server:
statistics-interval: 0
extended-statistics: yes
statistics-cumulative: yes
verbosity: 3
interface: 127.0.0.1
#interface: 10.8.0.1 ## la passerelle VPN
port: 53
do-ip4: yes
do-ip6: no
do-udp: yes
do-tcp: no
access-control: 127.0.0.0/8 allow ## j'autorise mon serveur
# access-control: 10.8.0.0/24 allow ## j'autorise le réseau établie avec OpenVPN
# access-control: 10.0.2.3 allow ## Test pour autoriser VirtualBox sur la machine virtuelle
access-control: 0.0.0.0/0 refuse ## j'interdis tout le reste de l'Internet !
auto-trust-anchor-file: "/var/lib/unbound/root.key"
root-hints: "/var/lib/unbound/root.hints"
hide-identity: yes
hide-version: yes
harden-glue: yes
harden-dnssec-stripped: yes
use-caps-for-id: yes
cache-min-ttl: 3600
cache-max-ttl: 86400
prefetch: yes
num-threads: 6
msg-cache-slabs: 16
rrset-cache-slabs: 16
infra-cache-slabs: 16
key-cache-slabs: 16
rrset-cache-size: 256m
msg-cache-size: 128m
so-rcvbuf: 1m
unwanted-reply-threshold: 10000
do-not-query-localhost: yes
val-clean-additional: yes
## Bloquer certaines pubs - Le fichier hosts le fait également.
local-zone: "doubleclick.net" redirect
local-data: "doubleclick.net A 127.0.0.1"
local-zone: "googlesyndication.com" redirect
local-data: "googlesyndication.com A 127.0.0.1"
local-zone: "googleadservices.com" redirect
local-data: "googleadservices.com A 127.0.0.1"
local-zone: "google-analytics.com" redirect
local-data: "google-analytics.com A 127.0.0.1"
local-zone: "ads.youtube.com" redirect
local-data: "ads.youtube.com A 127.0.0.1"
local-zone: "adserver.yahoo.com" redirect
local-data: "adserver.yahoo.com A 127.0.0.1"
# local-zone: "ask.com" redirect # Est aussi un moteur de recherche.
# local-data: "ask.com A 127.0.0.1"
use-syslog: yes
logfile: /var/log/unbound.log
harden-dnssec-stripped: yes
cache-min-ttl: 3600
cache-max-ttl: 86400
prefetch: yes
prefetch-key: yes
Ok.png Cette configuration est proposée depuis : https://memo-linux.com/debian-installer-le-serveur-dns-unbound/
Autoriser une IP pour un VPN
A suivre par la suite. Attribution d'une ip pour la passerelle VPN.
Dans mon cas, je suis sur une machine virtuelle sans VPN.
J'autorise par contre l'ip de la machine virtuelle, sur unbound.
Ajouter un nameserver

Ajouter la ligne nameserver 127.0.0.1 dans le fichier de configuration /etc/resolv.conf

Avec la version de Debian Stretch utilisée, /etc/resolv.conf est généré par NetworkManager. La ligne nameserver 127.0.0.1 est bien présente.

Fichier de configuration généré par défaut :

# Generated by NetworkManager
search 208.67.222.222
nameserver 10.0.2.3
nameserver 127.0.0.1
nameserver ::1
Tests du serveur Unbound
Relance du service Unbound
/etc/init.d/unbound restart
Vérifier le status
Lancer la commande systemctl status unbound.

Unbound ne semble pas se lancer :

unbound.service - Unbound DNS server
  Loaded: loaded (/lib/systemd/system/unbound.service; enabled; vendor preset: enabled)
  Active: failed (Result: exit-code) since Sat 2017-08-19 17:49:27 CEST; 31s ago
    Docs: man:unbound(8)
 Process: 5317 ExecStart=/usr/sbin/unbound -d $DAEMON_OPTS (code=exited, status=1/FAILURE)
 Process: 5310 ExecStartPre=/usr/lib/unbound/package-helper root_trust_anchor_update (code=exited, status=0/SUC
 Process: 5307 ExecStartPre=/usr/lib/unbound/package-helper chroot_setup (code=exited, status=0/SUCCESS)
Main PID: 5317 (code=exited, status=1/FAILURE)

août 19 17:49:27 stretch-test systemd[1]: unbound.service: Failed with result 'exit-code'.
août 19 17:49:27 stretch-test systemd[1]: unbound.service: Service hold-off time over, scheduling restart.
août 19 17:49:27 stretch-test systemd[1]: Stopped Unbound DNS server.
août 19 17:49:27 stretch-test systemd[1]: unbound.service: Start request repeated too quickly.
août 19 17:49:27 stretch-test systemd[1]: Failed to start Unbound DNS server.
août 19 17:49:27 stretch-test systemd[1]: unbound.service: Unit entered failed state.
août 19 17:49:27 stretch-test systemd[1]: unbound.service: Failed with result 'exit-code'.

Vérifier l'erreur :

unbound -d -v
[1503159172] unbound[5879:0] notice: Start of unbound 1.6.0.
[1503159172] unbound[5879:0] error: can't bind socket: Address already in use for ::1
[1503159172] unbound[5879:0] fatal error: could not open ports

Je redémarre la machine virtuelle. Je test à nouveau et arrive à lancer unbound. Unbound est maintenant lancé.

systemctl status unbound
● unbound.service - Unbound DNS server
  Loaded: loaded (/lib/systemd/system/unbound.service; enabled; vendor preset: 
  Active: active (running) since Sat 2017-08-19 18:48:39 CEST; 1min 48s ago
    Docs: man:unbound(8)
 Process: 520 ExecStartPre=/usr/lib/unbound/package-helper root_trust_anchor_up
 Process: 500 ExecStartPre=/usr/lib/unbound/package-helper chroot_setup (code=e
Main PID: 558 (unbound)
   Tasks: 1 (limit: 4915)
  CGroup: /system.slice/unbound.service
          └─558 /usr/sbin/unbound -d
Vérifier la résolution de nom à partir du serveur
Installer Drill
apt install ldnsutils

Exemple

drill @127.0.0.1 memo-linux.com
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 45978
;; flags: qr rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 
;; QUESTION SECTION:
;; memo-linux.com.	IN	A

;; ANSWER SECTION:
memo-linux.com.	60	IN	A	46.105.44.210

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 147 msec
;; SERVER: 127.0.0.1
;; WHEN: Sun Aug 20 00:41:25 2017
;; MSG SIZE  rcvd: 48
Test de résolution de nom depuis un poste client connecté au VPN
drill @10.8.0.1 memo-linux.com
Error: error sending query: Could not send or receive, because of network error

Cette erreur est normale, je n'ai pas de VPN configuré.

L'ajout de l'IP 10.8.0.1 est un exemple pour autoriser l'IP d'un VPN.

L'IP 10.8.0.1 n'a pas besoin d'être ajoutée dans la configuration dans mon cas.

Note - Effacer le cache DNS sous Debian

Les 3 services suivants ne sont pas installés par défaut.

Ils peuvent servir à effacer le cache des DNS.

# /etc/init.d/nscd restart
# /etc/init.d/dnsmasq restart
# /etc/init.d/named restart

Installer et configurer unbound sur GNU Linux Mint Sarah

Installer unbound : sudo apt-get install unbound.
Le fichier de configuration présenté en exemple dans la documentation : /usr/share/doc/unbound/examples/unbound.conf.
Modifier le fichier de configuration de unbound installé par défaut : /etc/unbound/unbound.conf.
Remplacer le contenu avec cette configuration fonctionnelle : /etc/unbound/unbound.conf.
Dans ce fichier, penser à modifier le nom du domaine local et l'adresse IP de l'interface réseau.

Les détails du paquet unbound sur GNU Linux Mint Sarah

apt-cache show unbound
Package: unbound
Priority: optional
Section: universe/net
Installed-Size: 2054
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Debian DNS Packaging <[email protected]>
Architecture: amd64
Version: 1.5.8-1ubuntu1
Depends: adduser, dns-root-data, openssl, unbound-anchor, libc6 (>= 2.17), libevent-2.0-5 (>= 2.0.10-stable), libpython2.7 (>= 2.7), libssl1.0.0 (>= 1.0.0)
Filename: pool/universe/u/unbound/unbound_1.5.8-1ubuntu1_amd64.deb
Size: 485258
MD5sum: 7e81dd1035e709fb3c51f25fae2c578f
SHA1: bf7492ec7ae289a45e4a0ba85ab6306204ff004a
SHA256: c200401eaf164013ac5e1efbae13ced04430fb27e73867b159f987d85d0dfffc
Description-en: validating, recursive, caching DNS resolver
Unbound is a recursive-only caching DNS server which can perform DNSSEC
validation of results. It implements only a minimal amount of authoritative
service to prevent leakage to the root nameservers: forward lookups for
localhost, reverse for 127.0.0.1 and ::1, and NXDOMAIN for zones served by
AS112. Stub and forward zones are supported.

This package contains the unbound daemon.
Description-md5: fbeecad8349f6b3042087b256bc69b68
Enhances: munin-node
Homepage: https://www.unbound.net/
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu

Tutoriel du Hollandais volant

Suite aux dernières modifications, le code ci-dessous n'est plus utilisé pour le moment, sur ma configuration.

Todo.png

Dans les paramètres réseau, modifier manuellement la connexion. Depuis l'onglet ipv4 avec la valeur Server : 127.0.0.1 et pour ipv6 Serveur : ::1.

$ sudo sed -i 's/dns=dnsmasq/#dns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf
[sudo] Mot de passe de user :
$ sudo service network-manager restart
$ sudo service unbound stop
# Pour flusher les dns sur ubuntu uniquement : sudo /etc/init.d/dns-clean start
$ sudo /etc/init.d/dns-clean restart
$ sudo unbound -c /etc/unbound/unbound.conf
$ sudo unbound-anchor -a "/var/lib/unbound/root.key"
$ sudo service unbound start
$ nmcli dev show | grep DNS
IP4.DNS[1]:                             192.168.1.1
IP4.DNS[2]:                             127.0.0.1
IP6.DNS[1]:                             ::1
Ko.png Source : https://lehollandaisvolant.net/?d=2015/07/07/23/58/05-installer-son-propre-serveur-dns-sous-ubuntu

Tester la configuration

unbound-checkconf 
/etc/unbound/unbound.conf:71: error: unknown keyword 'prefer-ip6'
/etc/unbound/unbound.conf:71: error: stray ':'
/etc/unbound/unbound.conf:71: error: unknown keyword 'no'
/etc/unbound/unbound.conf:212: error: unknown keyword 'use-systemd'
/etc/unbound/unbound.conf:212: error: stray ':'
/etc/unbound/unbound.conf:212: error: unknown keyword 'yes'
/etc/unbound/unbound.conf:515: error: unknown keyword 'serve-expired'
/etc/unbound/unbound.conf:515: error: stray ':'
/etc/unbound/unbound.conf:515: error: unknown keyword 'no'
/etc/unbound/unbound.conf:708: error: unknown keyword 'ipsecmod-enabled'
/etc/unbound/unbound.conf:708: error: stray ':'
/etc/unbound/unbound.conf:708: error: unknown keyword 'yes'
/etc/unbound/unbound.conf:719: error: unknown keyword 'ipsecmod-max-ttl'
/etc/unbound/unbound.conf:719: error: stray ':'
/etc/unbound/unbound.conf:719: error: unknown keyword '3600'
/etc/unbound/unbound.conf:723: error: unknown keyword 'ipsecmod-ignore-bogus'
/etc/unbound/unbound.conf:723: error: stray ':'
/etc/unbound/unbound.conf:723: error: unknown keyword 'no'
/etc/unbound/unbound.conf:778: error: syntax error
read /etc/unbound/unbound.conf failed: 19 errors in configuration file

Tester le fonctionnement et le cache

Exemple à suivre.

Todo.png

$ dig fark.com A @192.168.1.22

; <<>> DiG 9.8.3-P1 <<>> fark.com A @192.168.1.22
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60299
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;fark.com.          IN  A

;; ANSWER SECTION:
fark.com.       43200   IN  A   64.191.171.200

;; Query time: 234 msec
;; SERVER: 192.168.1.22#53(192.168.1.22)
;; WHEN: Sat Mar 21 13:16:54 2015
;; MSG SIZE  rcvd: 42

Verify the record is now in unbound’s cache.

# unbound-control dump_cache|grep fark.com
ns2.fark.com.   43197   IN  A   23.253.56.58
fark.com.   43197   IN  A   64.191.171.200
ns1.fark.com.   43197   IN  A   64.191.171.194
fark.com.   43197   IN  NS  ns1.fark.com.
fark.com.   43197   IN  NS  ns2.fark.com.

Installer unbound sous Fedora

Source : http://www.dsfc.net/internet/dns/unbound-cache-dns-pour-linux/

Installer unbound sous Windows

Source : http://korben.info/installer-serveur-dns-unbound.html

Vider le cache DNS sous Microsoft Windows

Fonctionne pour les systèmes Win XP, Win ME, Win 2000 et Win 98 :

Démarrer -> Exécuter -> tapez cmd
Dans la fenêtre DOS, tapez ipconfig /flushdns
Et voilà ! Votre cache DNS a été vidé.

Configurer le réseau avec les DNS publiques de Google

Les deux adresses suivantes peuvent être utilisées en même temps, l'une en primaire et l'autre en secondaire.

Adresses IP DNS publiques de Google IPv4

8.8.8.8
8.8.4.4

Adresses IP DNS publiques de Google IPv6

2001: 4860: 4860 :: 8888
2001: 4860: 4860 :: 8844

Utiliser les adresses IP DNS publiques de Google avec Linux

Méthode pour utiliser les DNS publiques de Google.
Suivre cette méthode pour configurer et utiliser d'autres DNS publiques que Google.

Changer de DNS avec /etc/resolv.conf

Ne pas confondre ce fichier de configuration avec le programme resolvconf qui porte presque le même nom.
Configurer /etc/resolv.conf.
Dans le cas le plus simple, c'est ce fichier /etc/resolv.conf qui dresse la liste des serveurs.
Afficher la configuration actuelle de /etc/resolv.conf avec la commande cat /etc/resolv.conf.
Configurer /etc/resolv.conf avec la commande sudo nano /etc/resolv.conf.
Plus d'informations sur /etc/resolv.conf avec le manuel man resolv.conf.
# Commenter les lignes de nameserver qui apparaissent par défaut, ici, sur GNU/Linux Mint.
# nameserver 127.0.2.1
# search 8.8.8.8 2001 4860 8888
# Ajouter plusieurs lignes de nameserver si vous avez plusieurs serveurs de noms de domaine.
# Pour IPv4 :
nameserver 8.8.8.8
nameserver 8.8.4.4
    
# Pour IPv6 :
nameserver 2001:4860:4860::8888
nameserver 2001:4860:4860::8844    
# Pour IPv6 uniquement, vous pouvez utiliser Google Public DNS64 au lieu des adresses IPv6 ci-dessus.
Sauvegarder et quitter.
Redémarrer les clients internet utilisés : sudo /etc/init.d/unbound restart.
Est-ce que unbound est bien le client à redémarrer ?
Noter que d'autres programmes de configuration dynamique remplacent les réglages effectués dans /etc/resolv.conf.
Si le programme resolvconf ou le démon network-manager est utilisé, cette méthode ne marche pas étant donné que ces logiciels génèrent /etc/resolv.conf.
Le logiciel client DHCP écrase également les paramètres de /etc/resolv.conf.
La configuration présentée ne restera pas dans /etc/resolv.conf.
Modifier les paramètres du démon network-manager en mode graphique.
Modifier directement le fichier de configuration du client DHCP.
Sinon, utiliser le programme resolvconf.

Changer de DNS avec network-manager

Si vous utilisez une interface graphique, il est probable que network-manager soit installé.
Si vous ne trouvez pas Connexions réseau comme expliqué ci-dessous, il est probable que network-manager ne soit pas installé.
Si votre distribution n'utilise pas network-manager, vos paramètres DNS sont probablement à configurer dans /etc/resolv.conf.
Depuis le menu de lancement des programmes, faire une recherche sur "Connexions réseau".
Sinon, naviguer avec le menu de lancement des programmes, et chercher dans "Paramètres" ou "Préférences" pour lancer "Connexions réseau".
Sélectionner alors la connexion à configurer.
Depuis l'onglet configuration IPv4 :
Sélectionner la méthode "Adresses automatiques uniquement (DHCP)" et ajouter l'adresse IP du DNS désiré.
Vous pouvez configurer plusieurs résolveurs DNS en les séparant par des espaces.
Pour finir, cliquez sur "Enregistrer".
Pour IPv4 : 8.8.8.8 8.8.4.4 (Un simple espace pour séparer les IPv4.)
Pour IPv6 : 2001: 4860: 4860 :: 8888 2001: 4860: 4860 :: 8844 (Un simple espace pour séparer les IPv6.)
Pour IPv6 : vous pouvez utiliser Google Public DNS64 au lieu des adresses IPv6.
Informations complémentaires sur network-manager depuis le wiki de Debian : https://wiki.debian.org/fr/NetworkManager
Préférer le mode graphique pour configurer network-manager.
Pour une configuration manuelle, vérifier si le fichier de configuration pour network-manager existe avec le chemin : /etc/sysconfig/network-scripts/ifcfg-*.
Modifier à ce moment la le contenu du fichier avec les données suivantes :
DNS1=127.0.0.1
DNS2=8.8.8.8
DNS3=8.8.4.4

Configurer le logiciel client DHCP

# Sauvegarder /etc/resolv.conf.
sudo cp /etc/resolv.conf /etc/resolv.conf.bak
    
# Modifier /etc/dhcp/dhclient.conf sur Debian.
# Modifier /etc/dhcp/dhclient.conf sur GNU/Linux Mint.
sudo nano /etc/dhcp/dhclient.conf
# Si il existe une ligne contenant domain-name-servers, penser à commenter les valeurs existantes.
# Ajouter la ligne suivante :
# Pour IPv4
prepend domain-name-servers 8.8.8.8, 8.8.4.4;
# Pour IPv6
prepend domain-name-servers 2001:4860:4860::8888, 2001:4860:4860::8844;
# Pour IPv6 uniquement, vous pouvez utiliser Google Public DNS64 au lieu des adresses IPv6 ci-dessus.
Sauvegarder, quitter l'éditeur.
Redémarrer les clients internet utilisés : sudo /etc/init.d/unbound restart.
Tester le fonctionnement de la configuration.
Problème actuel - Pas d'accès à mon site internet depuis le domicile - Message posté sur Debian User french : https://lists.debian.org/debian-user-french/2017/08/msg00054.html

Changer de DNS avec le programme resolvconf

Pour des réglages complexes, utiliser resolvconf est le bon choix.
Pour des configurations simples, c'est probablement excessif.
Le programme resolvconf garde la trace des informations du système sur les serveurs de noms de domaine actuellement disponibles.
Le programme resolvconf s'occupe de synchroniser /etc/resolv.conf.
Le programme resolvconf est optionnel sur les systèmes Debian.
Il agit comme un intermédiaire entre les programmes qui fournissent des informations sur les serveurs de noms de domaine (par exemple les clients dhcp) et les programmes qui les utilisent (par exemple resolver).
Quand resolvconf est correctement installé, le fichier de configuration /etc/resolv.conf est remplacé par un lien symbolique pointant vers le fichier /etc/resolvconf/run/resolv.conf.
Le résolveur utilisera le fichier de configuration généré dynamiquement par resolvconf à cet emplacement /etc/resolvconf/run/resolv.conf.
Le programme resolvconf est en général seulement nécessaire quand un système a plusieurs programmes qui ont besoin de modifier de façon dynamique les informations sur les serveurs de noms de domaine.
Sur un système simple où les serveurs de noms de domaine ne changent pas souvent ou bien ne sont modifiés que par un programme, le fichier de configuration /etc/resolv.conf est suffisant.
Si le programme resolvconf est installé, vous n'aurez pas à modifier à la main le fichier de configuration resolv.conf car il sera changé de façon dynamique par les programmes.
Si vous avez besoin de définir vous-même les serveurs de noms de domaine, comme pour une interface statique, ajouter au fichier de configuration interfaces du répertoire /etc/network/interfaces une ou plusieurs ligne(s) :
dns-nameservers 12.34.56.78 12.34.56.79
Mettez la ligne indentée dans un paragraphe iface, par exemple juste après la ligne gateway.
Entrez les adresses IP des serveurs de noms de domaine dont vous avez besoin après dns-nameservers, toutes sur la même ligne, séparées par des espaces.
Le programme resolvconf est un ajout plutôt récent à Debian et plusieurs anciens programmes ont besoin d'être mis à jour ou reconfigurés pour fonctionner correctement avec lui.
Si vous rencontrez des problèmes, regardez /usr/share/doc/resolvconf/README qui contient des informations sur la manière de faire fonctionner resolvconf avec d'autres programmes.

Tester

Dans votre navigateur, entrez une URL de nom d'hôte (comme http://www.google.com/ ). Si cela se résout correctement, marquez la page et essayez d'accéder à la page à partir du signet.
Si vous utilisez Google Public DNS64 sur un système IPv6 uniquement, répétez le test ci-dessus avec une URL de nom d'hôte IPv4 uniquement comme http://ipv4.google.com. 
Si ces tests fonctionnent, tout fonctionne correctement.
Sinon, passez à l'étape suivante :
Dans votre navigateur, saisissez une adresse IP fixe. Vous pouvez utiliser http://216.218.228.119 qui pointe sur le site test-ipv6.com
Si vous utilisez Google Public DNS64 sur un système IPv6 uniquement, utilisez http://[64:ff9b::d8da:e477] comme URL à la place.
Si ce test ne fonctionne pas, vous n'avez pas accès à une passerelle NAT64 au préfixe réservé 64:ff9b::/96 et ne pouvez pas utiliser Google Public DNS64.
Si vous utilisez un système IPv6 uniquement sans Google Public DNS64, utiliser http://[2001:470:1:18::119] comme URL à la place. 
Si cela fonctionne correctement, marquer la page et essayez d'accéder à la page à partir du signet. Si ces tests fonctionnent mais que la première étape échoue), c'est qu'il y a un problème avec votre configuration DNS.
Vérifier les étapes ci-dessus pour vous assurer que vous avez tout configuré correctement.
Réinitialiser les modifications DNS que vous avez effectuées et exécuter les tests à nouveau.
Si les tests ne fonctionnent toujours pas, il y a un problème avec vos paramètres réseau.
Ok-ko.png Configurer les DNS Publiques de Google pour Windows, Mac OS et Linux - Ainsi que pour routeur et mobile : https://developers.google.com/speed/public-dns/docs/using
Ko.png Résolution des erreurs : https://developers.google.com/speed/public-dns/docs/troubleshooting
Ko.png Google Publique DNS64 : https://developers.google.com/speed/public-dns/docs/dns64

Configurer le réseau avec des DNS publiques différents de Google

Obtenir d'autres DNS avec la commande host mondns.eu.org

OpenDNS

Site officiel : https://www.opendns.com
Les DNS IPv4 de OpenDNS 
208.67.222.222,208.67.220.220

Exemple pour le fichier de configuration /etc/dhcp/dhcpclient.conf : https://pastebin.com/pj3gLv3v

Le fichier /etc/hosts du 8 Août 2017 : GNU_Linux_etc_hosts_8_Aout_2017.

Opennicproject

Serveurs DNS 100% neutres, gratuits, sans tracking et libre de toute censure gouvernementale.

À l'origine, OpenNIC est un serveur racine qui se veut être une alternative à l'ICANN.

Il résolvait uniquement ses propres extensions de noms de domaine (TLD) mais depuis 2006, il résout de la même façon que l'ICANN.

Transparent par rapport aux DNS que vous utilisez actuellement sauf qu'en plus, il résout des extensions amusantes comme le .geek ou le .free.

Ok-ko.png https://www.opennic.org
Ok-ko.png https://www.opennicproject.org
Ok-ko.png https://wiki.opennic.org/start
Ok-ko.png https://servers.opennicproject.org
Ok-ko.png Proposer votre propre serveur TLD : https://wiki.opennic.org/doku.php

Exemple :

ns10.fr.dns.opennic.glue
IPv4 87.98.175.85
IPv6 2001:41d0:2:73d4::100

PuntCAT

Site officiel : http://www.servidordenoms.cat

109.69.8.51
2a00:1508:0:4::9

FDN

Site officiel : https://www.fdn.fr/actions/dns/

IPv4 80.67.169.12 et 80.67.169.40
IPv6 2001:910:800::12 et 2001:910:800::40
Vérification du fonctionnement ns0.fdn.org et ns1.fdn.org

Censurfridns

Utiliser les Resolver d'activistes, au Danemark, pour un internet libre.

Exemple :

anycast.censurfridns.dk / 91.239.100.100 / 2001:67c:28a4::
ns1.censurfridns.dk / 89.233.43.71 / 2002:d596:2a92:1:71:53::
Ok-ko.png http://www.censurfridns.dk

Autres possibilités pour changer de DNS

Comodo

Source : https://www.comodo.com/secure-dns/
8.26.56.26
8.20.247.20

Verisign

Source : htttp://www.verisign.com/fr_FR/innovation/public-dns

German Privacy Foundation

87.118.100.175 (Ports: 53, 110)
94.75.228.29 (Ports: 53, 110, DNSSEC)
87.118.104.203 (Ports: 53, 110,DNSSEC)
62.141.58.13 (Ports: 53, 110, HTTPS-DNS, DNSSEC)
87.118.109.2 (Ports: 53, 110, DNSSEC)

He

Source : http://he.net

DNS Advantage

https://www.neustar.biz/security/dns-services

156.154.70.1
156.154.71.1

SecureDNS

Source : http://securedns.dnsbycomodo.com

Norton

Source : https://dns.norton.com

Une liste de DNS publiques gratuits

Source : http://greycoder.com/list-free-public-domain-name-services-dns/

Tester les DNS les plus appropriés

Source : https://code.google.com/p/namebench/

Vérifier que vous n'avez pas un DNS Leak ou un VPN en rade

Source : http://whoer.net
Source : http://browserspy.dk
Source : https://dnsleaktest.com

Désactiver IP6 qui présente des risques de leak

Source : http://ipv6leak.com

Notes complémentaires à vérifier

Ajouter un local-zone

Conseil de Ascito, membre actif sur Développez.

Todo.png

#/etc/unbound/unbound.conf.d % sudo gedit root-auto-trust-anchor-file.conf
local-zone: "googleadservices.com" redirect 
local-data: "googleadservices.com A 127.0.0.1"

Ralentissements sur facebook.fr

Ici mon objectif initial est de trouver des informations sur le ralentissement de facebook qui le rendent inutilisable.

fbstatic-a.akamaihd.net contribue souvent au ralentissement.

Vider le cache de unbound pour un seul domaine

sudo unbound-control flush_zone fbstatic-a.akamaihd.net

Afficher les ip des DNS de notre configuration

nmcli dev show | grep DNS

IP4.DNS[1]:                             192.168.1.1
IP4.DNS[2]:                             127.0.0.1
IP6.DNS[1]:                             ::1

Vérifier le status de unbound

sudo unbound-control status

version: 1.5.8
verbosity: 1
threads: 1
modules: 2 [ validator iterator ]
uptime: 4723 seconds
options: control(ssl)
unbound (pid 2698) is running...

Utiliser la commande nslookup

nslookup facebook.com

Server:		127.0.0.1
Address:	127.0.0.1#53

Non-authoritative answer:
Name:	facebook.com
Address: 31.13.71.36

La réponse Non-authoritative answer est essentiellement une réponse en cache ou transmise à partir du serveur DNS local, ici, unbound.

Fondamentalement, un serveur de noms non autorisé est celui qui ne contient pas les enregistrements de la zone interrogée.

Le DNS local n'aura probablement pas les enregistrements de noms de facebook, par exemple.

On obtient les serveurs de noms autorisés pour un domaine donné avec host -t ns facebook.com

host -t ns facebook.com
facebook.com name server a.ns.facebook.com.
facebook.com name server b.ns.facebook.com.

Exécuter la commande nslookup avec un de ces serveurs, par exemple nslookup facebook.com a.ns.facebook.com, la réponse est autorisée.

Server:	a.ns.facebook.com
Address:	69.171.239.12#53

Name:	facebook.com
Address: 31.13.77.36

Retourner un enregistrement NS avec nslookup. Saisir nslookup. Un prompt apparait. Saisir set type=NS puis entrée. Saisir le domaine puis entrée. Le résultat est affiché.

nslookup
> set type=NS
> facebook.com
Server:	127.0.0.1
Address:	127.0.0.1#53

Non-authoritative answer:
facebook.com	nameserver = a.ns.facebook.com.
facebook.com	nameserver = b.ns.facebook.com.

Authoritative answers can be found from:
a.ns.facebook.com	has AAAA address 2a03:2880:fffe:c:face:b00c:0:35
a.ns.facebook.com	internet address = 69.171.239.12
b.ns.facebook.com	has AAAA address 2a03:2880:ffff:c:face:b00c:0:35
b.ns.facebook.com	internet address = 69.171.255.12

Installer traceroute

sudo apt install traceroute

Modifier le fichier hosts

Changer l'ip cible de facebook pour une destination plus proche ?

Activer IPV6 sur la Box

Todo.png

Ajouter une adresse IP statique pour Facebook

Source : http://vinodkotiya.blogspot.fr/2010/02/solution-for-facebook-staticakfbcdnnet.html

Utiliser un VPN

Le VPN ne va pas vous aider à surfer plus vite, mais, il peut, dans le cas de ralentissements anormaux, vous aider à obtenir une connexion à facebook.

https://www.le-vpn.com/fr/debloquer-facebook/

Résolution du problème de ralentissement sur facebook

Un reboot de la box orange peut permettre de pouvoir naviguer à nouveau normalement.

Seul le site Facebook et Discord ont été ralentis.

Autres serveurs DNS

BIND

Plus complexe que unbound qui est peut être plus approprié pour les novices et les personnes pressées.

Soit résolveur, soit serveur faisant autorité. Ne pas faire les deux. Monter une machine, pour chaque tâche.

Ok-ko.png Vidéo : https://www.youtube.com/watch?v=KFHZL6bxsUo
Source : https://www.isc.org/downloads/bind/
Source : https://doc.ubuntu-fr.org/bind9

DNSMasq

Source : https://doc.ubuntu-fr.org/configuration_serveur_dns_dhcp

Depuis Ubuntu 12.04, network-manager intègre DNSMasq ce qui provoque des perturbations dans la résolution DNS pour un réseau local reposant sur Bind9 par exemple.

Le symptôme est simple, parfois l'infrastructure DNS fonctionne, parfois non. La solution ici est de désactiver DNSMasq dans network-manager.

sudo nano /etc/NetworkManager/NetworkManager.conf

Et de commenter la ligne "dns=dnsmasq" de cette façon:

#dns=dnsmasq

Il faut aussi désactiver le service dnsmasq au démarrage :

sudo update-rc.d -f dnsmasq remove

Redémarrer network-manager.

sudo service network-manager restart

PowerDNS

Source : https://doc.ubuntu-fr.org/pdns

D'autres liens à consulter

Ok-ko.png Avoir son propre résolveur : http://www.bortzmeyer.org/son-propre-resolveur-dns
Ok-ko.png https://homeserver-diy.net/wiki/index.php?title=Installer_et_configurer_son_serveur_DNS_connect%C3%A9_aux_serveurs_root_avec_Unbound#Installation_d.27Unbound
Ok-ko.png https://www.dsfc.net/infrastructure/reseau/passage-de-unbound-et-dnscrypt-en-ipv6-sous-windows/
Ok-ko.png https://blog.heckel.xyz/2013/07/18/how-to-dns-spoofing-with-a-simple-dns-server-using-dnsmasq/
Ok-ko.png https://www.debian-fr.org/t/unbound-resolution-delegation-noms-locaux-non-qualifies/55023
Ok-ko.png https://homeserver-diy.net/wiki/index.php?title=Installer_et_configurer_son_serveur_DNS_connect%C3%A9_aux_serveurs_root_avec_Unbound
Ok-ko.png http://www.commentcamarche.net/contents/518-dns-systeme-de-noms-de-domaine
Ok-ko.png https://linuxfr.org/forums/general-general/posts/probleme-de-dns-avec-bbox
Ok-ko.png https://technet.microsoft.com/fr-fr/library/cc754143(v=ws.11).aspx
Ok-ko.png https://korben.info/installer-unbound-serveur-dns-sous-linux.html
Ok-ko.png https://openclassrooms.com/courses/gerer-son-nom-de-domaine
Ok-ko.png http://assiste.com/Comment_vider_le_cache_DNS_de_Linux.html
Ok-ko.png http://korben.info/installer-serveur-dns-unbound.html
Ok-ko.png http://korben.info/dns-google.html
Ok-ko.png https://doc.ubuntu-fr.org/unbound
Ok-ko.png https://doc.ubuntu-fr.org/utilisateurs/vrinse/brouillons/unbound_brouillon
Ok-ko.png https://freedom-ip.com/forum/viewtopic.php?id=399
Ok-ko.png https://korben.info/installer-serveur-dns-unbound.html
Ok-ko.png https://doc.ubuntu-fr.org/configuration_serveur_dns_dhcp
Ok-ko.png https://doc.ubuntu-fr.org/dns_dynamique
Ok-ko.png https://doc.ubuntu-fr.org/pdns
Ok-ko.png https://memo-linux.com/ubuntu-serveur-dns-unbound/
Ok-ko.png https://memo-linux.com/dnscrypt-dnsmasq-sur-archlinuxmanjaro-chiffrez-toutes-les-requetes-dns/
Ok-ko.png https://calomel.org/unbound_dns.html
Ok-ko.png http://papy-tux.legtux.org/archives/debian8/doc1150/index.php
Ok-ko.png https://homeserver-diy.net/wiki/index.php?title=Installer_et_configurer_son_serveur_DNS_connect%C3%A9_aux_serveurs_root_avec_Unbound

Définir une IP statique avec Debian et Ubuntu

Ok-ko.png http://www.lolokai.com/blog/2012/11/09/definir-une-adresse-ip-statique-sous-debianubuntu/

Consulter pdns-tools

pdns-tools - Tools for DNS debugging by PowerDNS

Créer un tunnel avec ICMP Tunnel

Rappel sur les tunnels

Source : http://www-igm.univ-mlv.fr/~dr/XPOSE2012/tunneling/les_tunnels.html

Contourner un filtrage

Changer de DNS ne suffit pas pour contourner un filtrage.

Il faut utiliser un VPN ou un tunnel ICMP.

Ok-ko.png http://www.commentcamarche.net/contents/521-le-protocole-icmp
Ok-ko.png https://korben.info/icmp-tunnel.html
Ok-ko.png https://anaelroland.shost.ca/icmp-tunnel-pour-surfer-meme-quand-tout-est-bloque/
Ok-ko.png Source : https://github.com/DhavalKapil/icmptunnel
Ok-ko.png https://en.wikipedia.org/wiki/ICMP_tunnel
Logiciel pour lancer un tunnel ICMP sous Windows : https://sourceforge.net/projects/itun/?SetFreedomCookie
Ok-ko.png http://www.linux-france.org/prj/edu/archinet/systeme/ch09s02.html

Bibliographie

Ok.png Debian installer le serveur DNS unbound : https://memo-linux.com/debian-installer-le-serveur-dns-unbound/
Ok.png Conférence sur le DNS, par Stéphane Bortzmeyer : http://www.iletaitunefoisinternet.fr/dns-bortzmeyer/
Ok.png Configure your network settings to use Google Public DNS : https://developers.google.com/speed/public-dns/docs/using?csw=1
Ok.png Installer unbound serveur DNS sous Linux : https://korben.info/installer-unbound-serveur-dns-sous-linux.html

NAVIGATION

CHERCHER UNE AUTRE PAGE SUR LE WIKI

D'autres pages du wiki peuvent correspondre à vos attentes. Utiliser la recherche interne du wiki pour trouver votre contenu.
Vous pouvez aussi utiliser les différents sommaires du wiki : Accueil --- Sommaire des projets --- Sommaire des tutoriels pour webmaster --- Sommaire We make Hack.

COMPRENDRE LA BLOCKCHAIN PAR LA PRATIQUE

Obtenir gratuitement de la cryptomonnaie sur internet : https://www.visionduweb.eu/forum/bitcoin/1597-gagner-des-bitcoins-miner-des-bitcoins

LIRE ET PARTAGER

Les pages présentées sur le wiki évoluent tous les jours.
Certaines recherches sont peu abouties et incluent des erreurs.
Les informations présentes sur cette page sont issues d'une recherche personnelle.
Vous pouvez partager les liens du wiki avec l'ensemble de la communauté des internautes.
Vous pouvez améliorer le contenu du wiki collaboratif en participant depuis l'onglet discussion.

SOUTENIR VISIONDUWEB

Soutenir Vision du web avec quelques Bitcoins : 33ZsupGQr1rUmwj62HadcZ55hsGJajD9wN
Soutenir Vision du web avec quelques Blackcoins : B6MyLMPtzg8D15mHt8jYi7nVjYWEyVXJzA
Soutenir Vision du web avec quelques Dogecoins : A64jhqCgsUyrUCPte6fV3BcG2Y7daH13Ym
Soutenir Vision du web avec quelques Ethereum : 0x0E4D6B7A1F88A56A1A66bf408c72FAE3d104D632
Soutenir Vision du web avec quelques Litecoins : 3LKigW6TCS5MvXrZFGh8VMEtZf6MtE86iz