GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Hostnamen – Was hat es damit auf sich?

Lösung 1:

Heutzutage kann ein System mehrere Schnittstellen mit jeweils mehreren Adressen haben, und jeder Adresse können sogar mehrere DNS-Einträge zugeordnet sein. Was also bedeutet ein "System-Hostname" überhaupt?

Viele Anwendungen verwenden den Hostnamen des Systems als Standardkennung, wenn sie anderswo kommunizieren. Wenn Sie beispielsweise Syslog-Meldungen auf einem zentralen Server sammeln, werden alle Meldungen mit dem Hostnamen des Ursprungssystems gekennzeichnet. In einer idealen Welt würden Sie dies wahrscheinlich ignorieren (weil Sie dem Client nicht unbedingt vertrauen wollen), aber das Standardverhalten – wenn Sie alle Ihre Systeme „localhost“ nennen – würde zu einer Reihe von Protokollmeldungen führen, die Sie nicht in der Lage wäre, sich einem bestimmten System zuzuordnen.

Wie andere Leute bereits betont haben, ist der Hostname des Systems auch eine nützliche Kennung, wenn Sie aus der Ferne auf mehrere Systeme zugreifen. Wenn Sie fünf Fenster mit einem System namens "localhost" verbunden haben, dann werden Sie es schwer haben, sie in Ordnung zu halten.

In ähnlicher Weise versuchen wir, den Hostnamen des Systems mit dem Hostnamen abzugleichen, den wir für den administrativen Zugriff auf ein System verwenden. Dies hilft, Verwirrung zu vermeiden, wenn auf das System Bezug genommen wird (in E-Mails, Gesprächen, Dokumentationen usw.).

Bezüglich DNS:

Sie möchten korrekte Forward- und Reverse-DNS-Einträge für Ihre Anwendungen haben, um Verwirrung zu vermeiden. Du brauchst etwas Weiterleitungseintrag (Name -> IP-Adresse), damit Personen bequem auf Ihre Anwendung zugreifen können. Dass der umgekehrte Eintrag übereinstimmt, ist aus mehreren Gründen nützlich – beispielsweise hilft es Ihnen, die Anwendung korrekt zu identifizieren, wenn Sie die entsprechende IP-Adresse in einem Protokoll finden.

Beachten Sie, dass ich hier von „Anwendungen“ und nicht von „Systemen“ spreche, da – insbesondere bei Webservern – es üblich ist, mehrere IP-Adressen auf einem System zu haben, die verschiedenen Hostnamen und Diensten zugeordnet sind.

Der Versuch, Name-zu-IP-Zuordnungen in Ihrem /etc/hosts beizubehalten Datei wird schnell schwierig, wenn Sie eine zunehmende Anzahl von Systemen verwalten. Es ist sehr einfach, dass die lokale Hosts-Datei in Bezug auf DNS nicht mehr synchron ist, was möglicherweise zu Verwirrung und in einigen Fällen zu Fehlfunktionen führt (weil zum Beispiel etwas versucht, sich an eine IP-Adresse zu binden, die nicht mehr auf dem System existiert).

Lösung 2:

Sie könnten jeden Hostnamen auf "localhost" setzen, aber es ist sehr praktisch, [email protected] ~ $ zu haben in Ihrer Eingabeaufforderung, wenn Sie Computer über ssh verwalten. Die Remote-Verwaltung von Servern könnte sehr verwirrend werden, wenn Sie dies nicht tun.

Ein korrekter FQDN ist wichtig, wenn Sie einen Webserver oder einen Mailserver hosten. Diese Art von Serveranwendungen möchte wissen, "auf wem" sie laufen.

Zur Auswahl eines guten Namensschemas verweise ich Sie auf diese sehr beliebte Frage .

Ein FQDN wird nur dann nützlich, wenn er für einen anderen Computer von Bedeutung ist. Dazu gibt es drei Ebenen:

  • Ein Computer in Ihrem lokalen Netzwerk hat einen Eintrag in seiner Hosts-Datei, der auf diesen Computer verweist
  • Sie haben einen DNS-Server, der in Ihrem lokalen Netzwerk ausgeführt wird, und jeder lokale Computer, der ihn als DNS-Server verwendet, kennt jetzt Plato mit Namen.
  • Du registrierst einen Domainnamen und jetzt weiß die ganze Welt, auf welche Maschine der Name plato.alixaxel.com zeigt.

Beim Senden von E-Mails oder Bereitstellen von Webseiten an die Außenwelt ist der dritte derjenige, den Sie haben möchten. In den meisten anderen Fällen können Sie mit einem lokalen DNS auskommen oder sogar Hosts-Dateien bearbeiten.

In diesem Fall können Sie sich einfach einen Domänennamen (plato.alixnetwork könnte als FQDN in Ordnung sein) für die Verwendung in Ihrem lokalen Netzwerk ausdenken. Der einzige Mehrwert des "alixnetwork"-Teils (des Domain-Namens) ist die Bequemlichkeit, wenn Sie ein anderes lokales Netzwerk haben, von dem Sie es unterscheiden möchten.

Lösung 3:

