nslookup znajduje ip, ale ping nie


53

Wiem, że wygląda na to, że wszystkie inne pytania „można pingować przez ip, ale nie dns”, ale te w ogóle mi nie pomogły.

Posiadanie plików hostów na wszystkich komputerach nie jest wykonalne, ponieważ serwer ten ostatecznie obsłuży wiele komputerów łączących się z nim.

Mam ustawiony serwer ldap + dns i chcę, aby komputery w mojej sieci uwierzytelniały się na serwerze ldap.

Część ldap działa dobrze i mogę ssh na serwerze ldap z poświadczeniami ldap w porządku.

Problem dotyczy komputerów klienckich, klient jest skonfigurowany do używania serwera dns (w tym przypadku 192.168.0.243), a jeśli wejdę do terminalu i zrobię nslookup, okaże się, że serwer ldap jest w porządku.

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

Ale kiedy go pinguję, nie znajduje adresu IP. Po prostu wisi tam i wygląda ładnie, dopóki nie CTRL-C go.

Oczywiście pingowanie według adresu IP działa dobrze.

Oto pliki stref dla serwera dns:

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:~$ 

Naprawdę nie wiem, co robić, a każda pomoc będzie bardzo mile widziana.

---- edytować ----

zanim ktokolwiek zapyta, tak, serwer działa :)

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

---- koniec edycji ----


po dalszych testach jestem pewien, że robię coś złego na części serwera dns. robienie host ldapdaje mi błąd nie znaleziono hosta (nawet na terminalu serwera dns) to samo przy użyciu dig, to samo z host 192.168.0.243(moja maszyna ldap.mynet.local).
Fernando

robienie host ldap.mynet.localna maszynie klienta daje poprawny adres IP: /
Fernando

Odpowiedzi:


89

Wierzę, że jest to spowodowane przez mdns - dns multiemisji, do automatycznej konfiguracji domeny .local.

Jeśli się zameldujesz /etc/nsswitch.conf, prawdopodobnie zobaczysz:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

mdns4 jest tym, co robi DNS multiemisji. Spróbuj zmienić to na:

hosts: files dns

I zobacz, czy to coś zmieni. Jeśli to zadziała, możesz trwale usunąć mdns za pomocą:

Próbować apt-get remove libnss-mdns

Która zrobi również nsswitch.confzmianę dla ciebie.

Alternatywnie, nie używaj .local - zamiast tego użyj .lan lub czegoś.


1
Doskonały! działało jak urok! Dziękuję Ci bardzo. Odwrotny DNS wciąż daje mi błąd, ale wydaje mi się, że to kolejny problem :)
Fernando

4
Koleś, jesteś niesamowity !!!!!
Thai Tran

To było właściwe rozwiązanie mojego problemu z Ubuntu Saucy / 13.10.
beerbajay

2
Jaka jest logika? Dlaczego jest to domyślna konfiguracja?
Chris

1
Doskonała odpowiedź! Pracował również dla mnie przy nowej instalacji Ubuntu 16.
T-Heron

3

Aby zakończyć:

  1. nslookup prosi tylko dany serwer DNS o przypisany rekord A, NIE gwarantuje to, że urządzenie za tym rekordem faktycznie ma ten adres IP.

  2. Nawet jeśli urządzenie ma poprawny adres IP (np .: stały adres IP urządzenia odpowiada adresowi podanemu przez DNS) - nie gwarantuje to, że urządzenie jest skonfigurowane do reagowania na pingi. Jest to powszechny punkt frustracji. (Mówię o tobie, zapora systemu Windows)

  3. Podczas przekraczania podsieci router / brama / zapora sieciowa mogą również ograniczać ruch ICMP (taki jest ping).

Dlatego zawsze musisz sprawdzić pełny łańcuch usług od nadawcy do odbiorcy i odwrotnie. W przypadku trzecim mogą występować ustawienia takie jak a) domyślna brama lub b) (domyślne) trasy. Dodaj je do swojej listy kontrolnej.

Przepraszam za wykopanie tego starego, ale biorąc pod uwagę nagłówek, wydawało się, że to trochę informacji, z których ktoś mógłby skorzystać.

Greetz.


2
OP wspomina „ale kiedy pinguję, nie znajduje adresu IP”. Nie chodzi o to, że pakiety nie docierają do miejsca docelowego, ale o to, że ping nie jest w stanie rozpoznać adresu IP.
Andras Gyomrey,

Sam ping nie używa rozpoznawania nazw. Odnosząc się do stackoverflow.com/questions/17161005/… .
Kay Urbach,

2

Inną rzeczą, która widziałem, że przeszkadza w DNS, jest instalacja Winbind. Wygląda na to, aby umieścić winswpis zanim [NOTFOUND=return]się /etc/nsswitch.conf, co powoduje awarię serwera DNS, ale może być ustalony przez przeniesienie winsdo po „NOTFOUND” części, także, najlepiej po DNS tak, że dzieje się wyszukiwanie DNS najpierw zobaczyć to:

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

(nie jestem pewien, dlaczego tak się dzieje domyślnie; komentarze mile widziane!)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.