Je cherche à mettre en place un serveur DNS sur mon LAN, qui servirait a la fois de cache local et permettrait de s'affranchir d'une censure DNS éventuelle pratiquée par un FAI. Quitte à utiliser un serveur DNS local au LAN, autant lui faire servir des IP locales sur certains FQDN, je m'explique : j'utilise un domaine (foo.tld) dont certains sous-domaines pointent vers des machines présentent sur mon LAN (home.foo.tld par exemple). C'est très pratique pour accéder aux machines depuis l'extérieur (le routeur en tête du LAN fait du port-forwarding). Problème : quand je suis dans le LAN, je continue d'appeler l'IP publique du routeur pour atteindre les machines à l'intérieur du LAN au lieu de taper sur les IP LAN. Un serveur DNS local me permet donc de récupérer certains FQDN (home.foo.tld) pour le renvoyer vers une IP locale. Problème : j'ai aussi besoin de conserver d'autres FQDN (www.foo.tld) qui se trouvent, eux, à l'extérieur.
J'envisage 2 solutions possibles :
- Un serveur Unbound sur le LAN, qui résouds les requêtes DNS sur les ROOTS DNS, et qui surcharge la local-zone foo.tld. Mais est-ce que Unbound permet de ne surcharger que certains records de la zone (et résoud les autres enregistrements comme
www.foo.tld
sur le serveur DNS mandataire) ? Ou est-ce qu'il va falloir dupliquer toute la zone (ce qui n'est pas très efficace) ? - Un serveur DNSmasq sur le LAN, qui ne va faire que du cache (et pourra rediriger les requêtes vers les serveurs OpenDNS par exemple), et ne lui faire surcharger que les enregistrements qui doivent pointer vers les IP locales (il me semble que c'est possible)
Des avis ?
Justement, j'ai besoin de conserver un accès indifférencié externe / interne (plutôt que de devoir reconfigurer des services à chaque fois que je pars en ballade).
Après si je dois surcharger une zone complète, j'irai surement plus vers Unbound… à voir :D