Debian kann Hostnamen nicht auflösen

7

Ich habe ein Problem beim Auflösen von Hostnamen unter Debian, das unter VMWare ausgeführt wird.

Es hat einfach aus heiterem Himmel aufgehört zu arbeiten. Irgendwo nach der Deinstallation des Percona-Servers und dem Löschen von / etc / mysql. Anfangs dachte es, es sei ein Problem mit dem Netzwerk, wenn der Host im Ruhezustand war, während der Gast ausgeführt wurde. Dies ist ein bekanntes Problem bei VMWare. Aber es kann nicht sein.

Debian 7.4, VMWare-Tools installiert

/etc/resolv.conf

# Generated by NetworkManager
nameserver 8.8.8.8
nameserver 8.8.4.4

Ping-, Dig- und Nslookup-Ausgabe

ivar@debian:~$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=47 time=40.0 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=47 time=39.7 ms
^C
--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 39.747/39.874/40.001/0.127 ms
ivar@debian:~$ dig google.com

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18895
;; flags: qr rd ra; QUERY: 1, ANSWER: 11, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;google.com.            IN  A

;; ANSWER SECTION:
google.com.     299 IN  A   173.194.113.100
google.com.     299 IN  A   173.194.113.99
google.com.     299 IN  A   173.194.113.96
google.com.     299 IN  A   173.194.113.103
google.com.     299 IN  A   173.194.113.110
google.com.     299 IN  A   173.194.113.102
google.com.     299 IN  A   173.194.113.98
google.com.     299 IN  A   173.194.113.105
google.com.     299 IN  A   173.194.113.97
google.com.     299 IN  A   173.194.113.101
google.com.     299 IN  A   173.194.113.104

;; Query time: 43 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Mar 29 18:46:07 2014
;; MSG SIZE  rcvd: 204

ivar@debian:~$ nslookup google.com
Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:   google.com
Address: 173.194.113.97
Name:   google.com
Address: 173.194.113.104
Name:   google.com
Address: 173.194.113.101
Name:   google.com
Address: 173.194.113.99
Name:   google.com
Address: 173.194.113.100
Name:   google.com
Address: 173.194.113.96
Name:   google.com
Address: 173.194.113.102
Name:   google.com
Address: 173.194.113.103
Name:   google.com
Address: 173.194.113.110
Name:   google.com
Address: 173.194.113.105
Name:   google.com
Address: 173.194.113.98

ivar@debian:~$ ping google.com
ping: unknown host google.com

Irgendwelche Ideen, wie Sie dieses Problem beheben können?

/etc/nsswitch.conf

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat
group:          compat
shadow:         compat

hosts:          files mdns4_minimal wins [NOTFOUND=return] dns mdns4
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis
Ivarpoiss
quelle
2
Was sind die Inhalte von /etc/nsswitch.conf?
Jordan
Hinzugefügt /etc/nsswitch.conf
Ivarpoiss

Antworten:

5

Mit Ihrem aktuellen nsswitch.confwird DNS nur angefordert, wenn eine Anfrage für winsfehlschlägt. Hier sind die relevanten Auszüge aus der nsswitch.confManpage auf meinem System:

notfound
Die Suche war erfolgreich, aber der angeforderte Eintrag wurde nicht gefunden. Die Standardaktion für diese Bedingung ist "Weiter".

return
Gibt jetzt ein Ergebnis zurück. Rufen Sie keine weiteren Suchfunktionen auf.

In Ihrem Beispiel haben Sie WINS erfolgreich abgefragt, aber kein Ergebnis für abgerufen google.com. Um dies zu beheben, können Sie [NOTFOUND=return]die Dienste, die für die Hostsuche abgefragt werden , entweder entfernen oder neu anordnen. Hier ist ein Beispiel für eine Korrektur:

hosts:          files mdns4_minimal dns wins [NOTFOUND=return] mdns4
Jordanm
quelle
Das tut es. Übrigens, spiegelt sich die erfolgreiche Gewinnabfrage ohne Antwort auch in der von mir geposteten Ausgabe wider? Wenn ja, können Sie mir sagen, wo? Da ich diese Ausgabe nicht so gut interpretieren kann: p
Ivarpoiss
@Ivarpoiss Nur in der nsswitch.confDatei, die Sie gepostet haben.
Jordanm
Das hat der Trick auch für mich getan! Nur damit ich weiß, auf welches Paket bezieht sich diese Konfigurationsdatei?
Martin
1
@martin libc6. Die CBasisbibliothek enthält Funktionen wie gethostbynameDNS-Lookups. Die Standardeinstellung befindet sich am/usr/share/libc-bin/nsswitch.conf
13.