Linux Professional Institute Learning Logo.
Weiter zum Inhalt
  • Home
    • Alle Ressourcen
    • LPI Lernmaterialien
    • Mitmachen
    • Publishing Partner
    • Publishing Partner werden
    • Über uns
    • FAQ
    • Mitwirkende
    • Roadmap
    • Kontakt
  • LPI.org
109.4 Lektion 1
Thema 105: Shells und Shell-Skripte
105.1 Die Shell-Umgebung anpassen und verwenden
  • 105.1 Lektion 1
  • 105.1 Lektion 2
  • 105.1 Lektion 3
105.2 Einfache Skripte anpassen oder schreiben
  • 105.2 Lektion 1
  • 105.2 Lektion 2
Thema 106: Benutzerschnittstellen und Desktops
106.1 X11 installieren und konfigurieren
  • 106.1 Lektion 1
106.2 Grafische Desktops
  • 106.2 Lektion 1
106.3 Barrierefreiheit
  • 106.3 Lektion 1
Thema 107: Administrative Aufgaben
107.1 Benutzer- und Gruppenkonten und dazugehörige Systemdateien verwalten
  • 107.1 Lektion 1
  • 107.1 Lektion 2
107.2 Systemadministrationsaufgaben durch Einplanen von Jobs automatisieren
  • 107.2 Lektion 1
  • 107.2 Lektion 2
107.3 Lokalisierung und Internationalisierung
  • 107.3 Lektion 1
Thema 108: Grundlegende Systemdienste
108.1 Die Systemzeit verwalten
  • 108.1 Lektion 1
  • 108.1 Lektion 2
108.2 Systemprotokollierung
  • 108.2 Lektion 1
  • 108.2 Lektion 2
108.3 Grundlagen von Mail Transfer Agents (MTA)
  • 108.3 Lektion 1
108.4 Drucker und Druckvorgänge verwalten
  • 108.4 Lektion 1
Thema 109: Netzwerkgrundlagen
109.1 Grundlagen von Internetprotokollen
  • 109.1 Lektion 1
  • 109.1 Lektion 2
109.2 Persistente Netzwerkkonfiguration
  • 109.2 Lektion 1
  • 109.2 Lektion 2
109.3 Grundlegende Netzwerkfehlerbehebung
  • 109.3 Lektion 1
  • 109.3 Lektion 2
109.4 Clientseitiges DNS konfigurieren
  • 109.4 Lektion 1
Thema 110: Sicherheit
110.1 Administrationsaufgaben für Sicherheit durchführen
  • 110.1 Lektion 1
110.2 Einen Rechner absichern
  • 110.2 Lektion 1
110.3 Daten durch Verschlüsselung schützen
  • 110.3 Lektion 1
  • 110.3 Lektion 2
How to get certified
  1. Thema 109: Netzwerkgrundlagen
  2. 109.4 Clientseitiges DNS konfigurieren
  3. 109.4 Lektion 1

109.4 Lektion 1

Zertifikat:

LPIC-1

Version:

5.0

Thema:

109 Netzwerkgrundlagen

Lernziel:

109.4 Clientseitiges DNS konfigurieren

Lektion:

1 von 1

Einführung

Diese Lektion behandelt die Konfiguration der clientseitigen Namensauflösung und einige CLI-Tools zur Namensauflösung.

Es ist nicht praktikabel, sich alle relevanten IP-Adressen, UIDs, GIDs und andere Nummern zu merken. Dienste zur Namensauflösung übersetzen leicht zu merkende Namen in Zahlen und umgekehrt. Diese Lektion konzentriert sich auf die Auflösung von Hostnamen, aber ein ähnlicher Prozess findet auch bei Benutzernamen, Gruppennamen, Portnummern und einigen anderen statt.

Der Prozess der Namensauflösung

