nslookup findet ip, ping jedoch nicht

53

Ich weiß, das sieht aus wie all die anderen "Kann über IP pingen, aber nicht über DNS" -Fragen, aber diese haben mir überhaupt nicht wirklich geholfen.

Außerdem ist es nicht möglich, Hosts-Dateien auf allen Computern zu haben, da dieser Server möglicherweise viele Computer verwaltet, die eine Verbindung zu ihm herstellen.

Ich habe einen ldap + dns-Server eingerichtet und möchte, dass sich die Computer in meinem Netzwerk auf dem ldap-Server authentifizieren.

Der ldap-Teil davon funktioniert einwandfrei und ich kann mit den ldap-Anmeldeinformationen problemlos auf den ldap-Server zugreifen.

Das Problem kommt mit den Klientenmaschinen, der Klient wird eingestellt, um den DNS-Bediener zu benutzen (in diesem Fall 192.168.0.243) und wenn ich in das Terminal komme und ein nslookup tue, findet es den ldap Bediener gerade fein.

fernando@desktest:~$ nslookup ldap.mynet.local
Server:     192.168.0.243
Address:    192.168.0.243#53

Name:   ldap.mynet.local
Address: 192.168.0.243

Aber wenn ich es anpinge, findet es die IP-Adresse nicht. Es hängt nur hübsch da, bis ich es STRG-C drücke.

Natürlich funktioniert das Pingen per IP-Adresse einwandfrei.

Hier sind die Zonendateien für den DNS-Server:

fernando@ldap:~$ cat /etc/bind/named.conf.local
zone "mynet.local" {
    type master;
    file "/etc/bind/db.mynet.local";
};

zone "0.168.192.in-addr.arpa" {
    type master;
    notify no;
    file "/etc/bind/db.192";
};
fernando@ldap:~$ cat /etc/bind/db.mynet.local 
;
; BIND data file for local loopback interface
;
$TTL    604800
@   IN  SOA ns.mynet.local. root.mynet.local. (
                  7     ; Serial
             604800     ; Refresh
              86400     ; Retry
            2419200     ; Expire
         604800 )   ; Negative Cache TTL
;
@   IN  NS  ns.mynet.local.
ns  IN  A   192.168.0.243
server  IN  A   192.168.0.250
desktest    IN  A   192.168.0.249
remote  IN  A   192.168.0.248
winserver   IN  A   192.168.0.247
web         IN  A   192.168.0.246
tempfs  IN  A   192.168.0.245
ldap    IN  A   192.168.0.243
antenarfb   IN  A   192.168.0.253
antenapan   IN  A   10.82.223.7
adslgvt IN  A   192.168.0.1
fernando@ldap:~$ cat /etc/bind/db.192 
;
; BIND reverse data file for local loopback interface
;
$TTL    604800
@   IN  SOA mynet.local. root.mynet.local. (
                  6     ; Serial
             604800     ; Refresh
              86400     ; Retry
            2419200     ; Expire
             604800 )   ; Negative Cache TTL
;
@   IN  NS  ns.
1   IN  PTR ns.mynet.local.
2   IN  PTR server.mynet.local.
3   IN  PTR desktest.mynet.local.
4   IN  PTR remote.mynet.local.
5   IN  PTR winserver.mynet.local.
6   IN  PTR web.mynet.local.
7   IN  PTR tempfs.mynet.local.
8   IN  PTR ldap.mynet.local.
9   IN  PTR antenarfb.mynet.local.
10  IN  PTR antenapan.mynet.local.
11  IN  PTR adslgvt.mynet.local.
fernando@ldap:~$ 

Ich bin wirklich ratlos, was zu tun ist, und jede Hilfe wird sehr geschätzt.

---- bearbeiten ----

bevor jemand fragt, läuft ja der Server :)

root@ldap:/etc/bind# rndc status
version: 9.7.0-P1
CPUs found: 1
worker threads: 1
number of zones: 16
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/0/1000
tcp clients: 0/100
server is up and running

---- Ende bearbeiten ----

