13 votes

nslookup fonctionne avec /etc/resolv.conf, ping et ssh ne le font pas.

Dans notre réseau local universitaire, j'ai (obtenu par DHCP) la configuration suivante dans /etc/resolv.conf :

search a.domain.com b.domain.com domain.com
nameserver x.x.x.x
nameserver y.y.y.y

Les paramètres sont également les mêmes dans les Préférences Système. Le problème suivant se produit :

nslookup server

fonctionne, et utilise l'un des serveurs de noms pour demander correctement server.a.domain.com. Cependant, si j'essaie d'envoyer un ping,

ping server

échoue avec un hôte inaccessible.

ping server.a.domain.com

travaux. L'ajout manuel d'un serveur avec l'adresse IP obtenue par nslookup dans /etc/hosts fait fonctionner le ping également, mais cette "solution" contourne les serveurs de noms et n'est donc pas idéale (et je devrais ajouter environ 20 autres entrées également). Une idée de la cause de ce problème ? Pourquoi ping n'utilise-t-il pas les résultats de nslookup/les domaines de recherche ?

ssh server

échoue également, ce qui constitue le véritable problème/inconvénient.

J'ai déjà ajouté AlwaysUseSearchDomains à mDNSResponder, mais cette correction ne règle le problème que lorsque l'on utilise server.foo.

J'utilise OS X Lion 10.7.3.

0 votes

Les paquets Ping peuvent être bloqués par les équipements du réseau. Même chose avec les paquets ssh - ils peuvent ne pas vouloir que vous fassiez ce que vous faites.

0 votes

Voir la solution ci-dessous, ce n'était pas le problème.

0 votes

"Unreachable host" signifie un problème de connectivité réseau (ou ICMP bloqué), pas un problème de résolution DNS

4voto

Old Pro Points 5634

Eh bien, avez-vous lu les commentaires au sommet de /etc/resolv.conf ?

# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.

La solution correcte est d'ajouter les domaines de recherche via le panneau Réseau dans les Préférences Système, comme décrit ci-après. ici .

0 votes

Je l'ai fait. Les domaines de recherche sont automatiquement saisis dans le panneau Réseau des Préférences Système par configuration DHCP (et sont donc grisés et non modifiables). Les mêmes valeurs/configuration se trouvent exactement dans /etc/resolv.conf .

0 votes

Je ne sais pas quoi te dire, alors. J'obtiens mes paramètres Ethernet et WiFi via DHCP et je peux changer mes domaines de recherche via le panneau des préférences système.

0 votes

Les domaines de recherche sont corrects dans les Préférences Système et /etc/resolv.conf - le problème est que ping et ssh ne les utilisent pas. S'ils utilisaient la sortie de nslookup, tout fonctionnerait bien, mais d'une manière ou d'une autre, ils ne le font pas. Ils regardent /etc/hosts, cependant.

3voto

Greg Cain Points 2933

J'ai eu le même problème. La solution que j'ai utilisée a été de créer un répertoire /etc/resolver. Dans ce répertoire, créez un fichier nommé pour chaque domaine que vous souhaitez résoudre. Dans chaque fichier, il doit y avoir deux lignes

nameserver 10.0.100.2
domain  home.cainmanor.com

Le fichier ci-dessus serait nommé /etc/resolver/home. Il se peut qu'il doive être nommé home.cainmanor.com, mais je ne peux pas le tester pour le moment.

Bonne chance !

0 votes

J'ai réussi à le faire fonctionner en définissant les domaines de recherche via les préférences système, un par un, en remplaçant les paramètres DHCP qu'OS X n'a pas réussi à analyser correctement. Je n'ai pas pu essayer votre solution, mais merci !

0 votes

Cette approche fonctionne très bien lorsque le client VPN de l'entreprise ne respecte pas les préférences transitoires du système.

3voto

Joel Griffiths Points 11

J'ai répondu à cette question ailleurs, car il s'agissait d'une solution simple pour moi, et je n'ai pas pu trouver la réponse qui me convenait ailleurs.

Après avoir redémarré mDNSResolver des dizaines de fois comme recommandé sur d'autres fils de discussion :

sudo killall -HUP mDNSResponder

J'ai finalement essayé autre chose. J'ai désactivé le Wi-Fi et supprimé tous mes réseaux préférés. J'ai ensuite rétabli la connexion Wi-Fi et tout s'est bien passé :

  1. Menu Apple -> Préférences Système -> Wi-Fi (à gauche)
  2. Désactiver le Wi-Fi", puis sélectionnez "Avancé".
  3. Supprimez la connexion Wi-Fi qui vous pose problème (ou toutes les connexions). si vous le souhaitez). Pour ce faire, sélectionnez le réseau Wi-Fi que vous souhaitez supprimer et appuyez sur "-".
  4. Cliquez sur "Appliquer" et "OK".
  5. Réactivez le Wi-Fi.
  6. Sélectionnez votre réseau Wi-Fi et connectez-vous à nouveau.

C'est ce qui a finalement fonctionné pour moi. C'est probablement la première chose que j'aurais dû essayer, mais je suis un gars de Linux et je regarde d'abord les corrections de la console.

1voto

tholu Points 292

Je pense que le problème se situe dans la configuration de searchdomains : ping/ssh essaient d'utiliser gethostbyname2() qui échoue parce que nommé n'est plus exécuté (dans Lion au moins) et /etc/resolv.conf avec les domaines de recherche configurés est donc ignorée. /etc/hosts est le dernier recours pour gethostbyname2() et ainsi ssh fonctionne à nouveau avec les entrées correctes dans /etc/hosts . Cela devrait être corrigé par Apple, je pense.

L'ajout manuel des domaines de recherche, un par un, a réglé le problème, voir la solution ci-dessus.

0 votes

Lorsque j'ajoute un domaine de recherche à ma connexion WiFi (qui est configurée via DNS) dans OS 10.7.3 via le panneau Préférences Système -> Réseau, il est utilisé par ping et ssh comme je m'y attendais. Je ne touche pas /etc/resolv.conf ou /etc/hosts manuellement/directement, mais les modifications apportées par les Préférences Système sont reflétées dans /etc/resolv.conf automatiquement. OS X fait beaucoup de choses différemment des autres systèmes Unix et ceci est l'une d'entre elles.

1 votes

Merci, j'ai réussi à le faire fonctionner en ajoutant manuellement les domaines de recherche un par un, voir mon commentaire sur la solution que vous avez proposée ci-dessus.

0 votes

L'ajout de domaines de recherche n'a pas résolu les problèmes... Quelqu'un d'autre a-t-il une autre solution ?

1voto

Ian Ellis Points 111

Je rencontre ce problème de temps en temps, lorsque mon Mac Book Pro (OS X version 10.10.1) est endormi. Je le réveille et je ne peux pas utiliser le nom d'hôte des machines de mon réseau (et le ping ne fonctionne pas non plus). nslookup fonctionne bien. Je ne vois pas de messages pertinents dans /var/log. Il suffit de le laisser quelques minutes et hop, il fonctionne à nouveau. .....

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