Aucun domaine défini dans /etc/resolv.conf

16

Je vois de plus en plus de serveurs qui n'ont aucun domaine défini dans le /etc/resolv.conffichier. Seulement une entrée de recherche .
Dans quels cas cette configuration est-elle utilisée?
Y a-t-il des cas où il ne doit pas être utilisé?

nameserver xxx.xxx.xxx.xxx
nameserver yyy.yyy.yyy.yyy
nameserver zzz.zzz.zzz.zzz

search domain1 domain2 domain3 ...
Emmanuel
la source
2
De man resolv.conf: "domaine Nom de domaine local. La plupart des requêtes de noms dans ce domaine peuvent utiliser des noms courts par rapport au domaine local. S'il est défini sur". ", Le domaine racine est pris en compte. Si aucune entrée de domaine n'est présente, le domaine est déterminé à partir de le nom d'hôte local renvoyé par gethostname (2); la partie de domaine est considérée comme étant tout après le premier ".". Enfin, si le nom d'hôte ne contient pas de partie de domaine, le domaine racine est supposé. "
schaiba

Réponses:

21

Lorsque vous spécifiez un, domainil devient le premier searchdomaine. Cette fonction de recherche est l'utilisation principale de la définition de la domainsorte que vous puissiez vous en sortir en ne définissant qu'une searchentrée, la plupart du temps.

De plus, le domainpeut être déterminé automatiquement à partir du nom d'hôte de la machine, si le nom d'hôte contient un .suffixe deviendra le domaine.

La principale différence pour avoir un resolv.confsans un domainserait que les processus locaux essaient de déterminer un nom de domaine complet (FQDN). Les serveurs SMTP viennent à l'esprit au départ comme quelque chose qui aime connaître le nom de domaine complet local et peut utiliser la configuration hôte / domaine local pour le résoudre. Au fil du temps, le nom d'hôte local et le domaine sont de moins en moins fiables, car ils perdent tout leur sens pour le service réel qu'une machine représente réellement en raison de choses comme NAT, l'hébergement virtuel et les équilibreurs de charge. Cela signifie que la plupart des logiciels proposent désormais des options de configuration alternatives pour les noms de domaine au lieu d'essayer uniquement de les déterminer à partir du nom d'hôte local.

man resolv.conf

domaine Nom de domaine local.
La plupart des requêtes de noms dans ce domaine peuvent utiliser des noms courts par rapport au domaine local. Si aucune entrée de domaine n'est présente, le domaine est déterminé à partir du nom d'hôte local renvoyé par gethostname (2); la partie du domaine est considérée comme tout après le premier ".". Enfin, si le nom d'hôte ne contient pas de partie de domaine, le domaine racine est supposé.

search Liste de recherche pour la recherche de nom d'hôte.
La liste de recherche est normalement déterminée à partir du nom de domaine local; par défaut, il ne contient que le nom de domaine local. Cela peut être modifié en répertoriant le chemin de recherche de domaine souhaité en suivant le mot-clé de recherche avec des espaces ou des tabulations séparant les noms. Les requêtes du résolveur contenant moins de ndots points (la valeur par défaut est 1) seront tentées à l'aide de chaque composant du chemin de recherche à tour de rôle jusqu'à ce qu'une correspondance soit trouvée. Pour les environnements avec plusieurs sous-domaines, veuillez lire les options ndots: n ci-dessous pour éviter les attaques man-in-the-middle et le trafic inutile pour les serveurs root-dns. Notez que ce processus peut être lent et générer un trafic réseau important si les serveurs des domaines répertoriés ne sont pas locaux et que les requêtes expireront si aucun serveur n'est disponible pour l'un des domaines.

Mat
la source
Je viens d'avoir un problème avec un agent de surveillance qui n'a pas pu déterminer le FQDN.
Emmanuel