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
-
Was bewirkt der folgende Befehl?
getent group openldap
-
Was ist der größte Unterschied zwischen
getent
und den anderen behandelten Toolshost
unddig
? -
Mit welcher Option zu
dig
undhost
geben Sie die Art des abzurufenden Datensatzes an? -
Welcher der folgenden Einträge ist ein korrekter Eintrag für
/etc/hosts
?::1 localhost
localhost 127.0.0.1
-
Mit welcher Option geben Sie bei
getent
an, welche Datenquelle es für die Durchführung einer Suche verwenden soll?
Offene Übungen
-
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.
-
Was bedeutet die folgende Zeile in
/etc/nsswitch.conf
:hosts: files [SUCCESS=continue] dns
-
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
-
Was bewirkt der Befehl
dig +noall +answer +question lpi.org
? -
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
-
Was bewirkt der folgende Befehl?
getent group openldap
Der Befehl liest
/etc/nsswitch.conf
, sucht die Gruppeopenldap
aus den aufgelisteten Quellen und zeigt Informationen darüber an, sofern er welche findet. -
Was ist der größte Unterschied zwischen
getent
und den anderen behandelten Toolshost
unddig
?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
unddig
schlagen DNS-Einträge nach. -
Mit welcher Option zu
dig
undhost
geben Sie die Art des abzurufenden Datensatzes an?Beide Programme verwenden
t
, um die Art des abzurufenden Datensatzes anzugeben. -
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. -
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
-
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.
-
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. -
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.
-
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. -
Wie überschreiben Sie die Standardeinstellungen von
dig
, ohne sie auf der Befehlszeile anzugeben?Mit einer Datei
.digrc
im Homeverzeichnis.