Programme, die Namen in Zahlen auflösen, nutzen fast immer Funktionen, die die Standard-C-Bibliothek zur Verfügung stellt, die auf Linux-Systemen die glibc des GNU-Projekts darstellt. Das erste, was diese Funktionen tun, ist, die Datei /etc/nsswitch.conf lesen, um herauszufinden, wie der jeweilige Name aufgelöst werden kann. Diese Lektion konzentriert sich auf die Auflösung von Hostnamen. Sobald der Prozess /etc/nsswitch.conf gelesen hat, sucht er den Namen auf die angegebene Weise. Da /etc/nsswitch.conf Plugins unterstützt, können beliebige Schritte folgen. Hat die Funktion die Suche nach dem Namen oder der Nummer abgeschlossen, gibt sie das Ergebnis an den aufrufenden Prozess zurück.

DNS-Klassen

DNS hat drei Eintragsklassen: IN, HS und CH. In dieser Lektion werden alle DNS-Abfragen vom Typ IN sein. Die IN-Klasse steht für Internetadressen, die den TCP/IP-Stack verwenden. CH steht für ChaosNet, eine Netzwerktechnologie, die nicht mehr verwendet wird. Die HS-Klasse steht für Hesiod, eine Methode zum Speichern von Passwörtern, Gruppeneinträgen und Ähnlichem im DNS. Hesiod ist hier kein Thema.

/etc/nsswitch.conf verstehen

Der beste Weg, etwas über diese Datei zu erfahren, ist das Lesen der Manpage, die Teil des Linux-Manpage-Projekts ist. Der Aufruf erfolgt über den Befehl man nsswitch.conf. Alternativ finden Sie sie auch unter https://man7.org/linux/man-pages/dir_section_5.html.

Hier ein einfaches Beispiel für /etc/nsswitch.conf aus der entsprechenden Handbuchseite:

           passwd:         compat
           group:          compat
           shadow:         compat

           hosts:          dns [!UNAVAIL=return] files
           networks:       nis [NOTFOUND=return] files
           ethers:         nis [NOTFOUND=return] files
           protocols:      nis [NOTFOUND=return] files
           rpc:            nis [NOTFOUND=return] files
           services:       nis [NOTFOUND=return] files
           # This is a comment. It is ignored by the resolution functions.

Die Datei ist in Spalten organisiert. Die erste Spalte nennt den Typ der Namensdatenbank. Die übrigen Spalten sind die Methoden, die die Auflösungsfunktionen verwenden sollen, um einen Namen zu suchen. Auf die Methoden folgen die Funktionen von links nach rechts. Spalten mit [] stellen eine begrenzte bedingte Logik für die Spalte unmittelbar links von ihr bereitzustellen.

Angenommen ein Prozess versucht, den Hostnamen learning.lpi.org aufzulösen. Er würde zunächst einen entsprechenden C-Bibliotheksaufruf durchführen (höchstwahrscheinlich gethostbyname). Diese Funktion liest dann /etc/nsswitch.conf. Da der Prozess nach einem Hostnamen sucht, findet er die Zeile, die mit hosts beginnt. Er versucht dann, den Namen über DNS aufzulösen. Die nächste Spalte ([!UNAVAIL=return]) bedeutet, dass, wenn der Dienst nicht unerreichbar ist, die nächste Quelle nicht versucht wird — oder anders: Ist DNS verfügbar, wird nicht weiter versucht, den Hostnamen aufzulösen, auch wenn die Nameserver es nicht können. Wenn DNS nicht verfügbar ist, wird mit der nächsten Quelle fortgefahren, hier files.

Eine Spalte im Format [result=action] bedeutet, dass action ausgeführt wird, wenn ein Resolver Lookup der Spalte links result lautet. Ist result ein ! vorangestellt, wird action ausgeführt, sofern das Ergebnis nicht result entspricht. Beschreibungen der möglichen Ergebnisse und Aktionen finden Sie in der Manpage.

