Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
logiciel:internet:dnsmasq:raspi:start [2021/02/17 15:45] – ↷ Liens modifiés en raison d'un déplacement. admin | logiciel:internet:dnsmasq:raspi:start [2022/08/13 22:14] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
{{tag> | {{tag> | ||
- | ====== | + | ====== |
Voici un schéma des serveurs DNS ; le Raspberry Pi est au bas de l' | Voici un schéma des serveurs DNS ; le Raspberry Pi est au bas de l' | ||
Ligne 29: | Ligne 29: | ||
<WRAP center round info 60%> | <WRAP center round info 60%> | ||
- | Voici un exemple de réseau dans lequel un RPI est le serveur DNS : | + | Voici un exemple de réseau dans lequel un Raspberry Pi est le serveur DNS : |
<a2s> | <a2s> | ||
# | # | ||
Ligne 41: | Ligne 41: | ||
|[freebox-server] | | |[freebox-server] | | ||
| 192.168.0.254 | | 192.168.0.254 | ||
- | | | + | | | | | | |
# | # | ||
| | | | | | | | ||
Ligne 75: | Ligne 75: | ||
</ | </ | ||
- | ====== Pré-requis | + | ===== Pré-requis ===== |
- | ====== Installation | + | ===== Installation ===== |
- Connectez-vous à votre Raspberry Pi via SSH | - Connectez-vous à votre Raspberry Pi via SSH | ||
Ligne 85: | Ligne 85: | ||
DNSMasq est maintenant installé. | DNSMasq est maintenant installé. | ||
- | ====== Configuration | + | |
+ | ===== Configuration ===== | ||
Voir : | Voir : | ||
* [[logiciel: | * [[logiciel: | ||
- | * [[logiciel: | + | * [[logiciel: |
<WRAP center round important 60%> On ne touche pas à : | <WRAP center round important 60%> On ne touche pas à : | ||
Ligne 104: | Ligne 105: | ||
^/ | ^/ | ||
</ | </ | ||
- | ===== Configuration du Raspberry | + | |
+ | ==== Configuration du Raspberry ==== | ||
<WRAP center round important 60%> | <WRAP center round important 60%> | ||
Ligne 126: | Ligne 128: | ||
</ | </ | ||
- | ===== Fichier /etc/hosts du serveur DNS ===== | + | ==== Fichier /etc/hosts du serveur DNS ==== |
<WRAP center round important 60%> | <WRAP center round important 60%> | ||
Ligne 133: | Ligne 135: | ||
La freebox-server est en effet configurée en IP statique sur la freebox (192.168.0.254). Elle ne lance pas de requête DHCP -> dnsmasq ne reçoit donc pas de requête DHCP de la part de la freebox. | La freebox-server est en effet configurée en IP statique sur la freebox (192.168.0.254). Elle ne lance pas de requête DHCP -> dnsmasq ne reçoit donc pas de requête DHCP de la part de la freebox. | ||
- | De même pour le RPI qui héberge le serveur dnsmasq et est configuré en IP statique (bail statique dans la box ou fichier / | + | De même pour le Raspberry Pi qui héberge le serveur dnsmasq et est configuré en IP statique (bail statique dans la box ou fichier / |
Mais en mettant ces adresses dans /etc/hosts, dnsmasq est configuré par défaut pour les lire. | Mais en mettant ces adresses dans /etc/hosts, dnsmasq est configuré par défaut pour les lire. | ||
Ligne 148: | Ligne 150: | ||
</ | </ | ||
- | ===== Fichier / | + | ==== Fichier / |
Voir [[http:// | Voir [[http:// | ||
Ligne 235: | Ligne 237: | ||
</ | </ | ||
- | ===== Fichier / | + | ==== Fichier / |
<WRAP center round tip 60%> | <WRAP center round tip 60%> | ||
Ligne 271: | Ligne 273: | ||
</ | </ | ||
- | ===== Journalisation | + | ==== Journalisation ==== |
Lorsqu' | Lorsqu' | ||
Ligne 291: | Ligne 293: | ||
</ | </ | ||
- | ===== Les adresses IP statiques | + | ==== Les adresses IP statiques ==== |
Solution sur framboise : | Solution sur framboise : | ||
Ligne 303: | Ligne 305: | ||
</ | </ | ||
- | ==== Contenu de /etc/hosts de framboise | + | === Contenu de /etc/hosts de framboise === |
On spécifie les hôtes avec une adresse IP statique, donc non allouée pas dnsmasq. | On spécifie les hôtes avec une adresse IP statique, donc non allouée pas dnsmasq. | ||
Ligne 312: | Ligne 314: | ||
</ | </ | ||
- | ==== Contenu de / | + | === Contenu de / |
Ce fichier spécifie le serveur DNS à utiliser, donc renvoie vers dnsmasq qui est installé sur cette machine. | Ce fichier spécifie le serveur DNS à utiliser, donc renvoie vers dnsmasq qui est installé sur cette machine. | ||
Ligne 320: | Ligne 322: | ||
</ | </ | ||
- | ==== Contenu de / | + | === Contenu de / |
Cf la page officielle de man en français : [[http:// | Cf la page officielle de man en français : [[http:// | ||
- | recopiée ici : [[logiciel: | + | recopiée ici : [[logiciel: |
Les directives de configuration seront écrites dans un fichier **/ | Les directives de configuration seront écrites dans un fichier **/ | ||
Ligne 411: | Ligne 413: | ||
<WRAP center round box 60%> | <WRAP center round box 60%> | ||
- | | + | |
: Interdit à Dnsmasq de transmettre en amont les requêtes de noms simples (sans point ni nom de domaine). | : Interdit à Dnsmasq de transmettre en amont les requêtes de noms simples (sans point ni nom de domaine). | ||
* Si le nom n'est pas dans **/ | * Si le nom n'est pas dans **/ | ||
* Avec **bogus-priv**, | * Avec **bogus-priv**, | ||
- | | + | |
: dnsmasq ne transmet pas aux serveurs DNS amont les requêtes DNS inverses pour des adresses IP privées (ie 192.168.x.x, | : dnsmasq ne transmet pas aux serveurs DNS amont les requêtes DNS inverses pour des adresses IP privées (ie 192.168.x.x, | ||
* Il retourne dans ce cas “no such domain”. | * Il retourne dans ce cas “no such domain”. | ||
- | | + | |
: taille du cache de Dnsmasq | : taille du cache de Dnsmasq | ||
* valeur par défaut : 150 noms. | * valeur par défaut : 150 noms. | ||
* une valeur de zéro désactive le cache. | * une valeur de zéro désactive le cache. | ||
- | | + | |
: domaine du serveur DHCP. | : domaine du serveur DHCP. | ||
* Ce domaine local sera ajouté aux noms des machines assignées par le DHCP | * Ce domaine local sera ajouté aux noms des machines assignées par le DHCP | ||
Ligne 442: | Ligne 444: | ||
* Si la valeur fournie pour < | * Si la valeur fournie pour < | ||
* La gamme d' | * La gamme d' | ||
- | | + | |
: Ajoute le nom de domaine < | : Ajoute le nom de domaine < | ||
* contenus dans le fichier **/ | * contenus dans le fichier **/ | ||
* et pour le service DHCP | * et pour le service DHCP | ||
- | | + | |
: Lit les adresses des serveurs de nom amont dans le fichier de nom < | : Lit les adresses des serveurs de nom amont dans le fichier de nom < | ||
* Pour le format de ce fichier, voir dans le manuel pour resolv.conf(5) les entrées correspondant aux serveurs de noms (nameserver). | * Pour le format de ce fichier, voir dans le manuel pour resolv.conf(5) les entrées correspondant aux serveurs de noms (nameserver). | ||
* Dnsmasq peut lire plusieurs fichiers de type resolv.conf, | * Dnsmasq peut lire plusieurs fichiers de type resolv.conf, | ||
* Seul le dernier fichier modifié sera chargé en mémoire. | * Seul le dernier fichier modifié sera chargé en mémoire. | ||
- | | + | |
: adresse IP d'un serveur de nom amont. | : adresse IP d'un serveur de nom amont. | ||
* Cette option n' | * Cette option n' | ||
Ligne 477: | Ligne 479: | ||
* si une adresse IP est donnée, alors l' | * si une adresse IP est donnée, alors l' | ||
* L' | * L' | ||
- | | + | |
- | | + | |
: définit une adresse IP pour la machine nom_machine ; on peut mettre plusieurs lignes. | : définit une adresse IP pour la machine nom_machine ; on peut mettre plusieurs lignes. | ||
: exemples :< | : exemples :< | ||
Ligne 491: | Ligne 493: | ||
</ | </ | ||
- | Pour renseigner ce fichier, voir [[logiciel: | + | Pour renseigner ce fichier, voir [[logiciel: |
C'est tout. Redémarrer le service en tapant la commande :< | C'est tout. Redémarrer le service en tapant la commande :< | ||
Ligne 508: | Ligne 510: | ||
</ | </ | ||
- | + | ==== Un exemple ==== | |
- | ===== Un exemple | + | |
Créer un petit intranet «maison» : | Créer un petit intranet «maison» : | ||
Ligne 538: | Ligne 539: | ||
|machineX|mondomaine.lan|machineX.mondomaine.lan|192.168.0.X| | |machineX|mondomaine.lan|machineX.mondomaine.lan|192.168.0.X| | ||
- | ===== Configuration des adresses | + | ==== Configuration des adresses ==== |
Déclarer le serveur DNS d' | Déclarer le serveur DNS d' | ||
Ligne 544: | Ligne 545: | ||
Les adresses de DNS du fournisseur d' | Les adresses de DNS du fournisseur d' | ||
- | ==== Fixer l’adresse IP du serveur | + | === Fixer l’adresse IP du serveur === |
éditez avec les droits d' | éditez avec les droits d' | ||
Ligne 567: | Ligne 568: | ||
</ | </ | ||
- | ===== Configuration des noms d' | + | ==== Configuration des noms d' |
- | ==== Fichier / | + | === Fichier / |
éditez avec les droits d' | éditez avec les droits d' | ||
Ligne 580: | Ligne 581: | ||
* < | * < | ||
- | ==== Fichier / | + | === Fichier /etc/hosts === |
Éditez avec les droits d' | Éditez avec les droits d' | ||
Ligne 589: | Ligne 590: | ||
</ | </ | ||
- | ==== Fichier / | + | === Fichier / |
Éditez avec les droits d' | Éditez avec les droits d' | ||
Ligne 598: | Ligne 599: | ||
</ | </ | ||
- | ==== Fichier / | + | === Fichier / |
Éditez avec les droits d' | Éditez avec les droits d' | ||
Ligne 608: | Ligne 609: | ||
</ | </ | ||
- | + | ==== Configuration de l' | |
- | ===== Configuration de l' | + | |
La dernière étape consiste à configurer votre ordinateur pour utiliser le Raspberry Pi comme serveur DNS. Pour ce faire, vous avez deux options : | La dernière étape consiste à configurer votre ordinateur pour utiliser le Raspberry Pi comme serveur DNS. Pour ce faire, vous avez deux options : | ||
Ligne 616: | Ligne 616: | ||
* **Sous Ubuntu / Debian**, vous pouvez le modifier directement dans le fichier / | * **Sous Ubuntu / Debian**, vous pouvez le modifier directement dans le fichier / | ||
- **Configuration DHCP** (sans doute le meilleur choix) : L' | - **Configuration DHCP** (sans doute le meilleur choix) : L' | ||
- | ====== Utilisation ====== | ||
- | ===== Tests ===== | + | ===== Utilisation |
+ | |||
+ | ==== Tests ==== | ||
- Vérifiez que le serveur DNS fonctionne correctement :<cli prompt=' | - Vérifiez que le serveur DNS fonctionne correctement :<cli prompt=' | ||
Ligne 639: | Ligne 640: | ||
* Vous pouvez également essayer de résoudre l' | * Vous pouvez également essayer de résoudre l' | ||
- | ===== Vérification | + | ==== Vérification ==== |
Pour vérifier, lancer depuis un PC du réseau :< | Pour vérifier, lancer depuis un PC du réseau :< | ||
Ligne 666: | Ligne 667: | ||
$ dig -x @IP_du_serveur</ | $ dig -x @IP_du_serveur</ | ||
- | ===== Quelques autres commandes utiles | + | ==== Quelques autres commandes utiles ==== |
* classique :< | * classique :< | ||
* < | * < | ||
- | ===== Pour aller plus loin ===== | + | ==== Pour aller plus loin ==== |
Voici quelques définitions utiles à la compréhension et au paramétrage du DNS : | Voici quelques définitions utiles à la compréhension et au paramétrage du DNS : | ||
- | | + | |
: s’occupe des enregistrements DNS d’un domaine enregistré ou non (par exemple pour le cas d’un réseau local fermé comme celui de notre tuto maison.lan) | : s’occupe des enregistrements DNS d’un domaine enregistré ou non (par exemple pour le cas d’un réseau local fermé comme celui de notre tuto maison.lan) | ||
- | | + | |
: ensemble des enregistrements DNS pour un nom de domaine. Il existe une zone de recherche directe (correspondance entre le nom d’hôte et l’adresse IP) et une zone de recherche inverse (correspondance entre l’adresse IP et le nom d’hôte) | : ensemble des enregistrements DNS pour un nom de domaine. Il existe une zone de recherche directe (correspondance entre le nom d’hôte et l’adresse IP) et une zone de recherche inverse (correspondance entre l’adresse IP et le nom d’hôte) | ||
- | | + | |
: assure la redondance du serveur maître et prend le relais de celui-ci en cas de panne | : assure la redondance du serveur maître et prend le relais de celui-ci en cas de panne | ||
- | | + | |
: une réplication du serveur maître utilisé comme sauvegarde | : une réplication du serveur maître utilisé comme sauvegarde | ||
- | | + | |
: stocke les requêtes déjà résolues ce qui permet d’économiser la bande passante et de réduire le temps de latence | : stocke les requêtes déjà résolues ce qui permet d’économiser la bande passante et de réduire le temps de latence | ||
Maintenant vous disposez d’un serveur DNS digne de ce nom (sans faire de jeu de mots). Le DNS est important surtout si vous souhaitez installer d’autres services comme la messagerie par exemple. | Maintenant vous disposez d’un serveur DNS digne de ce nom (sans faire de jeu de mots). Le DNS est important surtout si vous souhaitez installer d’autres services comme la messagerie par exemple. | ||
- | ===== Cohabitation avec systemd | + | ==== Cohabitation avec systemd ==== |
Voir : | Voir : | ||
Ligne 697: | Ligne 698: | ||
- [[https:// | - [[https:// | ||
- | ===== Problèmes rencontrés | + | ==== Problèmes rencontrés ==== |
* [[tutoriel: | * [[tutoriel: | ||
* [[tutoriel: | * [[tutoriel: | ||
- | ===== Questions et Réponses | + | ==== Questions et Réponses ==== |
~~FAQ~~ | ~~FAQ~~ | ||
- | =?== depuis Ubuntu 18.04 ==== | + | =?= depuis Ubuntu 18.04 === |
??? Cohabitation avec systemd : depuis Ubuntu 18.04, dnsmasq ne fait plus de résolution DNS | ??? Cohabitation avec systemd : depuis Ubuntu 18.04, dnsmasq ne fait plus de résolution DNS | ||
!!! Solution de contournement : désactiver le resolver natif **systemd-resolved.service** et utiliser **dnsmasq**. | !!! Solution de contournement : désactiver le resolver natif **systemd-resolved.service** et utiliser **dnsmasq**. | ||
Ligne 756: | Ligne 756: | ||
source : [[https:// | source : [[https:// | ||
- | ====== Désinstallation | + | ===== Désinstallation ===== |
Pour supprimer cette application, | Pour supprimer cette application, | ||
Ligne 764: | Ligne 764: | ||
Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés. | Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés. | ||
- | ====== Voir aussi ====== | + | ===== Voir aussi ===== |
+ | * **(fr)** [[https:// | ||
* **(en)** [[https:// | * **(en)** [[https:// | ||
* **(fr)** [[http:// | * **(fr)** [[http:// | ||
Ligne 771: | Ligne 772: | ||
* **(fr)** [[http:// | * **(fr)** [[http:// | ||
* **(fr)** [[http:// | * **(fr)** [[http:// | ||
- | * **(en)** [[https:// | ||
---- | ---- | ||
- | //Basé sur << [[https:// | + | //Basé sur << [[https:// |