Искал в инете, но ответа так и не нашёл.
Задача такая:
Есть шлюз на FreeBSD 11 amd64, и на шлюзе работает unbound. Я хочу чтобы все запросы из локалки на посторонние dns сервера заворачивались на этот unbound.
Нашёл в частности похожую тему у Лиссяры на форуме: ТУТ, но ответа там как я понял не содержится.
У меня вот конфиг текущий:
re0 192.168.0.1 - локалка
re1 a.b.c.d - интернет.
На алиасе локального интерфейса, на адресе 10.0.0.1 висит unbound.
И есть правила фаервола:
Код: Выделить всё
# Нат для раздачи интернета
${FW} nat 1 config log if ${extIF} unreg_only reset same_ports
# Нат для перехвата DNS запросов на внутреннем интерфейсе
${FW} nat 2 config log if ${intIF} unreg_only reset same_ports \
redirect_port tcp 10.0.0.1:53 53 \
redirect_port udp 10.0.0.1:53 53
${FW} add nat 2 log all from any to not 10.0.0.1 53 via ${intIF}
${FW} add nat 2 log all from 10.0.0.1 53 to any via ${intIF}
${FW} add nat 1 ip from any to me in via ${extIF}
${FW} add nat 1 ip from ${intLAN} to any out via ${extIF}
Подскажите пожалуйста, как такой перехват реализовать?
С помощью fwd 10.0.0.1,53 тоже не проходит по описанным всеми причине, что клиент отправивший DNS запрос получает ответ от другого адреса DNS нежели у которого запрашивал.
Отправлено спустя 1 минуту 14 секунд:
Если в качестве DNS сервера у клиентов указываю 192.168.0.1 или 10.0.0.1 то всё работает. Но надо чтобы принудительно заворачивал посторонние DNS запросы на внутренний сервер.