Nehmen wir nun an, ein Prozess versucht, eine Portnummer in einen Dienstnamen aufzulösen, und dafür die Zeile services lesen. Die erste aufgeführte Quelle ist nis. NIS steht für Network Information Service (manchmal auch als “Yellow Pages” oder “Gelbe Seiten” bezeichnet). Es handelt sich um einen alten Dienst zur zentralen Verwaltung beispielsweise von Benutzern. Er wird wegen seiner geringen Sicherheit kaum noch verwendet. Die nächste Spalte [NOTFOUND=return] zeigt an, dass die Suche abgebrochen wird, wenn die Suche zwar erfolgreich war, aber der Dienst nicht gefunden wurde. Wenn die genannte Bedingung nicht zutrifft, verwende lokale Dateien.

Alles, was rechts von # steht, ist ein Kommentar und wird ignoriert.

Die Datei /etc/resolv.conf

Die Datei /etc/resolv.conf dient der Konfiguration der Hostauflösung über DNS. Einige Distributionen haben Startskripte, Daemons und andere Werkzeuge, die in diese Datei schreiben. Beachten Sie dies, falls Sie die Datei eventuell manuell bearbeiten wollen. Überprüfen Sie Ihre Distribution und die Dokumentation der Netzwerkkonfigurationsprogramme, wenn dies der Fall ist. Einige Tools wie etwa NetworkManager hinterlassen einen Kommentar in der Datei, der Sie darauf hinweist, dass manuelle Änderungen überschrieben werden.

Wie bei /etc/nsswitch.conf gibt es auch für diese Datei Manpages, die Sie mit man resolv.conf oder unter https://man7.org/linux/man-pages/man5/resolv.conf.5.html finden.

Das Dateiformat ist recht einfach. In der Spalte ganz links steht die Option name. Die übrigen Spalten in derselben Zeile enthalten den Wert der Option.

Die gebräuchlichste Option ist nameserver, die die IPv4- oder IPv6-Adresse eines DNS-Servers angibt. Aktuell können Sie bis zu drei Nameserver angeben. Enthält Ihre /etc/resolv.conf keine nameserver-Option, nutzt Ihr System standardmäßig den Nameserver auf dem lokalen Rechner.

Hier eine einfache Beispieldatei, repräsentativ für gängige Konfigurationen:

search lpi.org
nameserver 10.0.0.53
nameserver fd00:ffff::2:53

Die Option search ermöglicht Kurzsuchen. Im Beispiel ist eine einzige Suchdomäne lpi.org konfiguriert. Das bedeutet, dass bei jedem Versuch, einen Hostnamen ohne einen Domänenanteil aufzulösen, .lpi.org vor der Suche angehängt wird. Wenn Sie zum Beispiel nach einem Host mit dem Namen learning suchen, würde der Resolver nach learning.lpi.org suchen. Sie können bis zu sechs Suchdomänen konfigurieren.

Eine weitere gängige Option ist domain, die den lokalen Domänennamen bestimmt. Fehlt diese Option, wird standardmäßig alles nach dem ersten . im Hostnamen des Rechners verwendet. Wenn der Rechnername kein . enthält, wird angenommen, dass der Rechner Teil der Root-Domäne ist. Wie search kann domain für kurze Namenssuchen verwendet werden.

Beachten Sie, dass sich domain und search gegenseitig ausschließen. Sind beide vorhanden, kommt die letzte Instanz in der Datei zum Einsatz.

Es gibt mehrere Optionen, die das Verhalten des Resolvers beeinflussen. Um diese zu setzen, verwenden Sie das Schlüsselwort options, gefolgt vom Namen der zu setzenden Option und, falls zutreffend, einem :, gefolgt von dem Wert. Hier ein Beispiel für die Option timeout, die die Zeit in Sekunden angibt, die der Resolver auf einen Nameserver wartet, bevor er aufgibt:

option timeout:3

Es gibt weitere Optionen für resolv.conf, aber dies sind die gängigsten.

Die Datei /etc/hosts

