nsswitch.conf versus host.conf

10

Angenommen, diese /etc/nsswitch.confDatei enthält

hosts: files dns

und /etc/host.confDatei hat

order bind,hosts

In welcher Reihenfolge würde das System dann eine /etc/hostsDNS-Suche verwenden, um einen Hostnamen aufzulösen? Mit anderen Worten, welche der beiden Konfigurationsdateien hat Vorrang?

Desmond Hume
quelle

Antworten:

14

/etc/nsswitch.confist heutzutage die Standarddatei für die Auflösung von Domainnamen. Ich habe die folgende Zeile oben in meiner /etc/host.confDatei: -

# The "order" line is only used by old versions of the C library.

nsswitch.confwird von so ziemlich allem auf meiner Debian-Box zur Namensauflösung verwendet. Angesichts der obigen Zeilen in Ihren Dateien besteht die Standardreihenfolge für die Namensauflösung darin, zuerst zu überprüfen /etc/hostsund dann die Nameserver /etc/resolv.confzu verwenden, die für eine DNS-Suche konfiguriert sind .

In letzter Zeit (seit etwa Ubuntu 11.10) ist das /etc/resolv.confstandardmäßig für die Verwendung der localhost-Schnittstelle (127.0.0.1) konfiguriert, bei der ein dnsmasqDämonprogramm auf Port 53 auf DNS-Anforderungen wartet. Dies führt normalerweise zu einer DNS-Auflösung, wie sie vom DHCP-Server Ihres LAN konfiguriert wurde. Dies kann jedoch manuell in der Netzwerkkonfigurations-GUI des Betriebssystems überschrieben werden.

Hinweis: Sie haben nicht erwähnt, welches Betriebssystem Sie verwenden, und das oben Gesagte stammt aus persönlicher Erfahrung mit Debian Ubuntu. Die Standardeinstellungen können bei verschiedenen Linux-Varianten unterschiedlich sein

Alex Leach
quelle