Ce serveur à la base me sert pour héberger des applications non critiques ou secondaires (pour redondance).
Pour résoudre les noms, par défaut, je préfère passer par un résolveur local (127.0.0.1 avec powerdns-recursor sur le port 53) plutôt que d’interroger un résolveur distant (1.1.1.1) directement. Question de temps et de design de mon image de base (je charge des images KVM déjà préconfigurées).
A coté de ça, j’ai un VPS OVH qui ne me servait uniquement que de serveur DNS secondaire. Quand je dis serveur DNS secondaire, je parle d’un vrai serveur, qui gère des zones, pas d’un bête resolveur.
Je souhaiterais libérer ce VPS OVH qui ne me sert qu’à ça, mais du coup il faut que mette mon DNS secondaire quelquepart. L’idée m’est donc venue de la mettre sur une de mes VM KVM, et donc sur cette VM qui me sert plus ou moins pour de la redondance.
Donc j’installe mon pdns-server sur cette machine, je fais la conf, mais celui-ci refuse de démarrer puisque sur le port 53 j’ai déjà pdns-recursor qui écoute. J’ai donc changé le local-port de pdns-recursor pour le mettre sur le 5353.
Mais lorsque je fais une requête dns sur cette machine, genre nslookup toto.com, j’ai ceci :
;; Got recursion not available from 127.0.0.1, trying next server
Server: 1.1.1.1
Address: 1.1.1.1#53
Non-authoritative answer:
Name: toto.com
Address: 153.127.134.218
;; Got recursion not available from 127.0.0.1, trying next server
On voit qu’il interroge par défaut le 53 (du coup, il interroge non pas pdns-recursor, mais pdns-server qui ne sait pas lui répondre puisqu’il ne sert qu’à gérer des zones).
mais si je fais un dig -p 5353 toto.com
; <<>> DiG 9.11.5-P4-5.1-Debian <<>> -p 5353 toto.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54009
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;toto.com. IN A
;; ANSWER SECTION:
toto.com. 600 IN A 153.127.134.218
;; Query time: 174 msec
;; SERVER: 127.0.0.1#5353(127.0.0.1)
;; WHEN: ven. nov. 29 18:53:00 CET 2019
;; MSG SIZE rcvd: 53
En précisant le port 5353, la requête passe bien et le résolveur fait son boulot.
Ma question est donc : comment faire en sorte que toutes les requêtes de résolution DNS qui passent d’abord par 127.0.0.1 soient faites sur le port 5353 au lieu du 53 ?
Ta proposition est qu’au lieu de dire au pdn-server d’écouter en 127.0.0.1:53, d’écoute sur ip-publique:53, et de remettre mon récurseur en 127.0.0.1:53 ?
Je vais essayer, ça me semble une bonne idée ! je te tiens au courant.