Die Datei /etc/hosts dient dazu, Namen in IP-Adressen aufzulösen und umgekehrt — sowohl IPv4 als auch IPv6. Die linke Spalte ist die IP-Adresse, der Rest sind Namen, die mit dieser Adresse verbunden sind. In den meisten Fällen enthält /etc/hosts Hosts und Adressen, bei denen DNS nicht möglich ist, wie z.B. Loopback-Adressen. Im nachstehenden Beispiel sind IP-Adressen kritischer Infrastrukturkomponenten definiert.

Hier ist ein realistisches Beispiel für eine /etc/hosts-Datei:

127.0.0.1       localhost
127.0.1.1       proxy
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

10.0.0.1        gateway.lpi.org gateway gw
fd00:ffff::1    gateway.lpi.org gateway gw

10.0.1.53       dns1.lpi.org
fd00:ffff::1:53 dns1.lpi.org
10.0.2.53       dns2.lpi.org
fd00:ffff::2:53 dns2.lpi.org

systemd-resolved

Systemd bietet einen Dienst namens systemd-resolved für mDNS, DNS und LLMNR. Er lauscht auf DNS-Anfragen auf 127.0.0.53, bietet aber keinen vollwertigen DNS-Server. Alle DNS-Anfragen, die er erhält, werden durch Abfragen von Servern, die in /etc/systemd/resolv.conf oder /etc/resolv.conf konfiguriert sind, ermittelt. Um dies zu nutzen, verwenden Sie resolve für hosts in /etc/nsswitch.conf. Denken Sie daran, dass das Betriebssystempaket, das die systemd-resolved-Bibliothek enthält, möglicherweise nicht standardmäßig installiert ist.

Tools zur Namensauflösung

Linuxbenutzern stehen viele Werkzeuge zur Namensauflösung zur Verfügung, von denen wir hier drei behandeln. getent ist nützlich, um zu sehen, wie Anfragen in der realen Welt aufgelöst werden. host hilft bei einfachen DNS-Abfragen. dig ist geeignet für komplexe DNS-Operationen, etwa bei der Fehlersuche bei DNS-Serverproblemen.

Der Befehl getent

Das Dienstprogramm getent dient der Anzeige von Einträgen aus Nameservice-Datenbanken. Es ruft Datensätze aus jeder durch /etc/nsswitch.conf konfigurierbaren Quelle ab.

Geben Sie nach dem Befehl getent den Namenstyp an, den Sie auflösen möchten, und optional einen bestimmten Eintrag. Geben Sie nur den Namenstyp an, versucht getent, alle Einträge dieses Datentyps anzuzeigen:

$ getent hosts
127.0.0.1       localhost
127.0.1.1       proxy
10.0.1.53       dns1.lpi.org
10.0.2.53       dns2.lpi.org
127.0.0.1       localhost ip6-localhost ip6-loopback
$ getent hosts dns1.lpi,org
fd00:ffff::1:53 dns1.lpi.org

Ab Version 2.2.5 von glibc können Sie getent mit der Option -s anweisen, eine bestimmte Datenquelle zu verwenden. Das folgende Beispiel demonstriert dies:

$ getent -s files hosts learning.lpi.org
::1             learning.lpi.org
$ getent -s dns hosts learning.lpi.org
208.94.166.198  learning.lpi.org

Der Befehl host

host ist ein einfaches Programm zum Nachschlagen von DNS-Einträgen. Ohne Optionen gibt host, wenn ein Name angegeben ist, die A-, AAAA- und MX-Einträge zurück. Ist eine IPv4- oder IPv6-Adresse angegeben, gibt es den PTR-Eintrag aus, falls ein solcher existiert:

$ host wikipedia.org
wikipedia.org has address 208.80.154.224
wikipedia.org has IPv6 address 2620:0:861:ed1a::1
wikipedia.org mail is handled by 10 mx1001.wikimedia.org.
wikipedia.org mail is handled by 50 mx2001.wikimedia.org.
$ host 208.80.154.224
224.154.80.208.in-addr.arpa domain name pointer text-lb.eqiad.wikimedia.org.

