nslookup находит ip, но ping doesnt

40

Я знаю, что это похоже на все остальные вопросы «может ping через ip, но не dns», но они действительно не помогли мне вообще.

Кроме того, наличие хостов на всех компьютерах не выполняется, так как этот сервер в конечном итоге будет обрабатывать множество компьютеров, подключающихся к нему.

У меня есть набор серверов ldap + dns, и я хочу, чтобы компьютеры в моей сети аутентифицировались на сервере ldap.

Часть ldap работает очень хорошо, и я могу ssh на сервере ldap с учетными данными ldap просто отлично.

Проблема связана с клиентскими машинами, клиент настроен на использование сервера dns (в данном случае 192.168.0.243), и если я получу в терминале и сделаю nslookup, он найдет, что ldap-сервер просто отлично.

[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

Но когда я его пингу, он не находит ip-адрес. Он просто висит там красиво, пока я не CTRL-C.

Конечно, пинг по ip-адресу работает просто отлично.

Вот файлы зон для сервера 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]:~$ 

Я действительно в недоумении, что делать, и любая помощь будет принята с благодарностью.

---- править ----

, прежде чем кто-нибудь спросит, да, сервер работает:)

[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 edit ----

    
задан Fernando 22.11.2011 в 19:28
источник

3 ответа

67

Я считаю, что это вызвано mdns - multicast dns, для автоконфигурации домена .local.

Если вы зарегистрируетесь в /etc/nsswitch.conf , вы, вероятно, увидите:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

mdns4 - это то, что делает multicast dns. Попробуйте изменить это на:

hosts: files dns

И посмотрите, не имеет значения. Если это заставляет работать, вы можете удалить mdns навсегда:

Попробуйте apt-get remove libnss-mdns

Которое будет для вас изменено nsswitch.conf .

В качестве альтернативы, не используйте .local - используйте .lan или что-то вместо этого.

    
ответ дан Caesium 22.11.2011 в 19:56
источник
2

Просто для завершения:

  1. nslookup просто запрашивает данный DNS-сервер для назначенной A-записи, он НЕ гарантирует, что устройство, стоящее за этой записью, фактически имеет этот IP-адрес.

  2. Даже если устройство имеет правильный IP (например: фиксированный IP-адрес устройства соответствует тому, который предоставляется DNS) - он не гарантирует, что устройство настроено на ответ на пинги. Это общая точка разочарования. (Я говорю о вас, брандмауэр Windows)

  3. Когда вы пересекаете подсети, маршрутизатор / шлюз / брандмауэр могут ограничивать трафик ICMP (это и есть пинг).

Поэтому вам всегда нужно проверять всю цепочку обслуживания от отправителя до получателя и наоборот. В случае трех могут быть такие настройки, как: a) шлюз по умолчанию или b) (по умолчанию) используемые маршруты. Поэтому добавьте их в свой контрольный список.

Извините за то, что он выкопал этот старый, но из заголовка он казался немного информации, кто-то мог получить прибыль.

Greetz.

    
ответ дан Kay Urbach 03.02.2016 в 15:55
1

Другая вещь, которую я видел, вмешивается в DNS, - это установка winbind. Кажется, что он помещает wins в% до [NOTFOUND=return] в /etc/nsswitch.conf , что приводит к сбою DNS, но может быть исправлено путем перемещения wins после части «NOTFOUND», а также предпочтительно после dns, чтобы поиск dns происходит сначала, см. это:

Ссылка

(не уверен, почему это происходит по умолчанию, комментарии приветствуются!)

    
ответ дан Latanius 02.03.2014 в 01:44