Автор Тема: DNS в локальной сети [решено]  (Прочитано 3977 раз)

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Здравствуйте, уважаемые форумчане!

Прошу вас помочь разобраться в следующей проблеме:

Дано:
- подключение к провайдеру типа Ethernet, предоставлен реальный ip-адрес, шлюз, сервера DNS
- ALTLinux 5.0 Ковчег в качестве сервера-шлюза выхода в интернет, 2 сетевых интерфейса, внешний настроен
согласно данным провайдера, внутренний с частным ip-адресом 172.16.0.1/16 в локальной сети 172.16.0.0/16
- bind на сервере работает, для обоих сетевых интерфейсов
- dhcp на сервере работает, раздает статические ip адреса по заведенным mac-адресам
- на машине-клиенте работает ALTLInux Desktop 4.1, сеть настроена по DHCP

Проблема:
Если на машине-клиенте задать ip-адрес сервера (172.16.0.1) в качестве сервера DNS,
DNS не работает, ping ya.ru выдает unknown host. При этом на сервере DNS работает,
ya.ru пингуется
Если машине-клиенте задать ip-адреса серверов DNS, выданные провайдером,
DNS работает, интернет есть, ya.ru пингуется

Пожалуйста, посоветуйте, как настроить чтобы заработал DNS на сервере-шлюзе


« Последнее редактирование: 05.11.2010 00:21:33 от Skull »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: DNS в локальной сети
« Ответ #1 : 04.11.2010 13:50:59 »
Цитировать
bind на сервере работает, для обоих сетевых интерфейсов
А зачем во внешнюю сеть отдавать имена?

NB Для небольших сетей гораздо удобней использовать не bind, а dnsmasq.

Смотрите что выдаёт на клиенте

nslookup ya.ru 172.16.0.1

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: DNS в локальной сети
« Ответ #2 : 04.11.2010 13:52:06 »
nslookup входит в пакет bind-utils

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Re: DNS в локальной сети
« Ответ #3 : 04.11.2010 14:53:26 »
Цитировать
bind на сервере работает, для обоих сетевых интерфейсов
А зачем во внешнюю сеть отдавать имена?

Согласен, отключил bind от внешнего интерфейса
когда ставил, не подумал  ???

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Re: DNS в локальной сети
« Ответ #4 : 04.11.2010 14:55:25 »

NB Для небольших сетей гораздо удобней использовать не bind, а dnsmasq.


Впоследствии предполагается в локальной сети несколько серверов на нескольких машинах,
поэтому остановился на bind

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Re: DNS в локальной сети
« Ответ #5 : 04.11.2010 14:58:12 »

Смотрите что выдаёт на клиенте

nslookup ya.ru 172.16.0.1


поставил на машину-клиента пакет bind-utils Synaptic-ом из branch 4.1

nslookup выдал:

[sysadmin@sysadmin ~]$ nslookup ya.ru 172.16.0.1
;; connection timed out; no servers could be reached

[sysadmin@sysadmin ~]$ ping ya.ru
ping: unknown host ya.ru

[sysadmin@sysadmin ~]$ ping 172.16.0.1
PING 172.16.0.1 (172.16.0.1) 56(84) bytes of data.
64 bytes from 172.16.0.1: icmp_seq=1 ttl=64 time=0.139 ms
64 bytes from 172.16.0.1: icmp_seq=2 ttl=64 time=0.113 ms


Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: DNS в локальной сети
« Ответ #6 : 04.11.2010 15:08:27 »
bind не отвечает.

Смотрите его настройки (сам я так сходу не скажу где прописать, что-бы он обслуживал локальную сеть).

Оффлайн muraig

  • Участник
  • *
  • Сообщений: 5
Re: DNS в локальной сети
« Ответ #7 : 04.11.2010 15:37:13 »
Bind настроен необычным образом
я поборол так:
[root@alt-vm etc]# cat zone_cp.sh
#!/bin/sh

cp -fv zones.conf resolvconf-zones.conf
sleep 2
service bind restart
После старта машины запускаю этот скрипт руками, можно его в автозапуск положить

файл зон:
[root@alt-vm etc]# cat zones.conf
acl "my_acl" {
    127.0.0.1;
    192.168.0.4;
};
// это лист доступа - используется для "кому можно скачивать зоны,
// если сервера есть первичные и вторичные"