Wenn Sie nach einem bestimmten Eintragstyp suchen, nutzen Sie host -t:

$ host -t NS lpi.org
lpi.org name server dns1.easydns.com.
lpi.org name server dns3.easydns.ca.
lpi.org name server dns2.easydns.net.
$ host -t SOA lpi.org
lpi.org has SOA record dns1.easydns.com. zone.easydns.com. 1593109612 3600 600 1209600 300

host kann auch einen bestimmten Nameserver abfragen, wenn Sie nicht die Server in /etc/resolv.conf verwenden wollen. Fügen Sie einfach die IP-Adresse oder den Hostnamen des Servers, der verwendet werden soll, als letztes Argument hinzu:

$ host -t MX lpi.org dns1.easydns.com
Using domain server:
Name: dns1.easydns.com
Address: 64.68.192.10#53
Aliases:

lpi.org mail is handled by 10 aspmx4.googlemail.com.
lpi.org mail is handled by 10 aspmx2.googlemail.com.
lpi.org mail is handled by 5 alt1.aspmx.l.google.com.
lpi.org mail is handled by 0 aspmx.l.google.com.
lpi.org mail is handled by 10 aspmx5.googlemail.com.
lpi.org mail is handled by 10 aspmx3.googlemail.com.
lpi.org mail is handled by 5 alt2.aspmx.l.google.com.

Der Befehl dig

Ein weiteres Werkzeug zur Abfrage von DNS-Servern ist dig. Dieser Befehl ist sehr viel auskunftsfreudiger als host. Standardmäßig fragt dig A-Einträgen ab. Für die einfache Suche nach einer IP-Adresse oder einem Hostnamen ist es wahrscheinlich zu ausführlich. dig funktioniert für einfache Abfragen, ist aber eher für die Fehlersuche in der DNS-Serverkonfiguration geeignet:

$ dig learning.lpi.org

; <<>> DiG 9.11.5-P4-5.1+deb10u1-Debian <<>> learning.lpi.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63004
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 5

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: ca7a415be1cec45592b082665ef87f3483b81ddd61063c30 (good)
;; QUESTION SECTION:
;learning.lpi.org.		IN	A

;; ANSWER SECTION:
learning.lpi.org.	600	IN	A	208.94.166.198

;; AUTHORITY SECTION:
lpi.org.		86400	IN	NS	dns2.easydns.net.
lpi.org.		86400	IN	NS	dns1.easydns.com.
lpi.org.		86400	IN	NS	dns3.easydns.ca.

;; ADDITIONAL SECTION:
dns1.easydns.com.	172682	IN	A	64.68.192.10
dns2.easydns.net.	170226	IN	A	198.41.222.254
dns1.easydns.com.	172682	IN	AAAA	2400:cb00:2049:1::a29f:1835
dns2.easydns.net.	170226	IN	AAAA	2400:cb00:2049:1::c629:defe

;; Query time: 135 msec
;; SERVER: 192.168.1.20#53(192.168.1.20)
;; WHEN: Sun Jun 28 07:29:56 EDT 2020
;; MSG SIZE  rcvd: 266

Wie Sie sehen, liefert dig umfangreiche Informationen. Die Ausgabe ist in Abschnitte unterteilt. Der erste zeigt Informationen über die installierte Version von dig und die gesendete Abfrage sowie allen für den Befehl verwendeten Optionen. Danach folgen Details zu Abfrage und Antwort.

Der nächste Abschnitt gibt Auskunft über die verwendeten EDNS-Erweiterungen und die Abfrage — im Beispiel wird die Cookie-Erweiterung verwendet. dig sucht nach einem A-Eintrag für learning.lpi.org.

Der nächste Abschnitt zeigt das Ergebnis der Abfrage. Die Zahl in der zweiten Spalte ist die TTL der Ressource in Sekunden.

Der Rest der Ausgabe liefert Informationen über die Nameserver der Domäne, einschließlich der NS-Einträge für den Server sowie der A- und AAAA-Einträge der Server im NS-Eintrag der Domäne.

