Comprenez le nom d'hôte et / etc / hosts

Dans / etc / hostname, j'ai le nom myname .

Dans / etc / hosts, j'ai:

 127.0.0.1 localhost.localdomain localhost myname ::1 localhost.localdomain localhost myname 

J'ai une compréhension vague de ce qu'est vraiment un nom d'hôte et de ce pour quoi il est utilisé.

Ces questions plus précises pourraient m'aider à mieux le comprendre:

  1. Quel est mon nom d'hôte dans l'exemple ci-dessus? myname ou quelque chose d'autre? Si j'avais plutôt myname.domain.com dans /etc/hostname , quel serait mon vrai nom d'hôte alors?

  2. Dans l'exemple, la command hostname renvoie myname , alors que la command hostname -f renvoie localhost.localdomain . Je pensais que /etc/hosts était seulement une correspondance entre les noms et les adresses IP. Il semble servir une autre fonction ici. Qu'est-ce qu'un fqdn et à quoi sert-il? Comment est-il récupéré? Pourquoi est-ce localhost.localdomain ?

  3. Si j'avais plutôt myname.domain.com dans /etc/hostname , le hostname -f returnnerait myname.domain.com . Pourquoi?

  4. Pourquoi fqdn ne se termine-t-il pas par un point dans ces files?

  5. Les hostname -d et dnsmydomain équivalents?

  6. Dans quel context puis-je utiliser mon nom d'hôte ( myname ) et quand dois-je utiliser mon fqdn ( localhost.localdomain )?

Je déteste absolument quand quelqu'un me dit de lire le manuel mais dans ce cas s'il vous plaît jeter un oeil à la page de man pour le nom d'hôte et la plupart sinon toutes vos questions doivent être répondues. C'est beaucoup mieux écrit que je ne pourrais l'expliquer.

Pour vous aider, voici quelques extraits de vos questions: – Votre nom d'hôte est ce que vous voyez dans / etc / hosts. – Le nom de domaine complet returnné est basé sur ce que le résolveur renvoie, par conséquent, la valeur de / etc / hosts renvoyée en tant que résolveur vérifie d'abord le file hosts, puis effectue les requêtes DNS nécessaires.

Celui que je ne crois pas est abordé dans la page du nom de l'hôte (d'après ma relecture de la page du manuel), c'est pourquoi les inputs dans les files ne se terminent pas par un point.

Cette convention est utilisée pour traiter les loggings DNS. Les noms d'hôte et les files d'hôtes ne sont pas réellement des loggings DNS. Si vous configurez ces inputs dans bind pour être résolues pour les searchs DNS, alors l'utilisation d'un point peut entrer en jeu (consultez cette bonne ressource: http://www.zytrax.com/books/dns/apa/dot.html ).

En outre, gardez à l'esprit que toutes ces valeurs ne sont pas diffusées depuis le système. Par conséquent, si vous souhaitez qu'un autre système accède au FQDN, il est basé sur le file hosts de cet autre système ou ne contient pas d'inputs d'hôtes basées sur les searchs DNS effectuées par le système externe sur le nom de domaine complet pour le résoudre. système.

  1. /etc/hostname contient le nom de la machine, comme le savent les applications qui s'exécutent localement. /etc/hosts et les noms associés DNS avec des adresses IP. myname peut être mappé à n'importe quelle adresse IP à laquelle la machine peut accéder elle-même, mais son mappage à 127.0.0.1 n'est pas esthétique.
  2. Non /etc/hosts , mais /bin/hostname sert une autre fonction avec -f .
  3. Parce que /etc/hosts peut passer outre le bon sens . Modifiez-le avec prudence et ne laissez pas de déchets là-bas après des patchs temporaires et des expériences.
  4. Les deux styles (⋯ .TLD et T .TLD ) sont acceptables. Le premier est sans ambiguïté, alors que le second est omniprésent.
  5. Je ne sais pas ce que dnsmydomain est, mais peu probable. Chercher quelque chose dans /etc/hosts n'est pas techniquement "DNS".
  6. Souvenez-vous du point 1. Nom d'hôte – pour les applications qui s'exécutent localement; aussi pour des protocoles de réseau aussi particuliers que SMB (samba). FQDN (sinon un fakery ou un espace réservé comme localhost.localdomain ) – pour accéder à la machine depuis l'extérieur. Le nom de domaine complet doit pouvoir être résolu là où il est utilisé.