LINUX.ORG.RU
ФорумAdmin

BIND с нуля на шлюзе


0

0

Доброго времени суток всем! У меня появилась необходимость поднять кэширующий ДНС сервер. Он в свою очередь должен получать запросы от клиентов из локальной сети при обращении во всемирную паутину. В ситуации когда в кеше нет соответсвующей записи обращаться к ДНС провайдера. Теперь не много о сервере. Fedora12. Два интерфейса eth0 (смотрит в локальну сеть 192.168.0.0) и eth1 (смотрит в сеть провайдера 10.0.0.0) к интернету подключается по средствам VPN. Клиентам доступ в интернет обеспечивается по средствам iptables.

named.conf имеет вид:

options {

   listen-on port 53 { 127.0.0.1; 192.168.0.99; };

   listen-on-v6 port 53 { ::1; };

   directory    «/var/named»;

   dump-file    «/var/named/data/cache_dump.db»;

statistics-file «/var/named/data/named_stats.txt»;

memstatistics-file «/var/named/data/named_mem_stats.txt»;

   allow-query {localhost; 192.168.0.100; };

   forwarders { 85.234.0.53; 85.234.2.53; };

   recursion yes;

   dnssec-enable yes;

   dnssec-validation yes;

   dnssec-lookaside . trust-anchor dlv.isc.org.;

};

logging {

channel default_debug {

file «data/named.run»;

severity dynamic;

};

};

zone "." {

   type hint;

   file «named.ca»;

};

include «/etc/named.rfc1912.zones»;

include «/etc/pki/dnssec-keys//named.dnssec.keys»;

include «/etc/pki/dnssec-keys//dlv/dlv.isc.org.conf»;

nslookup c достаточно большим ожиданием выдает

Server:      127.0.0.1

Address:   127.0.0.1#53

Non-authoritative answer:

Name:   ya.ru

Address: 93.158.134.8

Name:   ya.ru

Address: 213.180.204.8

Name:   ya.ru

Address: 77.88.21.8

При запросе с клиентских машин: DNS requested timed out timeout was 2 second Признаюсь честно в Линуксе я работаю не так давно, ДНС поднимаю первый раз. Гуглить пробывал, но все статьи которые я читал написаны на совсем понятном для меня языке, точнее они не настолько подробные как мне бы этогоо хотелось. Например я так и не понял, что из себя представляет named.ca и как с ним работать. Если у кого есть ссылки на хорошии статьи, буду очень признателен.



Последнее исправление: iva-a-an (всего исправлений: 1)

Этому бинду цена дерьмо.

Ставь dnsmasq.

anonymous
()

кэширующий с нуля еще и на шлюзе ?

поставьте PowerDNS recursor, там очень простая конфигурация и памяти он ест гораздо меньше чем BIND

Sylvia ★★★★★
()
Ответ на: комментарий от iva-a-an

bind - комбайн сочетающий в себе как кеширующий , так и авторитативный (ненужный вам) сервер, а также сравнительно новые технологии dnssec,
как и положено комбайну ошибки в нем вылезают часто и много,
про то что он потребляет много памяти я уже написала.
Кстати , если вы дистрибутивный пакет bind поставили , то для кеширующего сервера его не надо конфигурировать, там настройки по умолчанию вполне годятся, разве что доступ позакрывать для запросов с левых подсетей

Sylvia ★★★★★
()
Ответ на: комментарий от Sylvia

Ну впринципе настройки, которые я указал, потчи те, что были по умолчания, единственное, что я named.ca взял у провайдера.

А по powerDNS у вас есть хорошоя документация?

iva-a-an
() автор топика
Ответ на: комментарий от iva-a-an

свежий named.ca можно сгенерировать вот такой командой:
dig @a.root-servers.net

по powerdns recursor документации мало, сам сервер очень простой, поэтому там достаточно посмотреть man страницу и комментарии в конфиг файле (там 1 конфиг файл и то очень маленький)

вообще вот
http://powerdns.com/en/documentation.aspx
но там больше касается авторитативного pdnsd (для обслуживания зон)

Sylvia ★★★★★
()
Ответ на: комментарий от Sylvia

Ошибки или дыры? Ошибок не видел, хотя настраиваю довольно часто named(в режиме авторитативного и рекурсивного). Дыры и в pdns всплывают, правда, реже.

В рекурсивном режиме жрёт он потому что там не предусмотренно лимитов на кол-во закэшированных запросов, поэтому старые записи выносятся только когда ttl истекает. При двух-трёх десятках клиентов это не проблема совершенно.

true_admin ★★★★★
()
Ответ на: комментарий от Sylvia

Всем большое спасибо за помощь! Решил попробывать pdns, завтра буду изучать.

iva-a-an
() автор топика
Ответ на: комментарий от Sylvia

> там после запуска уже 20-30 мб откушано,

Я что-то пропустил? Речь идёт о embedded?))) Лишние 30 метров уже лет 5 как никого не волнуют...

А BIND - весч ;-)

nbw ★★★
()
Ответ на: комментарий от Sylvia

Ты така умна дивка... я хочу на тоби одружитыся :)

Tok ★★
()

> allow-query {localhost; 192.168.0.100; };

Запросы к серверу разрешены только с localhost и 192.168.0.100. Естественно, что с машин с другими адресами будет «DNS requested timed out»

dexpl ★★★★★
()

Таймаут у nslookup'а скорее всего связан с тем, что провайдер (или вы в iptables) перкрыли доступ к другим DNS-серверам. Так как вы не указали опцию «forward only» или «forward first», то сначала ваш bind пытается найти ответ напрямую, а уже только потом лезет к DNS провайдера.

При запросе с клиентских машин

Почему «машин»? У вас разрешены запросы только с одного ip-адреса «192.168.0.100», хотя может у вас просто закрыт порт в iptables.

mky ★★★★★
()
Ответ на: комментарий от mky

я пока тестирую сервер дома на 2х машинах, 192.168.0.99 - сервер и 192.168.0.100 клиент. Если в клиенте прописываю DNSы провайдера, то все ок!

«forward only» пробывал, все равно тормоза были

iva-a-an
() автор топика
Ответ на: комментарий от iva-a-an

Во множественном числе говорил, потому что имелась ввиду потенциальная сеть, но пока я все настраиваю на мини-сети, все выше написанное относится именно к этой «мини-сетке»:)

iva-a-an
() автор топика
Ответ на: комментарий от Sylvia

+

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

Cosmicman ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.