Wie bei host geben Sie mit der Option t einen Datensatztyp an:

$ dig -t SOA lpi.org

; <<>> DiG 9.11.5-P4-5.1+deb10u1-Debian <<>> -t SOA lpi.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16695
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 6

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 185c67140a63baf46c4493215ef8906f7bfbe15bdca3b01a (good)
;; QUESTION SECTION:
;lpi.org.			IN	SOA

;; ANSWER SECTION:
lpi.org.		600	IN	SOA	dns1.easydns.com. zone.easydns.com. 1593109612 3600 600 1209600 300

;; AUTHORITY SECTION:
lpi.org.		81989	IN	NS	dns1.easydns.com.
lpi.org.		81989	IN	NS	dns2.easydns.net.
lpi.org.		81989	IN	NS	dns3.easydns.ca.

;; ADDITIONAL SECTION:
dns1.easydns.com.	168271	IN	A	64.68.192.10
dns2.easydns.net.	165815	IN	A	198.41.222.254
dns3.easydns.ca.	107	IN	A	64.68.196.10
dns1.easydns.com.	168271	IN	AAAA	2400:cb00:2049:1::a29f:1835
dns2.easydns.net.	165815	IN	AAAA	2400:cb00:2049:1::c629:defe

;; Query time: 94 msec
;; SERVER: 192.168.1.20#53(192.168.1.20)
;; WHEN: Sun Jun 28 08:43:27 EDT 2020
;; MSG SIZE  rcvd: 298

dig kennt zahlreiche Optionen zur Feinabstimmung sowohl der Ausgabe wie auch der an den Server gesendeten Abfrage. Diese Optionen beginnen mit +. Eine Option ist short, die alle Ausgaben außer dem Ergebnis unterdrückt:

$ dig +short lpi.org
65.39.134.165
$ dig +short -t SOA lpi.org
dns1.easydns.com. zone.easydns.com. 1593109612 3600 600 1209600 300

Hier ist ein Beispiel für die Deaktivierung der EDNS-Cookie-Erweiterung:

$ dig +nocookie -t MX lpi.org

; <<>> DiG 9.11.5-P4-5.1+deb10u1-Debian <<>> +nocookie -t MX lpi.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47774
;; flags: qr rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 3, ADDITIONAL: 5

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;lpi.org.			IN	MX

;; ANSWER SECTION:
lpi.org.		468	IN	MX	0 aspmx.l.google.com.
lpi.org.		468	IN	MX	10 aspmx4.googlemail.com.
lpi.org.		468	IN	MX	10 aspmx5.googlemail.com.
lpi.org.		468	IN	MX	10 aspmx2.googlemail.com.
lpi.org.		468	IN	MX	10 aspmx3.googlemail.com.
lpi.org.		468	IN	MX	5 alt2.aspmx.l.google.com.
lpi.org.		468	IN	MX	5 alt1.aspmx.l.google.com.

;; AUTHORITY SECTION:
lpi.org.		77130	IN	NS	dns2.easydns.net.
lpi.org.		77130	IN	NS	dns3.easydns.ca.
lpi.org.		77130	IN	NS	dns1.easydns.com.

;; ADDITIONAL SECTION:
dns1.easydns.com.	76140	IN	A	64.68.192.10
dns2.easydns.net.	73684	IN	A	198.41.222.254
dns1.easydns.com.	76140	IN	AAAA	2400:cb00:2049:1::a29f:1835
dns2.easydns.net.	73684	IN	AAAA	2400:cb00:2049:1::c629:defe

;; Query time: 2 msec
;; SERVER: 192.168.1.20#53(192.168.1.20)
;; WHEN: Mon Jun 29 10:18:58 EDT 2020
;; MSG SIZE  rcvd: 389

