Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Кеширующий DNS сервер для локальной сети на основе BIND 9

Автор: Alukardd
Дата сообщения: 17.01.2012 17:11
Orig
Цитата:

Цитата: ; DNS Servers
IN NS ns1.imena.com.ua.
IN NS ns2.datagroup.ua.
IN NS ns3.datagroup.ua.
так а шо это за хня с днс-ами? прописал непонятно чего и хочешь ответа
Автор: kerevra
Дата сообщения: 20.07.2012 08:02
yurala
Цитата:
rndc: connect failed: 127.0.0.1#953: connection refused
сделайте
Код: /etc/init.d/named restart
Автор: sergeyxr
Дата сообщения: 28.08.2014 13:09
приветствую всех.

Кто может столкнулся с подобным, нажна помощь в решении следующей задачки:

- после обновления до последней версии бинда доступной на 28.08.14 9.10.0R2

возникла проблема с запросами на корневые DNS сервера и получение оттуда ответов с IP ресурсов и передачей ответов клиенту DNS...???

В итоге оказалось следующее по логам все запросы DNS BIND на корневые сервера делает почему то только по АААА записям т.е. IPv6, это при 15 трассировка логов

[more=вот кусок лога:]
fctx 00000042D4E7EB80(e.root-servers.net/AAAA): query
debug 3: resquery 00000042D4E85B80 (fctx 00000042D4E7EB80(e.root-servers.net/AAAA)): send
debug 3: resquery 00000042D4E04B60 (fctx 00000042D4DFEB60(yandex.ru/A)): senddone
debug 3: fctx 00000042D4EBEB90(g.root-servers.net/AAAA): start
debug 3: fctx 00000042D4EBEB90(g.root-servers.net/AAAA): try
debug 3: fctx 00000042D4EBEB90(g.root-servers.net/AAAA): cancelqueries
debug 3: fctx 00000042D4EBEB90(g.root-servers.net/AAAA): getaddresses
debug 5: createfind: attaching find 00000042D4A4F780 to adbname 00000042D4A48180
debug 5: createfind: attaching find 00000042D4A4F5A0 to adbname 00000042D4A47F20
debug 3: fctx 00000042D4EBEB90(g.root-servers.net/AAAA): query
debug 3: resquery 00000042D4E85B80 (fctx 00000042D4E7EB80(e.root-servers.net/AAAA)): sent
debug 3: resquery 00000042D4E85B80 (fctx 00000042D4E7EB80(e.root-servers.net/AAAA)): udpconnected
debug 3: resquery 00000042D4E85B80 (fctx 00000042D4E7EB80(e.root-servers.net/AAAA)): senddone
debug 3: resquery 00000042D4EC5B90 (fctx 00000042D4EBEB90(g.root-servers.net/AAAA)): send
debug 3: resquery 00000042D4EC5B90 (fctx 00000042D4EBEB90(g.root-servers.net/AAAA)): sent
debug 3: resquery 00000042D4EC5B90 (fctx 00000042D4EBEB90(g.root-servers.net/AAAA)): udpconnected
debug 3: resquery 00000042D4EC5B90 (fctx 00000042D4EBEB90(g.root-servers.net/AAAA)): senddone
debug 3: fctx 00000042D4DFEB60(yandex.ru/A): timeout
debug 3: fctx 00000042D4DFEB60(yandex.ru/A): cancelquery
debug 3: fctx 00000042D4E3EB70(./NS): timeout
debug 3: fctx 00000042D4E3EB70(./NS): cancelquery
debug 3: fctx 00000042D4DFEB60(yandex.ru/A): try
debug 3: fctx 00000042D4DFEB60(yandex.ru/A): query
[/more]

