nslookup找到ip,但是ping没找到


53

我知道这看起来像其他所有“可以通过ip ping而不是dns ping”的问题一样,但是这些并没有真正帮助我。

同样,在所有计算机上都没有主机文件是不可能的,因为该服务器最终将处理许多与其连接的计算机。

我有一个ldap + dns服务器设置,我希望网络上的计算机在ldap服务器上进行身份验证。

ldap部分工作正常,我可以使用ldap凭据将ssh进入ldap服务器。

问题出在客户机上,客户机被设置为使用dns服务器(在这种情况下为192.168.0.243),如果我进入终端并执行nslookup,它将发现ldap服务器很好。

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

但是当我ping它时,它找不到ip地址。它一直挂在那里看起来很漂亮,直到我按下CTRL-C为止。

当然,通过ip地址ping可以正常工作。

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

我真的不知所措,任何帮助将不胜感激。

----编辑----

在有人问之前,是的,服务器正在运行:)

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

----结束编辑----


经过更多测试后,我很确定我在dns服务器上做错了什么。这样做host ldap给了我一个主机未发现错误(即使在dns服务器终端上),使用dig进行了相同的操作,与host 192.168.0.243(我的ldap.mynet.local机器)进行了相同的操作。
费尔南多

host ldap.mynet.local在客户端计算机上做给我正确的IP地址:/
Fernando

Answers:


89

我相信这是由.dn域的自动配置的mdns-多播dns引起的。

如果您签入/etc/nsswitch.conf,您可能会看到:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

mdns4是在做多播dns。尝试将其更改为:

hosts: files dns

看看是否有任何区别。如果它可以正常工作,则可以使用以下方法永久删除mdns:

尝试 apt-get remove libnss-mdns

哪个也会nsswitch.conf为您做改变。

另外,也不要使用.local-使用.lan或其他名称。


1
完善!像魅力一样运作!非常感谢你。反向DNS仍然给我一个错误,但这是我猜到的另一个问题:)
Fernando

4
杜德,你真棒!
泰国Tran

这是我在Ubuntu Saucy / 13.10上的问题的实际解决方案。
Beerbajay 2014年

2
逻辑是什么?为什么这是默认配置?
克里斯(Chris)

1
很好的答案!为我工作,以及在新安装Ubuntu 16
T-鹭

3

只是为了完成事情:

  1. nslookup只是向给定的DNS服务器询问分配的A记录,但不能保证该记录后面的设备实际上具有该IP。

  2. 即使设备具有正确的IP(例如:设备的固定IP与DNS提供的IP匹配),也不能保证设备已配置为响应ping。这是一个令人沮丧的普遍现象。(我在谈论您,Windows防火墙)

  3. 当您穿越子网时,路由器/网关/防火墙也可能会限制ICMP流量(这也是ping的目的)。

因此,您始终需要检查从发件人到收件人的完整服务链,反之亦然。在第三种情况下,可能涉及一些设置,例如a)默认网关或b)(默认)路由。因此,将它们添加到您的清单。

不好意思,我想把它弄旧了,但是从标题看,它似乎是一些信息,有人可以从中受益。

格蕾兹


2
OP提到“但是在ping时找不到IP地址”。这不是关于数据包未到达目的地,而是关于ping自身无法解析IP地址。
Andras Gyomrey

Ping本身不使用名称解析。请参考stackoverflow.com/questions/17161005/…
凯·乌尔巴赫

2

我看到的另一件事干扰DNS是安装winbind。似乎wins[NOTFOUND=return]in 之前放置一个条目/etc/nsswitch.conf,这会导致DNS失败,但可以通过移至wins“ NOTFOUND”部分之后(也最好是在dns之后)进行修复,以使dns查找首先发生,请参见:

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

(虽然不确定为什么默认情况下会发生这种情况;欢迎发表评论!)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.