// Forvard corporative domain
//zone "admin-xxxxxxx.lan" { type slave; file "slave/admin-xxxxxxx.lan"; masters { 192.168.0.7; }; allow-transfer { "my_acl"; }; allow-query { any; }; };
//zone "0.168.192.in-addr.arpa" { type slave; file "slave/0.168.192.in-addr.arpa"; masters { 192.168.0.7; }; allow-transfer { "my_acl"; }; allow-query { any; }; };

// slave - потому что у меня основной настроен на FreeBSD, Вам здесь лучше написать:
// master/ВАША_ЛОКАЛЬНАЯ_ЗОНА вместо моей: slave/admin-xxxxxxx.lan

// Forvard corporative domain
// тут у меня мои внешние зоны )
все это можно и изящнее - но я не разбирался кто затирает файл:
resolvconf-zones.conf
все это хозяйство расположено:
[root@alt-vm etc]# pwd
/var/lib/bind/etc
собсно сам файл зоны:
[root@alt-vm etc]# cat ../zone/slave/admin-xxxxxxx.lan                                                         
$ORIGIN .                                                                                                   
$TTL 3600       ; 1 hour                                                                                     
admin-xxxxxxx.lan         IN SOA  admin-xxxxxxx.lan. postmaster.admin-xxxxxxx.lan. (                               
                                2010050502 ; serial                                                         
                                3600       ; refresh (1 hour)                                               
                                900        ; retry (15 minutes)                                             
                                3600000    ; expire (5 weeks 6 days 16 hours)                               
                                3600       ; minimum (1 hour)                                               
                                )                                                                           
                        NS      ns1.admin-xxxxxxx.lan.                                                         
                        NS      ns1.baikal-xxxxxxx.lan.                                                       
                        NS      ns2.trifle.net.                                                             
                        A       192.168.0.3                                                                 
                        MX      5 mail.admin-xxxxxxx.lan.                                                     
                        MX      10 mail.admin-xxxxxxx.ru.                                                     
$ORIGIN admin-audit.lan.                                                                                     
ad-dbmail               A       192.168.0.3                                                                 
admin-dbmail            A       192.168.0.3                                                                 
alt-vm                  A       192.168.0.4                                                                 
comp-Core-i7-9d2b40                     A       192.168.0.2
обратная - по аналогии
######################
кроме этого способа - работы с текстовыми файлами анстроек, есть и возможность с web-интерфейса все настроить
https://localhost:8080
тут немножко по другому управление происходит ,но можно настроить мышкой DHCP и DNS в связке:
DHCP - выдает адреса и обновляет зону
DNS   - отдает прямую и обратную зону
P.S. использую ,на мой взгляд, более "разговорчивую" утилитую dig
Что бы получить список машин в зоне:
[root@alt-vm etc]# dig ИМЯ_ВАШЕЙ_ЗОНЫ.СУФФИКС_ЗОНЫ axfr
спросить у конкретного DNS сервера:
[root@alt-vm etc]# dig @ns1.yandex.ru. yandex.ru
просто узнать параметры зоны:
[root@alt-vm etc]# dig google.ru

Оффлайн muraig

  • Участник
  • *
  • Сообщений: 5
Re: DNS в локальной сети
« Ответ #8 : 04.11.2010 16:02:24 »
Если планируете обновлять вторичные сервера  - 2010050502 ; serial  этот параметр отвечает за это.
Это номер зоны, он каждый раз должен быть больше ,чем предыдущий при внесении измения в зону.
Формирцуется так:
2010 - год
05 - месяц
05 - число
02 - номер порядковй.
Формировать можно и по другому ,главное - должно идти по возрастающей.

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Re: DNS в локальной сети
« Ответ #9 : 04.11.2010 18:05:30 »
Спасибо за желание помочь и потраченное время!

С удовольствием посмотрел содержимое этих директорий и файлов в расчете
на будущую настройку master и slave DNS серверов в локальной сети.

В вэб интерфейсе ничего такого нет. Возможно подразумевается, но явно нет.

В моем случае проблема решилась следующим способом:

в сервере стояло не 2, а три сетевых карты. При этом третья была не подключена
ни к какой сети, но статический ip был ей задан, и в вэб интерфейсе ее было видно.
Я выключил сервер, вытащил эту сетевуху и снова включил сервер.
И, о чудо и радость, DNS в локальной сети заработал.  :)

Нет смайлика с бубном?  :D