Comment ajouter un serveur DNS personnalisé et préserver le DNS par défaut du fournisseur de services Internet dans OS X Mountain Lion

8

J'utilise OS X Mountain Lion. j'utilise dnsmasq configurer des noms de domaine génériques locauxhost, tels que http://local.dev , pour pointer vers localhost. Mais je dois ajouter 127.0.0.1 dans mes préférences système - & gt; paramètres réseau.

Après avoir configuré 127.0.0.1 en tant que serveur DNS, les serveurs DNS par défaut du FAI ont été écrits par le mien. Cela m'empêchait d'accéder aux sites Web. Ce n'est pas grave si je ne déplace pas mon ordinateur, je peux entrer manuellement le serveur DNS du FAI. Mais si je change de lieu, le DNS du FAI change.

J'ai également essayé d'utiliser le serveur DNS de Google, mais cela ne fonctionne pas dans certains cas. Comment puis-je réserver (ou mettre à jour) le serveur DNS du FAI sans supprimer 127.0.0.1 en tant que DNS?

Merci d'avance.

Daiwei
la source

Réponses:

11

Oui. Tu peux le faire, /etc/resolver est votre ami.

$ man 5 resolver:

domaine
Nom de domaine associé à cette configuration du résolveur.   Cette option n’est normalement pas requise par le système de recherche DNS Mac OS X lorsque la configuration du résolveur est lue à partir d’un fichier du répertoire / etc / resolver. Dans ce cas, le nom du fichier est utilisé comme nom de domaine.

Tout simplement vous pouvez placer nameserver 127.0.0.1 à l'intérieur d'un fichier que vous créez appelé /etc/resolver/dev

Vous aurez besoin de recharger / redémarrer. Il dirigera alors toutes les demandes à *.dev sur votre serveur de noms local.

Le DNS de votre connexion réseau reste en mode automatique. Il sera donc adapté aux modifications de votre environnement.

Modifier: Je viens de trouver https://serverfault.com/a/164215/163311 et http://www.echoditto.com/blog/never-touch-your-local-etchosts-file-os-x-again qui ont un peu plus de détails et comprennent dnsmasq détails d'installation.

rjocoleman
la source
Le deuxième article peut maintenant être trouvé à alanthing.com/blog/2012/04/24/…
ebelisle
0

Y a-t-il une raison spécifique pour utiliser dnsmasq?

Vous pouvez simplement ajouter des entrées à votre /private/etc/hosts fichier quittant DNS pointait vers le fournisseur d'accès auquel vous êtes connecté. Voici comment faire cela en utilisant Terminal:

sudo nano /private/etc/hosts Entrez votre mot de passe lorsque vous y êtes invité.

Ajoutez tout ajout à la fin du fichier hosts (une seule entrée par ligne), par exemple:

127.0.0.1 local.dev

Ctrl + O puis entrez pour enregistrer le fichier dans nano. Contrôle + X pour sortir de nano.

Vous aurez besoin de vider le cache DNS local en utilisant: dscacheutil -flushcache

crh
la source
2
Utiliser le fichier hosts peut être une solution simple, mais je dois configurer des domaines génériques tels que * .dev pour qu'ils pointent vers localhost.
Daiwei