Как сделать отдельный dns-ответ для хоста, на котором крутится dns-сервер? Keenetic Ultra II, прошивка Padavan, dns - dnsmasq В локалке owncloud-сервер Не дома клиенты обращаются к server.ddnsname.org, по которому отвечает роутер, перебрасывает нужные порты на адрес OC-сервера, все хорошо. Нужно, чтобы когда клиент в локалке, роутер пинал бы по запросу сразу на ip-адрес OC-сервера. Так-то все понятно, можно в лоб через hosts роутера, НО: нужно, чтобы сам роутер при запросе адреса server.ddnsname.org шел на внешние dns-сервера и получал внешний ip-адрес. Для чего: провайдер выдает то серые, то белые ip-адреса (не разбирался, может и только белые, но с некоторых нет ответа из вне), роутер по крону пингует по доменному имени себя, если ответа нет - реконнект, до тех пор, пока не получу рабочий ip-адрес. А гонять дома локальный трафик через нат роутера надоело. Гугл внятного ничего не дал, или я так и не понял, что подкручивать (dns horizon split, группы через dhcp-host и dhcp-option и т.д.)
Для решения этой задачи вы можете использовать функцию split DNS, которая позволяет настраивать разные DNS-ответы для внутренних и внешних запросов. В данном случае вам нужно настроить split DNS для доменного имени server.ddnsname.org.
Вам понадобится добавить запись в конфигурационный файл dnsmasq на роутере. Например, вы можете добавить следующую запись для указания внутреннего IP-адреса OC-сервера:
Эта запись будет указывать dnsmasq на обработку запросов к доменному имени server.ddnsname.org и ответить внутренним IP-адресом OC-сервера.
Затем вам нужно перезапустить dnsmasq, чтобы изменения вступили в силу. Вы можете сделать это, например, с помощью следующей команды:
service dnsmasq restart
После этого, когда клиенты в вашей локальной сети запрашивают server.ddnsname.org, они будут получать внутренний IP-адрес OC-сервера, в то время как роутер будет продолжать запрашивать внешние DNS-серверы для получения внешнего IP-адреса.
Надеюсь, это поможет вам решить проблему. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за дополнительной помощью.
Для решения этой задачи вы можете использовать функцию split DNS, которая позволяет настраивать разные DNS-ответы для внутренних и внешних запросов. В данном случае вам нужно настроить split DNS для доменного имени server.ddnsname.org.
Вам понадобится добавить запись в конфигурационный файл dnsmasq на роутере. Например, вы можете добавить следующую запись для указания внутреннего IP-адреса OC-сервера:
address=/server.ddnsname.org/ваш_внутренний_IP_адрес
Эта запись будет указывать dnsmasq на обработку запросов к доменному имени server.ddnsname.org и ответить внутренним IP-адресом OC-сервера.
Затем вам нужно перезапустить dnsmasq, чтобы изменения вступили в силу. Вы можете сделать это, например, с помощью следующей команды:
service dnsmasq restart
После этого, когда клиенты в вашей локальной сети запрашивают server.ddnsname.org, они будут получать внутренний IP-адрес OC-сервера, в то время как роутер будет продолжать запрашивать внешние DNS-серверы для получения внешнего IP-адреса.
Надеюсь, это поможет вам решить проблему. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за дополнительной помощью.