Fernando
quelle
Nach weiteren Tests bin ich mir ziemlich sicher, dass ich auf dem DNS-Server-Teil etwas falsch mache. Wenn host ldapich einen nicht gefundenen Host-Fehler host 192.168.0.243erhalte (auch auf dem DNS-Server-Terminal), wird dasselbe mit dig und dasselbe mit (meinem ldap.mynet.local-Computer) ausgeführt.
Fernando
host ldap.mynet.localauf dem Client-Computer zu tun , gibt mir die richtige IP-Adresse: /
Fernando

Antworten:

89

Ich glaube, dass dies durch mdns - Multicast-DNS für die Autokonfiguration der .local-Domäne verursacht wird.

Wenn Sie einchecken /etc/nsswitch.conf, werden Sie wahrscheinlich Folgendes sehen:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

Mdns4 ist, was macht Multicast-DNS. Versuchen Sie dies zu ändern:

hosts: files dns

Und sehen Sie, ob es einen Unterschied macht. Wenn es funktioniert, können Sie mdns dauerhaft entfernen mit:

Versuchen apt-get remove libnss-mdns

Welches wird die nsswitch.confÄnderung auch für Sie tun .

Verwenden Sie alternativ nicht .local, sondern .lan oder etwas anderes.

Cäsium
quelle
1
Perfekt! Lief wie am Schnürchen! Vielen Dank. Reverse DNS gibt mir immer noch einen Fehler, aber das ist ein anderes Problem, denke ich :)
Fernando
4
Alter, du bist unglaublich !!!!!
Thai Tran
Dies war die eigentliche Lösung für mein Problem mit Ubuntu Saucy / 13.10.
Beerbajay
2
Was ist die Logik? Warum ist dies die Standardkonfiguration?
Chris
1
Hervorragende Antwort! Arbeitete auch für mich an einer neuen Installation von Ubuntu 16.
T-Heron
3

Nur um die Dinge zu vervollständigen:

  1. nslookup fragt den angegebenen DNS-Server nur nach dem zugewiesenen A-Eintrag und garantiert NICHT, dass das Gerät hinter diesem Eintrag tatsächlich diese IP hat.

  2. Selbst wenn das Gerät die richtige IP hat (z. B. die feste IP des Geräts stimmt mit der von DNS bereitgestellten überein), kann nicht garantiert werden, dass das Gerät so konfiguriert ist, dass es auf Pings reagiert. Dies ist ein häufiger Punkt der Frustration. (Ich spreche über dich, Windows-Firewall)

  3. Wenn Sie Subnetze überqueren, kann der ICMP-Verkehr durch Router / Gateway / Firewall ebenfalls eingeschränkt werden (das ist ein Ping).

Sie müssen also immer die gesamte Servicekette vom Absender zum Empfänger und umgekehrt überprüfen. In Fall drei können Einstellungen wie a) Standard-Gateway oder b) (Standard-) Routen beteiligt sein. Fügen Sie sie Ihrer Checkliste hinzu.

Tut mir leid, dass ich dieses alte hier ausgegraben habe, aber aus der Kopfzeile schienen Informationen zu stammen, von denen jemand profitieren konnte.

Grüße.

Kay Urbach
quelle
2
das OP erwähnt "aber wenn ich pinge, findet es nicht die IP-Adresse". Es geht nicht darum, dass Pakete das Ziel nicht erreichen, sondern darum, dass Ping selbst die IP-Adresse nicht auflösen kann.
Andras Gyomrey
Ping selbst verwendet keine Namensauflösung. Unter Bezugnahme auf stackoverflow.com/questions/17161005/… .
Kay Urbach
2

Eine andere Sache, die ich mit DNS stören gesehen habe, ist die Installation von winbind. Es scheint einen winsEintrag vor [NOTFOUND=return]in zu setzen /etc/nsswitch.conf, der einen DNS-Fehler verursacht, der jedoch behoben werden kann, indem winsnach dem "NOTFOUND" -Teil verschoben wird, vorzugsweise auch nach dns, so dass die DNS-Suche zuerst erfolgt.

http://ubuntuforums.org/showthread.php?t=1496488

(nicht sicher, warum dies standardmäßig geschieht; Kommentare erwünscht!)

Latanius
quelle