Dans /etc/resolv.conf, que fait exactement l'option de configuration «search»?

66

Si l'option est définie comme nom de domaine du serveur lui-même, cela signifie-t-il que le serveur lui-même est utilisé en premier pour rechercher des noms de domaine avant d'interroger l'internet externe? c'est à dire /etc/hostssera interrogé?

Par exemple:

search  localdomain.com
Mike
la source

Réponses:

63

De man resolv.conf

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 changé en listant le chemin de recherche de domaine souhaité après le mot-clé de recherche avec des espaces ou des tabulations séparant les noms. Les requêtes du résolveur ayant moins de ndots de points (la valeur par défaut est 1) seront essayées tour à tour en utilisant chaque composant du chemin de recherche 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 de type "man-in-the-middle" et le trafic inutile pour les serveurs root-dns. Notez que ce processus peut être lent et générer beaucoup de trafic réseau 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.

La liste de recherche est actuellement limitée à six domaines avec un total de 256 caractères.

Pour résumer ce qui précède, en supposant que rien ne change par rapport aux valeurs par défaut mentionnées ci-dessus, si quelque chose parvient au résolveur qui ne contient pas de points, le résolveur tentera de l'ajouter localdomain.com.

Disons que vous tapez simplement http://somesite/somedocument.htmldans votre navigateur. Le résolveur va attraper cela et essayer d'abord de résoudre somesite.localdomain.com- équivalent si vous avez tapé http://somesite.localdomain.com/somedocument.html- avant d'essayer ce que vous avez demandé.

Ceci est utile si vous faites partie d'un environnement de réseau local disposant de son propre serveur DNS afin que les utilisateurs puissent saisir des noms simples pour atteindre des ressources locales. Si vous n'avez pas de réseau local ou d'entreprise avec votre propre serveur DNS, vous n'avez pas à vous inquiéter de rien.

LawrenceC
la source
10
HTTP est un mauvais exemple d'utilisation de l'option de recherche. Un grand nombre de personnes utilise des hôtes virtuels nommés en raison de la rareté IPv6. D'après mon expérience, il est très rare de voir les hôtes virtuels d'une manière qui accepte une demande Host: somesiteen plus de Host: somesite.localdomain.com. Autrement dit, l'option de recherche permet à votre client de résoudre un nom abrégé, mais cela ne signifie pas que vous serez en mesure de traiter une demande.
Zoredache
1
@Zoredache, vous apportez un point valide, cependant, il faut supposer que la technique de recherche serait mise en œuvre par un administrateur système local qui contrôle également tous les hôtes des noms de domaine locaux, donc des hôtes virtuels nommés serait soi-disant déjà configuré pour permettre ce comportement.
cnst
1
@cnst - pas vrai toujours vrai dans mon expérience. Les développeurs construisent un serveur complet avec tomcat fourni avec le fichier war. La personne admin ops / sys s’inquiète de la configuration machines / vms / dns. Il y a cette ligne grise sur qui est responsable. C'est bien que zoredache l'ait appelé au cas où un lecteur aurait une configuration qui pourrait avoir le problème décrit.
Pat