web-dev-qa-db-fra.com

Resolv Conf Plusieurs serveurs DNS avec des domaines spécifiques

J'ai besoin de pouvoir disposer de serveurs DNS spécifiques pour plusieurs réseaux, et j'aimerais savoir comment mettre à jour correctement mon /etc/resolv.conf:

disons que j'ai un vpn majeur, que j'achemine toutes mes requêtes trafiic et DNS à travers lui. Mais sachez que j'ai un autre VPN qui me donne des accès spécifiques à un réseau, ce VPN également en tant que serveur DNS, mais il ne sert qu'un domaine spécifique, disons: "mon domaine. Local"

J'ai construit le resolv.conf suivant:

nameserver 10.8.0.1
search mydomain.local
nameserver 10.250.0.2

Mais les requêtes DNS iront au premier serveur de domaine, quoi qu'il en soit, changer l'ordre n'a pas d'importance.

Quelqu'un peut-il me donner une suggestion?

10
Alfredo Palhares

Impossible de réaliser en utilisant /etc/resolv.conf seulement.

Je dirais que la chose la plus simple est d'installer dnsmasq (un client DNS de mise en cache), en faire le seul résolveur en mettant nameserver 127.0.0.1 en /etc/resolv.conf puis modifiez la configuration de dnsmasq:

  • décommenter no-dhcp-interface= pour désactiver les installations du serveur DHCP de dnsmasq;
  • ajouter un seul enregistrement générique: server=10.8.0.1;
  • ajouter un enregistrement spécifique: server=/mydomain.local/10.250.0.2 à toutes les demandes d'hôtes dans mydomail.local allez sur ce serveur.
12
kostix

En fait, cela peut être fait si vous utilisez dnsmasq.

Au bas de votre fichier /etc/dnsmasq.conf, vous pouvez ajouter des lignes comme celle-ci:

server=/domain.net/172.166.7.23
server=/domain.com/142.124.17.12

Je ne l'ai pas testé sur plus que ma machine, mais cela fonctionne pour moi.

Mon exigence était que mon client VPN n'utilisait pas les bons serveurs de noms lorsqu'il était connecté à un lieu de travail pour acheminer les adresses internes. Cela l'a corrigé pour utiliser des serveurs DNS internes pour des domaines spécifiques.

3
r b

Cela pourrait être difficile à réaliser, en utilisant _ /etc/resolv.conf seulement, à mon humble avis. Serait-ce un problème, d'installer un résolveur local? Sinon, le plan suivant pourrait être applicable:

  1. Installez un DNS uniquement en cache à partir de votre référentiel de distribution. La configuration par défaut devrait fonctionner et vous avez généralement 127.0.0.1 comme adresse d'écoute uniquement.
  2. Sauvegardez votre /etc/resolv.conf et en créer un nouveau, contenant à peine nameserver 127.0.0.1. Testez que votre DNS local fonctionne correctement, en résolvant les noms Internet.
  3. Mettez ce qui suit dans le named.conf:

zone "mydomain.local" { type forward; forward only; forwarders { Your-VPN-DNS-IP; }; };

  1. Testez-le à nouveau, à la fois la résolution Internet et VPN. En cas de succès, vous pouvez ajouter une ligne search à /etc/resolv.conf.

HTH-RB

1
bofh