2 votes

Comment puis-je faire en sorte qu'un nom d'hôte soit toujours résolu à l'aide du serveur DNS de mon réseau local lorsque je suis connecté à un VPN ?

J'ai un MacBook Pro fonctionnant sous MacOS 10.14.6 qui est fréquemment connecté à un VPN axé sur la confidentialité qui tunnelise tout le trafic non local et gère toutes les requêtes DNS. Cependant, il y a un nom d'hôte que je voudrais que le serveur DNS de mon réseau local gère (comme spécifié par le serveur DHCP local). La raison en est que, selon le réseau local auquel mon MacBook Pro est connecté, ce nom d'hôte peut être résolu par une adresse IP locale, et dans ce cas, je ne veux pas que le trafic vers ce nom soit tunnelisé par le VPN.

J'ai appris que je peux modifier le serveur DNS utilisé pour résoudre un nom de domaine en créant un fichier à l'adresse suivante /etc/resolver/hostname.domain et avec le contenu nameserver [ip address]hostname.domain est le nom de domaine entièrement qualifié. Cependant, cela ne fonctionne que si l'adresse IP du serveur DNS que je veux utiliser reste cohérente. Ce que je veux, c'est qu'il utilise le serveur DNS servi par le serveur DHCP de mon réseau local.

Existe-t-il un moyen d'y parvenir en utilisant les fonctionnalités existantes de MacOS ou un logiciel tiers ?

Au cas où cela serait pertinent, le serveur DNS du VPN est fourni et configuré au moment de la connexion, et il n'est pas garanti que ce soit la même adresse IP à chaque fois.

(Je pourrais écrire un script pour faire cela en l'exécutant chaque fois que la connexion réseau change, en vérifiant l'adresse IP locale actuelle du système, puis en changeant la valeur de l'adresse IP de l'utilisateur. /etc/resolver/hostname.domain pour pointer vers le bon serveur, mais j'essaie d'éviter de faire ce travail si possible !)

3voto

not2savvy Points 1457

Vous pouvez configurer dnsmasq a

  • utiliser votre DNS local comme serveur amont pour le domaine en question
  • utiliser le DNS du VPN en amont pour toutes les autres requêtes

Ceci peut être réalisé en configurant un serveur en amont dépendant du domaine dans le fichier /etc/dnsmasq.conf par exemple :

server=/hostname.domain/dns.server.local

Ensuite, modifiez la configuration du VPN pour utiliser votre configuration dnsmasq comme serveur DNS.

dnsmasq peut être facilement installé avec Homebrew comme suit :

brew install dnsmasq

Notez que, dans une telle configuration, le fichier de configuration est situé dans le répertoire $(brew --prefix)/etc/dnsmasq.conf . Ce poste sur l'utilisation dnsmasq sur MacOS pour le développement local peut vous fournir quelques conseils supplémentaires.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X