[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: dnsmasq



Andrey Jr. Melnikov -> debian-russian@lists.debian.org  @ Fri, 9 Mar 2018 23:30:09 +0300:

 >>  >> Разнося на разные девайсы сервер и роутер, таки сподобился настроить DNS
 >>  >> и DHCP для локалки через dnsmasq. Получилось проще, чем с ISC (bind и
 >>  >> isc-dhcpd). Про "легковеснее" молчу.

 >>  >> Из грабель (они описаны в FAQ). isc-dhcpd, видимо, работает в
 >>  >> promiscuous mode, и справляется с ситуацией, когда на файрволе по
 >>  >> данному интерфейсу отдельного разрешения 255.255.255.255 на порт DHCP
 >>  >> нет (у меня пускали только с адресами из локалки). dnsmasq не справился,
 >>  >> пришлось донастроить файрвол. Подумав, махнул рукой и разрешил с этого
 >>  >> интерфейса вообще всё, так что нет уверенности, что достаточно было бы
 >>  >> разрешить по минимуму.
 >>  > -p udp --dports 67:69 - это так сложно прописать в фаирвол? ;)

 >> Это понятно. Для гостевой сети так и прописано. Кстати, кажется,
 >> достаточно 67. Я про минимум.
 > Ну так может взять в руки генератор правил для фаирволов?

Я уже лет несколько назад начал об этом задумываться. Но в дистрибутиве
их много, изучать их все, чтобы выбрать годный — изрядное количество
ресурса, а iptables и моих знаний о работе сети для моих задач, в общем,
достаточно.

В смысле, "ты не выпендривайся, ты пальцем покажи". Чтобы на выходе был
код для iptables-restore (атомарная загрузка, ага), читабельный (ибо
если что-то не работает, допрашивать все равно придется не генератор, а
непосредственно iptables), и чтобы он был не сложнее, чем собственно
iptables.

А то я как-то видел исходник, от shorewall, что ли... Руками для
iptables то же самое куда понятнее было.

 > [...]

 >> zless /usr/share/doc/dnsmasq/FAQ.gz
 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Вот это в всякие роутеры никогда не
 > кладут.

Ась? В мой кладут. Я его оттуда цитирую.

 >> А вот с isc-dhcpd, не знаю, как сейчас, а раньше лечилось только
 >> client-id. В линуксе-то не проблема...

 > Да пофигу. Взял и прописал 2 мака с одним адресом. и работает. 

Ну, значит, уже починили.

 >>  >> Чего он явно не умеет (в документации нет даже упоминания), так это
 >>  >> трансфера зон.

 >>  > Это затычка для роутеров, оно без внешнего DNS'a работать не умеет.

 >> Спасибо, Кэп, для чего оно предназначено, я в курсе.

 >>  >> Подумываю, не попробовать ли его как второй авторитетный DNS своей зоны.
 >>  > Чем тебя bind не устроил? Тем, что в нем на порядок меньше CVE находят, чем
 >>  > в dnsmasq?
 >>  > Сравни
 >>  > https://www.cvedetails.com/product/14557/Thekelleys-Dnsmasq.html?vendor_id=8351
 >>  > и
 >>  > https://www.cvedetails.com/product/144/ISC-Bind.html?vendor_id=64
 >>  > для приличия.

 >> Может, конечно, bind и научились писать, но у меня исторически сложилось
 >> ощущение, что все isc'шные продукты до одного очень изрядно дырявы, и
 >> вообще довольно плохо написаны.
 > Плохо - да, дыряво - возможно. Ты только учитывай, что они написаны в начале
 > 80 и всех остальных "секурных" на тот момент еще не было.

Я понимаю, почему они были несекурны. Но синтаксис конфига это не извиняет.

 >> Его затыкают, конечно, куда деваться ??? он reference implementation, и
 >> стоит поэтому везде, где нужна свежая функциональность. Но работает,
 >> судя по слухам, через пень-колоду.
 > Ага, "мне Рабинович по телефону напел".

Ну, у меня самого задачи такие, что он на них, в общем, не
падает. Последний раз падал в 2005-м, кажется. Приходится по слухам.

 >> Собственно, синтаксис их конфигурации и документация на нее с тех пор
 >> лучше не стали.
 > Нет, потому что это не просто a=b,c,d а цельный язык для написания конфигов.
 > А книг про конфигурацию bind'a - один О'Реилли выпустил 5 редакций.
 > Разжованно до немогу.

Спасибо, я пишу эти конфиги больше 20 лет. Язык там, мягко говоря...

 >>  >> i A dnsmasq-base Recommends dns-root-data                  

 >>  >> Может, конечно, он оттуда только ключи для DNSSEC хочет...
 >>  > Вот именно. Оно еще и ntp сервер захочет. Чтоб ключи валидировать. И будешь
 >>  > ты с kill -HUP ${pid} играться :)
 >> Про это в man тоже есть.
 > Ну если автор настолько одаренный, что по SIGHUP делает ВСЁ - то место этому
 > в роутере. 

Нет, как раз на это там есть альтернативный подход.

 >>  > PS: Лучше уж сборку из unbound/atftpd/udhcpd - оно хоть если развалиться, то
 >>  > не всё сразу. И дурацких лимитов по умолчанию в 150 паралельных DNS запросов не
 >>  > имеет. И внешний DNS не требует.

 >> Не, дома на роутере я лучше dnsmasq оставлю. Для домашней сетки у него
 >> вполне нормальные лимиты, а DNS наружу мне один хрен провайдеры не
 > А чем они, эти твои провайдеры - это аргументируют?

А ничем. Просто порты закрыты, и это на сайте документировано.

 > Если тебе не нравиться bind - возьми PDNS, Knot, PowerDNS, MaraDNS если уж
 > так хочется.

На кого-то из них я смотрел. Забыл уже, если честно. Монстры еще круче
бинда. Десяток своих пакетов и стопка зависимостей еще десятка на два. У
меня нет задач на высокопроизводительный DNS-сервер миллиарда
доменов. Мне бы что-нибудь поменьше и полегче. Я даже без проверки
DNSSEC обойдусь. Заодно и надежнее будет.


Reply to: