nslookup encontra ip, mas o ping não

44

Eu sei que isso parece com todas as outras perguntas "pode pingar via ip, mas não dns", mas elas realmente não me ajudaram em nada.

Além disso, ter arquivos de hosts em todas as máquinas não é possível, pois esse servidor eventualmente manipulará muitos computadores que se conectam a ele.

Eu tenho um conjunto de servidores ldap + dns e quero que os computadores da minha rede sejam autenticados no servidor ldap.

A parte ldap está funcionando muito bem e eu posso ssh no servidor ldap com as credenciais ldap muito bem.

O problema vem com as máquinas cliente, o cliente está configurado para usar o servidor dns (neste caso 192.168.0.243) e se eu chegar no terminal e fizer um nslookup, ele encontrará o servidor ldap bem.

[email protected]:~$ nslookup ldap.mynet.local
Server:     192.168.0.243
Address:    192.168.0.243#53

Name:   ldap.mynet.local
Address: 192.168.0.243

Mas quando faço ping, não encontro o endereço IP. Ele apenas fica lá parecendo bonito até que eu o CTRL-C.

É claro que o ping por endereço IP funciona bem.

Aqui estão os arquivos de zona para o servidor dns:

[email protected]:~$ 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";
};
[email protected]:~$ 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
[email protected]:~$ 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.
[email protected]:~$ 

Estou realmente perplexo sobre o que fazer e qualquer ajuda será muito apreciada.

---- edit ----

antes que alguém pergunte, sim o servidor está rodando:)

[email protected]:/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

---- end end ----

    
por Fernando 22.11.2011 / 19:28

3 respostas

74

Acredito que isso seja causado por mdns - multicast dns, para autoconfiguração do domínio .local.

Se você fizer check-in em /etc/nsswitch.conf , provavelmente verá:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

mdns4 é o que está fazendo o multicast dns. Tente mudar isso para:

hosts: files dns

E veja se faz alguma diferença. Se isso funcionar, você pode remover mdns permanentemente com:

Experimente apt-get remove libnss-mdns

O que também fará a mudança nsswitch.conf para você.

Como alternativa, não use .local - use .lan ou algo assim.

    
por Caesium 22.11.2011 / 19:56
2

Apenas para concluir as coisas:

  1. O nslookup apenas solicita ao servidor DNS fornecido o registro A atribuído, não garante que o dispositivo por trás desse registro realmente tenha esse IP.

  2. Mesmo quando o dispositivo tem o IP correto (ex .: IP fixo do dispositivo corresponde ao fornecido pelo DNS) - ele não garante que o dispositivo esteja configurado para responder a pings. Este é um ponto comum de frustração. (Estou falando de você, firewall do windows)

  3. Quando você está cruzando sub-redes, o roteador / gateway / firewall pode restringir o tráfego ICMP (também é um ping).

Portanto, você sempre precisa verificar a cadeia de serviços completa de remetente para destinatário e vice-versa. No caso três, pode haver configurações como a) gateway padrão ou b) rotas (padrão) envolvidas. Então, adicione-os à sua lista de verificação.

Desculpe por desenterrar este antigo, mas dado a partir do cabeçalho parecia um pouco de informação, alguém poderia lucrar.

Greetz.

    
por Kay Urbach 03.02.2016 / 15:55
1

Outra coisa que tenho visto interferir no DNS é a instalação do winbind. Parece colocar uma entrada wins antes de [NOTFOUND=return] em /etc/nsswitch.conf , o que causa falha no DNS, mas pode ser corrigido movendo wins para depois da parte "NOTFOUND", também, preferencialmente após dns para que a consulta dns acontece primeiro, veja isto:

link

(não sei por que isso acontece por padrão; comentários bem-vindos!)

    
por Latanius 02.03.2014 / 01:44