вопрос как заставить BIND 9.10.0r2
сначала корневые зоны опрашивать по IPv4 а потом IPv6
написал запрос в суппорт бинда
[ISC-Bugs #36962] 9.10.0-P2 - bug recursion 3: fctx 00000061C073C650(www.isc.org/A): timeout
первый их ответ:
This is almost certainly a badly configured firewall blocking the dns requests made by the server.
седня вот выше кусок лога им послал.

Жду ответа от оф суппорта, но может кто нить знает решение иное?

Просто нашёл как выполнить ФЗ436 о защите детей, но вот на пути к решению столкнулся вот с такой проблемой.
3 DNS BIND -14+,16+, 18+
3 шлюза (3 сетевухи в одном сервере или на виртуаке) (с ПО пока не определился)

все списки планирую получить из Роскомнадзора, сейчас иски в суды уже подготовил уже.
Буду очень рад если поможете решить параллельные траблы. такие как с разрешением не своих зон на хtшурующем DNS BIND а точнее на 3х сооответствено.
Автор: ipmanyak
Дата сообщения: 28.08.2014 14:28
sergeyxr Попробуй вообще отключить IPV6 для BIND
в /etc/sysconfig/named добавь строку
OPTIONS="-4"
или жмакни
echo OPTIONS="-4" >> /etc/sysconfig/named
перестартани named
P.S.
Ты в курсе, что все запреты Роскомнадзора обходятся на раз-два? Для этого даже не нужно особых усилий, достаточно юзать браузеры с режимим ТУРБО ака Opera и яндекс-браузер. Не надо думать, что дети неушлые. Кроме того, твоя защита будет работать, только если будут юзать именно твой нэймсервер, никто им не помешает сменить нэймсервер на другой.

Автор: sergeyxr
Дата сообщения: 28.08.2014 16:14
у меня параметр -4 не работает пишет ошибку старта после внесения изменений в named.conf
попробовал использовать опцию :

listen-on-v6 { none; };

все равно после перезапуска в логах к роот серверам идут запросы :
dns_adb_createfind: found AAAA for name a.root-servers.net (000000434BBB7730)
debug 3: res 000000434B608830: dns_resolver_prime
debug 5: dns_adb_createfind: found AAAA for name b.root-servers.net (000000434BBB7600)
debug 3: res 000000434B608830: dns_resolver_prime
debug 5: dns_adb_createfind: found AAAA for name c.root-servers.net (000000434BBB7440)
debug 3: res 000000434B608830: dns_resolver_prime

вместо запросов А записей а не АААА?!?
---

Цитата:
Ты в курсе, что все запреты Роскомнадзора обходятся на раз-два? Для этого даже не нужно особых усилий, достаточно юзать браузеры с режимим ТУРБО ака Opera и яндекс-браузер. Не надо думать, что дети неушлые. Кроме того, твоя защита будет работать, только если будут юзать именно твой нэймсервер, никто им не помешает сменить нэймсервер на другой.


У меня пользовательские компы мало того что в домене зарезанны правами на изменение параметров сети, так ещё кроме мозилы без плагинов запустить другой браузер невозможно, (VPN, PPTP)
+
стоят шелы где все остальное зарезанно,
там где шелов нету (офисы распределенных торговых сетей и остальные офисы)(400-900шт),

там просто груповыми зарезанна возможность сменить DNS на тот что без ограничений.
Я в курсе подобного.
Автор: zwe
Дата сообщения: 29.11.2014 18:05
На маршрутизаторе установлен BIND в гибридной конфигурации:

- Авторитарный на зону организации, запрос разрешен всем;
- Кэширующий с рекурсией для самого хоста. Запрос и рекурсия только для самого себя.

Все хосты внутри сети "слепые", вернее обслуживаются локальными dns-серверами.
Но появилась необходимость предоставить им доступ только к одному реальному домену.
Домен листинг не позволяет, секондарить его не получится.

Подскажите как сделать "white list" dns?
Автор: vlary
Дата сообщения: 29.11.2014 21:24
zwe
Цитата:
Домен листинг не позволяет, секондарить его не получится.
Если тебе нужен только один реальный домен,
пропиши его NS у себя в качестве forwarders.
Он будет отвечать на запросы имен в своем домене, а запросы для других доменов будет слать лесом.
sergeyxr
Цитата:
попробовал использовать опцию : listen-on-v6 { none; };
Опция отвечает за наличие v6 сокета, но ни как за резольвинг имен.
Цитата:
у меня параметр -4 не работает пишет ошибку старта после внесения изменений в named.conf
Это опция не для named.conf, а для запуска демона:
/usr/sbin/named -4 -u bind
либо добавления строчки OPTIONS="-4" в файл с переменными демона,
которые использует его стартап скрипт из директории /etc/init.d/


Автор: zwe
Дата сообщения: 30.11.2014 05:20

Цитата:
Если тебе нужен только один реальный домен,
пропиши его NS у себя в качестве forwarders.
Он будет отвечать на запросы имен в своем домене, а запросы для других доменов будет слать лесом.


Будет слать только в том случае, если чужой bind не рекурсирует запросы. А если сейчас и не рекурсирует, то не уловишь момент когда вздумает и начнет.

Но проблема еще в том, что для кэширующей и форвардной зоны нельзя указать директивы allow-query allow-recursion, поэтому для всего сервера стоит
allow-query { localhost; };
allow-recursion { localhost; };
Автор: vlary
Дата сообщения: 30.11.2014 15:09
zwe
Цитата:
А если сейчас сейчас не рекурсирует, то не уловишь момент когда вздумает и начнет.
Что значит - начнет? Обычно рекурсия включена на публичных серверах.
На доменных вменяемые админы ее не включают.
И потом, зачем для этой задачи использовать BIND 9? Из пушки по воробьям?
Есть Dnsmasq, небольшой, опенсорс, поковырять код и добавить реализацию
своих желаний - пара пустяков.
А базовая фильтрация там уже имеется
Автор: zwe
Дата сообщения: 30.11.2014 19:23

Цитата:
Что значит - начнет? Обычно рекурсия включена на публичных серверах.
На доменных вменяемые админы ее не включают.

Это значит, что Вы должны рассчитывать на себя, а не на "авось".
Рекурсия обычно включена на серверах провайдера для обслуживаемых им сетей.



Цитата:
И потом, зачем для этой задачи использовать BIND 9? Из пушки по воробьям?

Это нормальная функция bind.
На dns-сервере есть публичные зоны, для которых он авторитарный.


Цитата:
Есть Dnsmasq, небольшой, опенсорс, поковырять код и добавить реализацию
своих желаний - пара пустяков


Спасибо хоть не предлагаете извращений с маршрутами или фаейрволом
Автор: Alukardd
Дата сообщения: 30.11.2014 20:53
zwe
Вообще есть RPZ(документация) для таких вот случаев, но я вот так и не смог запретить ему отвечать на всё подряд. Пытался и через * все домены передать, пытался и через 0.0.0.0.0.rpz-ip все ответы исправить. Но что-то эти оба варианта у меня не взлетели, зато обычные подмены в рамках одного домена работают...
Мб Вам удасться реализовать описанные мною выше шаманства.
Автор: zwe
Дата сообщения: 01.12.2014 05:31
Alukardd

Цитата:
Вообще есть RPZ(документация) для таких вот случаев

Да, есть, но в общем случае, она предназначена для создания "black list", то есть для "политики всё разрешено, что не запрещено".
У меня как бы наоборот - всё запрещено, кроме разрешенных.
Автор: Alukardd
Дата сообщения: 01.12.2014 11:00
zwe
Мне кажется, что есть способ задать полную блокировку кроме некоторых, как я Вам и предлагал выше.
* CNAME .
0.0.0.0.0.rpz-ip. CNAME rpz-drop.

Но у меня не вышло заставить эти правила работать.
Автор: Chupaka
Дата сообщения: 15.07.2015 15:05
доброго.

крутится сабж, и в последних версиях (не факт, что раньше не было, но вроде и не было) заметил неприятную особенность: если у DNS'а пропадает доступ в Интернет, то он перестаёт обслуживать не только рекурсивные запросы, но и очень тупит с обработкой запросов к локальной зоне, для которой интернет-то и не нужен

по ресурсам вроде недостатка в тот момент нет:

Код: [user@ns2 ~]# rndc status
version: 9.10.2-P1-RedHat-9.10.2-2.P1.fc22 (version.bind/txt/ch disabled) <id:e6f4c933>
boot time: Fri, 03 Jul 2015 10:29:35 GMT
last configured: Sun, 12 Jul 2015 00:39:02 GMT
CPUs found: 4
worker threads: 4
UDP listeners per interface: 2
number of zones: 116
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 109/0/1000
tcp clients: 1/100
server is up and running
[user@ns2 ~]#
Автор: Alukardd
Дата сообщения: 15.07.2015 17:33
Chupaka
не замечал таких спецэффектов, а точно сервер тупит, мб клиент? Как проверяли-то?
Автор: Chupaka
Дата сообщения: 15.07.2015 17:38
Alukardd
при пропадании внешки иногда даже локальные сервера не могут отресолвить локальные имена - вот так и было замечено

повторял обычным nslookup'ом к локальному домену с параллельным перекрыванием доступа DNS'а в Интернет - начинаются таймауты
Автор: Alukardd
Дата сообщения: 15.07.2015 18:42
Chupaka
м-м-м
Может у Вас где зона от интернета зависит или ещё какое несоответствие есть?
И вообще до кучи проверьте что зоны написаны правильно, я лично предпочитаю . что бы были указаны все неявные символы (типа не опускать IN, не опускать @ и т.п.)
Не забываем .(точку) на конце FQDN и т.д.

Страницы: 1234567

Предыдущая тема: Терминальный доступ к Win2003 обычным юзером


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.