LINUX.ORG.RU
ФорумAdmin

Проблема с DNS

 ,


0

1

Имеется Wi-Fi роутер, на котором установлен OpenWrt. Wi-Fi роутер подключен кабелем к немного необычной сети, которая требует авторизацию - до успешной авторизации все запросы перенаправляются на страницу авторизации. Судя по всему, на стороне аплинка имеет место быть что-то вроде балансировки - иногда DHCP возвращает один gateway и DNS, иногда другой (всего два варианта). Соответственно, один вариант отлично работает, а второй вариант - нет. То есть перенаправление на страницу авторизации случается, но Google Chrome не может её открыть выдавая не особо информативую ошибку DNS_PROBE_STARTED (звучит как знаменитое «Ошибка: операция выполнена успешно»).

Если открыть консоль, то можно получить вот что:

$ dig pfrf04.in.crous-toulouse.fr

; <<>> DiG 9.16.1-Ubuntu <<>> pfrf04.in.crous-toulouse.fr
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18391
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1432
;; QUESTION SECTION:
;pfrf04.in.crous-toulouse.fr.   IN      A

;; Query time: 2 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Tue Jul 06 03:27:25 DST 2021
;; MSG SIZE  rcvd: 56

$ dig @172.17.208.10 pfrf04.in.crous-toulouse.fr

; <<>> DiG 9.16.1-Ubuntu <<>> @172.17.208.10 pfrf04.in.crous-toulouse.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43806
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1432
;; QUESTION SECTION:
;pfrf04.in.crous-toulouse.fr.   IN      A

;; ANSWER SECTION:
pfrf04.in.crous-toulouse.fr. 3600 IN    A       172.17.208.10

;; Query time: 0 msec
;; SERVER: 172.17.208.10#53(172.17.208.10)
;; WHEN: Tue Jul 06 03:28:11 DST 2021
;; MSG SIZE  rcvd: 72

192.168.1.1 - Локальный адрес роутера (соответственно, для конечного устройства является gateway и DNS)

172.17.208.10 - gateway и DNS, полученный роутером по DHCP от аплинка

pfrf04.in.crous-toulouse.fr - страница авторизации, которая не работает (есть ещё pfrf01.in.crous-toulouse.fr - на неё редирект происходит, когда DHCP выдаёт другой gateway и DNS - 172.17.160.2 - она отлично работает в этом случае)

То есть можно заметить, что DNS аплинка и dnsmasq роутера выдают разные результаты и только ответ DNS аплинка содержит IP-адрес.

В текущий момент как костыль я просто много раз переподключаюсь к WAN, пока балансир не кинет на хороший шлюз. Но это не очень удобно, поэтому возникает вопрос как уравнять ответы dnsmasq и DNS аплинка (совсем отключать DNS-сервер на роутере я не хочу, так как когда истечёт аренда IP роутера его может кинуть на другой шлюз, а клиенты не узнают об этом, потому что их аренда IP в самом роутере истекает совсем в другое время, и продолжат долбиться в старый DNS, так что какое-то проксирование всё равно нужно).

★★★★★

и продолжат долбиться в старый DNS

Если у тебя на роутере dnsmasq, почему бы не заюзать его по назначению, как кэширующий? Из luci ты это не сделаешь (ни из вебморды, ни через cli-утилиту), придётся ковырять конфиг лапками, но работать будет.

mord0d ★★★★★ ()