LINUX.ORG.RU
ФорумAdmin

Скриптуемый кэширующий DNS-сервер

 ,


0

3

Привет.

Существует ли в природе DNS-сервер (хотя бы просто кэширующий), который можно свободно скриптовать? Под «скриптованием» понимается модификация запросов перед перенаправлением, выбор сервера для перенаправления, модификация ответов (всё это не регулярками, а на каком-нибудь Тьюринг-полном языке).

Юзкейс: есть локалка, в ней IPv4 и IPv6-адреса (IPv4 приватные, IPv6 приватные и глобальные), dnsmasq выдаёт адреса и ведёт зону .lan. Хочу поднять DNS-сервер для зоны intelfx.name, который будет:

  • смотреть в Интернет и локалку;
  • переписывать запросы *.intelfx.name в *.lan и перенаправлять dnsmasq-у;
  • если запрос пришёл из Интернета, выкидывать из ответа всё, кроме глобальных IPv6-адресов;
  • переписывать ответы *.lan обратно в *.intelfx.name.

Чем это можно сделать?

★★★★★

Последнее исправление: intelfx (всего исправлений: 1)

Ответ на: комментарий от trancefer

Идея замечательная, но там скриптовый движок очень негибкий. Насколько понимаю, там нельзя одновременно модифицировать запрос и вернуть его в PowerDNS. Либо ты перехватываешь запрос и генерируешь ответ самостоятельно, либо ничего не делаешь.

Блин, неужели никто не написал ни одного хипсто-DNS-сервера без дроча на fastpath и с фокусом «flexibility over performance»?..

intelfx ★★★★★
() автор топика
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от trancefer

Ок. Мне тут подсказывают, что таки можно набыдлокодить, если рядом запустить авторитативный DNS-сервер и отдавать оттуда DNAME на .lan, а потом в postresolve() выкинуть CNAME/DNAME и отфильтровать A/AAAA. Но это не работает в общем случае с более сложными маппингами. Там, правда, можно попробовать взять «followCNAMERecords», но судя по всему никто не уверен, заработает ли оно вообще %)

Ещё есть unbound с его pythonmod, который выглядит чуть гибче, но про него вообще никто ничего не знает. Крутота.

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

Там какой-то куцый скриптинг. Но выглядит прикольно, спасибо. Попробую понаписать к нему плагинов на досуге.

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