Geführte Übungen

  1. Was bewirkt der folgende Befehl?

    getent group openldap
  2. Was ist der größte Unterschied zwischen getent und den anderen behandelten Tools host und dig?

  3. Mit welcher Option zu dig und host geben Sie die Art des abzurufenden Datensatzes an?

  4. Welcher der folgenden Einträge ist ein korrekter Eintrag für /etc/hosts?

    ::1 localhost

    localhost 127.0.0.1

  5. Mit welcher Option geben Sie bei getent an, welche Datenquelle es für die Durchführung einer Suche verwenden soll?

Offene Übungen

  1. Was geschieht voraussichtlich, wenn Sie die folgende Datei /etc/resolv.conf mit einem Texteditor bearbeiten?

    # Generated by NetworkManager
    nameserver 192.168.1.20

    Die Änderungen werden von NetworkManager überschrieben.

    NetworkManager aktualisiert seine Konfiguration mit Ihren Änderungen.

    Ihre Änderungen haben keine Auswirkungen auf das System.

    NetworkManager wird deaktiviert.

  2. Was bedeutet die folgende Zeile in /etc/nsswitch.conf:

    hosts: files [SUCCESS=continue] dns
  3. Warum löst das System mit der folgenden /etc/resolv.conf die Namen nicht über DNS auf?

    search lpi.org
    #nameserver fd00:ffff::1:53
    #nameserver 10.0.1.53
  4. Was bewirkt der Befehl dig +noall +answer +question lpi.org?

  5. Wie überschreiben Sie die Standardeinstellungen von dig, ohne sie auf der Befehlszeile anzugeben?

Zusammenfassung

Der Befehl getent ist ein hervorragendes Werkzeug zur Anzeige von Resolveraufrufen. Für einfache DNS-Abfragen ist host einfach zu verwenden und liefert eine übersichtliche Ausgabe. Wenn detaillierte Informationen benötigen werden oder eine DNS-Abfrage Feinabstimmung erfordert, ist dig die beste Wahl.

Dank Shared-Library-Plugins und der Konfigurierbarkeit des Resolververhaltens verfügt Linux über eine hervorragende Unterstützung für die Auflösung von Namen und Nummern verschiedener Typen. Das Programm getent löst mit Hilfe der Resolverbibliotheken Namen auf. Die Programme host und dig dienen der Abfrage von DNS-Servern.

In der Datei /etc/nsswitch.conf konfigurieren Sie das Verhalten des Resolvers: Datenquellen ändern und einfache bedingte Logik für Namenstypen mit mehreren Quellen hinzufügen.

DNS wird in /etc/resolv.conf konfiguriert. Viele Distributionen haben Werkzeuge, die diese Datei für Sie verwalten. Schauen Sie also in der Dokumentation Ihres Systems nach, wenn manuelle Änderungen nicht persistent sind.

Die Datei /etc/hosts dient dazu, Hostnamen in IPs aufzulösen und umgekehrt, meist Namen wie localhost, die nicht über DNS verfügbar sind.

Sie können in den in dieser Lektion behandelten Konfigurationsdateien Kommentare ergänzen — Text rechts von # wird vom System ignoriert.

Lösungen zu den geführten Übungen

  1. Was bewirkt der folgende Befehl?

    getent group openldap

    Der Befehl liest /etc/nsswitch.conf, sucht die Gruppe openldap aus den aufgelisteten Quellen und zeigt Informationen darüber an, sofern er welche findet.

  2. Was ist der größte Unterschied zwischen getent und den anderen behandelten Tools host und dig?

    getent sucht nach Namen unter Verwendung der Resolverbibliotheken, die anderen Tools fragen nur DNS ab. getent dient der Fehlersuche in /etc/nsswitch.conf und der Konfiguration der Bibliotheken zur Namensauflösung, die Ihr System nutzt. host und dig schlagen DNS-Einträge nach.

  3. Mit welcher Option zu dig und host geben Sie die Art des abzurufenden Datensatzes an?

    Beide Programme verwenden t, um die Art des abzurufenden Datensatzes anzugeben.

  4. Welcher der folgenden Einträge ist ein korrekter Eintrag für /etc/hosts?

    ::1 localhost

    X

    localhost 127.0.0.1

    ::1 localhost ist die richtige Zeile. Die linke Spalte ist immer eine IPv4- oder IPv6-Adresse.

  5. Mit welcher Option geben Sie bei getent an, welche Datenquelle es für die Durchführung einer Suche verwenden soll?

    Die Option -s dient der Angabe der Datenquelle, z.B.:

    $ getent -s files hosts learning.lpi.org
    192.168.10.25   learning.lpi.org
    $ getent -s dns hosts learning.lpi.org
    208.94.166.198  learning.lpi.org

