{"id":4768,"date":"2025-10-15T10:00:00","date_gmt":"2025-10-15T08:00:00","guid":{"rendered":"https:\/\/sophie-matthieu.eu\/?p=4768"},"modified":"2026-10-02T16:12:28","modified_gmt":"2026-10-02T14:12:28","slug":"le-dns-maison-un-resolveur-unbound-qui-ne-depend-de-personne","status":"publish","type":"post","link":"https:\/\/sophie-matthieu.eu\/index.php\/2025\/10\/15\/le-dns-maison-un-resolveur-unbound-qui-ne-depend-de-personne\/","title":{"rendered":"Le DNS maison : un r\u00e9solveur Unbound qui ne d\u00e9pend de personne"},"content":{"rendered":"<p>Apr\u00e8s le serveur NTP, deuxi\u00e8me brique de cette s\u00e9rie sur l&rsquo;infrastructure invisible de la maison : le <strong>DNS<\/strong>. L\u00e0 encore, pas de dashboard, pas d&rsquo;interface qu&rsquo;on consulte au quotidien \u2014 juste un petit service qui r\u00e9pond \u00e0 chaque requ\u00eate de nom de domaine \u00e9mise par n&rsquo;importe quel appareil du r\u00e9seau, et qui doit absolument ne jamais faillir.<\/p>\n<h2>Une VM de plus, mais pas comme les autres<\/h2>\n<p>Le service tourne sur une VM d\u00e9di\u00e9e de mon cluster Proxmox, tout simplement nomm\u00e9e <strong>dns<\/strong>, sous <strong>Rocky Linux 9<\/strong>. Contrairement aux VM de laboratoire comme celle du simulateur Cray, celle-ci fait partie du socle d&rsquo;infrastructure qui doit toujours r\u00e9pondre : elle d\u00e9marre automatiquement avec le reste de l&rsquo;infra au boot du serveur Proxmox, sans intervention manuelle, au m\u00eame titre que les services r\u00e9seau critiques de la maison.<\/p>\n<h2>Unbound : un r\u00e9solveur, pas un simple relais<\/h2>\n<p>Le logiciel derri\u00e8re ce service s&rsquo;appelle <strong>Unbound<\/strong> \u2014 un r\u00e9solveur DNS <strong>r\u00e9cursif et validant<\/strong>, d\u00e9velopp\u00e9 par NLnet Labs. La distinction compte : beaucoup de box et de routeurs grand public se contentent de <strong>relayer<\/strong> les requ\u00eates DNS vers le r\u00e9solveur de leur FAI ou vers un service public (Google, Cloudflare&#8230;), sans jamais vraiment les r\u00e9soudre eux-m\u00eames. Unbound, lui, part directement interroger la hi\u00e9rarchie DNS mondiale (serveurs racine, puis serveurs de la zone concern\u00e9e, etc.) pour obtenir la r\u00e9ponse de premi\u00e8re main, plut\u00f4t que de faire confiance \u00e0 un interm\u00e9diaire.<\/p>\n<p>Ce choix rejoint directement la philosophie d\u00e9j\u00e0 \u00e9voqu\u00e9e pour le reste de l&rsquo;infrastructure r\u00e9seau de la maison : \u00e9viter les solutions hybrides-cloud o\u00f9 une fonction essentielle du r\u00e9seau local d\u00e9pend d&rsquo;un service tiers externe. Avec Unbound, la r\u00e9solution de noms ne d\u00e9pend plus du r\u00e9solveur impos\u00e9 par defaut par la box ou le fournisseur d&rsquo;acc\u00e8s \u2014 elle est enti\u00e8rement sous contr\u00f4le, sur une machine qu&rsquo;on administre soi-m\u00eame.<\/p>\n<h2>Un seul service, deux r\u00f4les<\/h2>\n<p>Ce serveur DNS sert \u00e0 la fois le <strong>r\u00e9seau local<\/strong> et la r\u00e9solution <strong>Internet<\/strong> pour tous les appareils de la maison : chaque machine du LAN interroge cette VM en premier, qui va elle-m\u00eame chercher la r\u00e9ponse sur Internet si la requ\u00eate ne concerne pas une ressource locale. Associ\u00e9 au stack de Catalyst 3750X qui g\u00e8re d\u00e9sormais lui-m\u00eame le DHCP, et \u00e0 ce r\u00e9solveur Unbound ind\u00e9pendant, l&rsquo;ensemble des fonctions r\u00e9seau critiques de la maison \u2014 switching, PoE, attribution d&rsquo;adresses IP et r\u00e9solution de noms \u2014 ne d\u00e9pend plus du tout de l&rsquo;UDM Pro, qui se contente de faire du routage et du pare-feu.<\/p>\n<p>Avec le serveur NTP vu pr\u00e9c\u00e9demment, \u00e7a fait deux services qu&rsquo;on ne voit jamais, qu&rsquo;on n&rsquo;ouvre jamais dans un navigateur, et qui pourtant conditionnent silencieusement le bon fonctionnement de tout le reste \u2014 l&rsquo;heure et les noms, les deux briques les plus basiques et les plus faciles \u00e0 oublier d&rsquo;un r\u00e9seau, jusqu&rsquo;au jour o\u00f9 l&rsquo;une des deux s&rsquo;arr\u00eate.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apr\u00e8s le serveur NTP, deuxi\u00e8me brique de cette s\u00e9rie sur l&rsquo;infrastructure invisible de la maison : le DNS. L\u00e0 encore, pas de dashboard, pas d&rsquo;interface qu&rsquo;on consulte au quotidien \u2014 juste un petit service qui r\u00e9pond \u00e0 chaque requ\u00eate de nom de domaine \u00e9mise par n&rsquo;importe quel appareil du r\u00e9seau, et qui doit absolument ne [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-4768","post","type-post","status-publish","format-standard","hentry","category-electronique-maker"],"_links":{"self":[{"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/posts\/4768","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/comments?post=4768"}],"version-history":[{"count":1,"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/posts\/4768\/revisions"}],"predecessor-version":[{"id":4769,"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/posts\/4768\/revisions\/4769"}],"wp:attachment":[{"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/media?parent=4768"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/categories?post=4768"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sophie-matthieu.eu\/index.php\/wp-json\/wp\/v2\/tags?post=4768"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}