Bonjour 😁,
Cette semaine l'article est tiré de quelque chose qui m'est arrivé récemment, en effet, lors d'une mise à jour d'Ubuntu server, il semble que le paquet bind9, après la mise à jour, se mettait à « crash » au bou d'un moment.
Le problème, c'est que sur cette machine, j'ai besoin de la résolution DNS, en effet, elle héberge des services qui ont besoin de compliquer avec d'autres services en ligne comme Stripe.
Je me retrouve donc avec un appel où l'on m'informe qu'au moment où il faut entrer la carte bancaire sur cette application Symfony, et bien cela n'affiche pas le formulaire demandant la carte ... bizarre 🤔.
En fait, non pas si bizarre que ça, j'avais déjà remarqué qu'après la mise à jour de cette nuit-là, le service bind9 devenait instable, c'est ballot, c'est lui qui créer un cache DNS pour la machine.
Vous l'aurez compris, dans cet article, on va parler de ça...
Bind9, un serveur DNS Open Source, est parfois utilisé comme cache DNS, c'est le cas chez Scaleway, par défaut quand vous recevez un serveur sous Ubuntu, celui-ci utilisera un cache local, ce cache local sera assuré par Bind9.
Cela permet de ne pas « spam » les serveurs DNS pour les requêtes DNS récurrents.
Pour connaitre vos serveurs DNS sur votre serveur, c'est plutôt simple (quoi que ?), regardez simplement le contenu du fichier "/etc/resolv.conf", vous pouvez le faire avec la commande "cat /etc/resolv.conf".
Un exemple de fichier "/etc/resolv.conf"
Pourquoi "Quoi que ?"
Comme je l'ai dit plus haut, parfois, bind9 est utilisé comme serveur DNS, de ce fait, dans la liste des serveurs DNS vous pourrez voir "127.0.0.1", à savoir votre adresse IP locale, c'est tout simplement le serveur bind9 qui écoute les requêtes DNS en local.
Enfin, vous pouvez utiliser la commande dig, afin de vérifier que la résolution DNS se passe correctement, par exemple : "dig developpeur-freelance.io"
Un exemple de réponse de la commande "dig"
Sur cet exemple, vous pouvez voir que le serveur "62.210.16." a été utilisé.
L'idée ici, c’est de ne pas trop se tracasser pour ça, il y a une autre méthode, mais on va rester avec la méthode simple, tout d'abord, installez "resolvconf" avec la commande : "sudo apt-get install resolvconf"
Une fois le paquet installé, il va falloir passer à la configuration de celui-ci, c'est relativement simple, modifier le fichier "/etc/resolvconf/resolv.conf.d/head" et d'y mettre les DNS voulus, dans cet exemple, ceux de Google (oui, je sais ... 😛) :
Un exemple de fichier "/etc/resolvconf/resolv.conf.d/head"
La syntaxe est la même que dans le fichier "/etc/resolv.conf", mais celui-là contrairement à l'autre vous avez le droit de le modifier 😁.
Pour activer le tout, entrez la commande "sudo systemctl enable --now resolvconf.service", tout simplement.
Ensuite vous pouvez faire un "dig" pour tester si tout est OK, par exemple "dig developpeur-freelance.io".
Pour ceux qui veulent aller plus loin, quand j'ai eu mon souci de DNS, la base a été cet article.
Vous savez maintenant comment changer vos DNS simplement sur Ubuntu serveur 😁.
À la prochaine 🙂.