Eine grundlegende Übersicht. Hostnamen sind nur Zeiger; Sie könnten einen bestimmten Hostnamen zuweisen, auf den die Maschine verweist, aber es könnten mehrere sein. Einige Dienste, insbesondere E-Mail und HTTP, sind auf Domänennamen angewiesen, um zu wissen, wo sich Dienste befinden sollten und wie sie zu erreichen sind.

Vor langer Zeit wurden all diese Namen (die wiederum nur Verweise auf IP-Adressen sind) in einer Datei namens hosts festgehalten . Als das System wuchs, war es ihnen nicht möglich, die Datei auf allen relevanten Computern zu synchronisieren, die an den verschiedenen miteinander verbundenen Netzwerken teilnahmen. Also wurde das DNS-System erfunden. Wenn Sie eine Namenssuche durchführen, überprüft sie immer noch zuerst die Hosts-Datei und dann das DNS-System. Windows kann auch andere Systeme wie WINS oder NetBIOS überprüfen.

Wenn Sie einen Eintrag in einen hosts einfügen Datei, weisen Sie sie nicht dem Computer zu. Die Zuweisung eines vom Computer verwendeten Hostnamens erfolgt in den Konfigurationsdateien (auf *nix-Systemen) und den Systemeigenschaften in Windows-Systemen (Windows-Systeme können auch NIC-spezifische Suffixe haben).

Einträge im hosts Datei, wie das DNS-System, sind nur eine Zuordnung von einem Hostnamen zu einer IP-Adresse. Um den Hostnamen „localhost“ zu verwenden (es gibt nichts Besonderes, es ist ein Hostname wie alle anderen), muss er der Loopback-Schnittstelle zugeordnet werden (damit er immer auf den lokalen Computer verweist). Um sicherzustellen, dass dies funktioniert, verfügen alle Computer über diese Standardzuordnung in ihrem hosts Datei, aber sie könnte möglicherweise entfernt werden, wenn Sie diesen Hostnamen nicht verwenden möchten.

Außerdem ist es, wie andere angemerkt haben, sehr nützlich, einem Computer einen Hostnamen zuzuweisen. Wenn Sie mit dem Computer verbunden sind, können Sie seinen Hostnamen anzeigen lassen, wenn Sie sich anmelden, oder als Eingabeaufforderung oder an einer beliebigen Anzahl anderer Stellen. Dies erleichtert die Identifizierung des Computers, mit dem Sie verbunden sind. Wenn Sie diesen Hostnamen im DNS einrichten oder ihn in alle hosts einfügen Dateien können Sie sich mit dem Computer verbinden, indem Sie auf seinen Hostnamen verweisen, anstatt ständig seine IP-Adresse kennen zu müssen. (Noch nützlicher, wenn der Computer DHCP verwendet, da sich die Adresse ändern könnte. Wenn der Computer DNS aktualisiert, würde der DNS-Eintrag auf die neue IP-Adresse verweisen; Sie könnten immer noch eine Verbindung herstellen, ohne die neue IP-Adresse zu kennen, da Sie den DNS-Namen kennen ).

Es gibt viele andere Verwendungen von hosts und DNS, aber ich vermute, Sie haben mehr Fragen als Antworten, wenn Sie das alles lesen.

Lösung 4:

Jeder Host sollte einen aussagekräftigen Namen erhalten. Der Hostname kann mehreren Zwecken dienen:

1- Es hilft Ihnen zu erkennen, woran Sie gerade arbeiten.

2- Verwenden von in /etc/hosts konfigurierten Namen und/oder DNS-Einträge ist einfacher, als sich viele IP-Adressen zu merken.

3- Localhost ist ein reservierter Name, der sich auf die aktuelle Maschine bezieht (Adresse 127.0.0.1).

4- DNS-Einträge sind nützlich, um Ihre Server öffentlich zugänglich zu machen.

Die Wahl eines geeigneten Namens für jeden Server hilft Ihnen sehr bei Ihrer Verwaltung. Außerdem hilft es Ihren Clients beim Zugriff auf Ihre Server.

Lösung 5:

Nur als Randbemerkung:Das ordnungsgemäße Arbeiten mit der Vorwärts- und Rückwärts-DNS-Auflösung ist der absolute Eckpfeiler jeder IT-Installation auf diesem Planeten. Unterschätzen Sie niemals die Notwendigkeit eines gut gewarteten DNS und einer ordnungsgemäßen Auflösung von Hostnamen!


Linux
  1. So finden Sie heraus, wer auf Ihrem System angemeldet ist und was er tut

  2. Welcher Prozess verwendet alle meine Festplatten-E / A

  3. Was sind vdso und vsyscall?

  4. Wie finde ich alle Dateien, die *nicht* für Gruppen beschreibbar sind?

  5. Was sind die Sicherheitsimplikationen von systemd im Vergleich zu systemv init?

[Rezension] Pear OS 8:Alles dreht sich ums Aussehen

Was ist ZFS? Warum sind die Leute verrückt danach?

Linux – Was genau meinen wir, wenn wir sagen, dass wir Linux verwenden?

DevOps neu denken:Worum geht es?

SystemD - Wofür wird SystemD verwendet?

Befehle zum Erlernen eines unbekannten Systems