Lösungen zu den offenen Übungen

  1. Was geschieht voraussichtlich, wenn Sie die folgende Datei /etc/resolv.conf mit einem Texteditor bearbeiten?

    # Generated by NetworkManager
    nameserver 192.168.1.20

    Die Änderungen werden von NetworkManager überschrieben.

    X

    NetworkManager aktualisiert seine Konfiguration mit Ihren Änderungen.

    Ihre Änderungen haben keine Auswirkungen auf das System.

    NetworkManager wird deaktiviert.

  2. Was bedeutet die folgende Zeile in /etc/nsswitch.conf:

    hosts: files [SUCCESS=continue] dns

    Bei der Suche nach Hostnamen wird zuerst die Datei /etc/hosts und dann DNS überprüft. Findet sich ein Eintrag sowohl in den Dateien als auch im DNS, wird der Eintrag im DNS verwendet.

  3. Warum löst das System mit der folgenden /etc/resolv.conf die Namen nicht über DNS auf?

    search lpi.org
    #nameserver fd00:ffff::1:53
    #nameserver 10.0.1.53

    Beide DNS-Server sind auskommentiert — auf dem lokalen Host läuft kein DNS-Server.

  4. Was bewirkt der Befehl dig +noall +answer +question lpi.org?

    Der Befehl sucht nach dem A-Eintrag für lpi.org und zeigt nur Anfrage und Antwort an.

  5. Wie überschreiben Sie die Standardeinstellungen von dig, ohne sie auf der Befehlszeile anzugeben?

    Mit einer Datei .digrc im Homeverzeichnis.

Linux Professional Insitute Inc. Alle Rechte vorbehalten. Besuchen Sie die LPI Learning Website: https://learning.lpi.org
Dieses Werk steht unter der Lizenz Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International.

Nächste Lektion

110.1 Administrationsaufgaben für Sicherheit durchführen (110.1 Lektion 1)

Nächste Lektion lesen

Linux Professional Insitute Inc. Alle Rechte vorbehalten. Besuchen Sie die LPI Learning Website: https://learning.lpi.org
Dieses Werk steht unter der Lizenz Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International.

LPI ist eine Non-Profit-Organisation.

© 2022 Linux Professional Institute (LPI) ist eine globale Organisation für Zertifizierungsstandards und zur Karriereplanung für Open-Source-Profis. Mit mehr als 200.000 Zertifikatsinhabern ist es die weltweit erste und größte herstellerneutrale Linux- und Open-Source-Zertifizierungsstelle. LPI verfügt über zertifizierte Fachleute in über 180 Ländern, bietet Prüfungen in mehreren Sprachen an und hat Hunderte von Trainingspartnern.

Unser Ziel ist es, wirtschaftliche und kreative Möglichkeiten für alle zu ermöglichen, indem wir Open-Source-Wissens- und Kompetenzzertifizierungen allgemein zugänglich machen.

  • LinkedIn
  • flogo-RGB-HEX-Blk-58 Facebook
  • Twitter
  • Kontaktieren Sie uns
  • Datenschutz und Cookie-Richtlinien

Haben Sie einen Fehler entdeckt oder möchten Sie helfen, diese Seite zu verbessern? Lassen Sie es uns wissen.

© 1999–2022 The Linux Professional Institute Inc. Alle Rechte vorbehalten.