Jump to content
  • 5

KeeneticOS 4.2 Beta 4: не идут DNS-запросы на AdGuardHome от устройств, к которым применена политика доступа в интернет, отличная от политики по умолчанию.


Dim McAlastair

Question

Роутер Keenetic Giga (KN-1011). Вместо прошивочного DNS-сервиса используется AdGuardHome на флешке с Entware. После обновления прошивки до версии 4.2 Beta 4 от устройств, к которым применена политика доступа в интернет, отличная от политики по умолчанию, перестали приходить DNS-запросы на AdGuardHome.

  • Upvote 1
Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 7

Бета версии до 4.2b3 включительно работали с DNS иначе, чем последующие версии. При использовании AdGuardHome и opkg dns-override не требовалось в настройках DNS на роутере прописывать 192.168.1.1, а при использовании прокси XKeen (он работает через свою политику доступа) в журнале ADH запросы клиентов фиксировались под их реальными локальными адресами и это было очень удобно. Была надежда, что такое поведение в новой прошивке останется, но увы. С версии 4.2b4 всё вернулось, как в 4.1.7. Теперь, как и прежде необходимо прописывать 192.168.1.1 в настройках DNS, а в журнале AdGuardHome все запросы клиентов обезличены и идут с IP-адреса роутера. Хотелось бы иметь возможность (командой в CLI) вернуть поведение DNS, как в ранних бетах 4.2.

  • Upvote 9
Link to comment
Share on other sites

  • 1

А можно поподробнее? Что и куда нужно вписать, чтобы устройства с другой политикой доступа отправляли запросы на AdGuardHome? 
Потому что, после отката на прошивку 4.2 Beta 3, AdGuardHome стал получать запросы от клиентов с недефолтной политикой доступа без манипуляций с iptables.

Link to comment
Share on other sites

  • 1
Posted (edited)
В 26.09.2024 в 11:18, Le ecureuil сказал:

iptables nat prerouting, до правил DNS_REDIR

Ну, вот мои таблицы правил в nat PREROUTING:

Скрытый текст

~ # iptables -L PREROUTING -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
_NDM_DNAT  all  --  anywhere             anywhere
_NDM_DNS_REDIRECT  all  --  anywhere             anywhere
_NDM_EZ_BYPASS  all  --  anywhere             anywhere
_NDM_UPNP_REDIRECT_SYS  all  --  anywhere             anywhere             ndmmark match 0x0/0x8
_NDM_UPNP_REDIRECT_0  all  --  anywhere             anywhere             ndmmark match 0x0/0x8
_NDM_HTTP_DNAT_WAN_NDNS_  tcp  --  anywhere             anywhere             tcp dpt:5080
_NDM_HTTP_DNAT_EA_NDNS_  tcp  --  anywhere             my.keenetic.net      tcp dpt:http
_NDM_HTTP_DNAT_EA_NDNS_  tcp  --  anywhere             my.keenetic.net      tcp dpt:https
xkeen      tcp  --  anywhere             anywhere             connmark match  0xffffaaa ! ctstate INVALID multiport dports http,https

Скрытый текст

~ # ip6tables -L PREROUTING -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
_NDM_DNS_REDIRECT  all      anywhere             anywhere
_NDM_PREROUTING  all      anywhere             anywhere
xkeen      tcp      anywhere             anywhere             connmark match  0xffffaaa ! ctstate INVALID multiport dports http,https

То есть мне надо до _NDM_DNS_REDIRECT вставить правила перенаправления DNS-запросов от устройств из политики xkeen на AdGuardHome? 
Как я понимаю, для этого мне нужно написать shell-скрипт для /opt/etc/ndm/netfilter.d/. Вот только я понятия не имею, что в нём писать.

Edited by Dim McAlastair
  • Upvote 2
Link to comment
Share on other sites

  • 1
Posted (edited)

Так как всё-таки должно выглядеть правило для iptables, чтобы DNS-запросы от клиентов с недефолтной политикой доступа в интернет отображались у AdGuardHome как поступившие с IP-адреса конкретного клиента, а не с IP-адреса роутера или c localhost?

Поясню, зачем, например, мне это нужно.
В AdGuardHome есть такая удобная фича: настройка безопасного веб-сёрфинга и/или блокировка доступности определённых сервисов (тех же YouTube, Steam, Telegram) парой кликов мышки для конкретных клиентов локальной сети. Но, насколько я понял из AdGuardHome Wiki, чтобы эта настройка работала, как полагается, нужно, чтобы AGH видел, с какого IP-адреса локальной сети к нему идут запросы (для регистрации клиентов на AGH по IP), либо включать на AGH DHCP-сервер, чтобы регистрировать клиентов в AGH по их MAC-адресам, чего мне делать не хочется.

А в текущей ситуации на прошивках, отличных от 4.2 b3, DNS-запросы клиентов, у которых недефолтная политика доступа в интернет, получается, попадают в AGH с IP-адреса роутера, если в консоли введена команда ip name-server 192.168.1.1, или с адреса 127.0.0.1 (localhost), если команда ip name-server 192.168.1.1 в консоли не вводилась.

Edited by Dim McAlastair
  • Upvote 1
Link to comment
Share on other sites

  • 0
11 час назад, Dim McAlastair сказал:

Роутер Keenetic Giga (KN-1011). Вместо прошивочного DNS-сервиса используется AdGuardHome на флешке с Entware. После обновления прошивки до версии 4.2 Beta 4 от устройств, к которым применена политика доступа в интернет, отличная от политики по умолчанию, перестали приходить DNS-запросы на AdGuardHome.

Это норма. Для политик всегда работает перехват DNS-трафика. Добавляйте ваши правила перехвата раньше в nat PREROUTING.

Link to comment
Share on other sites

  • 0
12 часа назад, Dim McAlastair сказал:

Роутер Keenetic Giga (KN-1011). Вместо прошивочного DNS-сервиса используется AdGuardHome на флешке с Entware. После обновления прошивки до версии 4.2 Beta 4 от устройств, к которым применена политика доступа в интернет, отличная от политики по умолчанию, перестали приходить DNS-запросы на AdGuardHome.

Вопросов нет при схеме (если потом что-то не поправят в ПО), как работало с ххх времен так и работает по сей день 42B4

AGH

Скрытый текст
На роутере 

opkg dns-override
ip name-server 192.168.1.1
ip name-server 192.168.1.1 "" on Home ********* возможно не нужна, но у меня давно она стоит

ip dhcp pool _WEBADMIN_HOME
    range 192.168.1.160 192.168.1.184
    default-router 192.168.1.1
    dns-server 192.168.1.1
    lease 86400
    bind Home
    enable

НИКАКИХ ФИЛЬТРОВ
ПРОВАЙДЕРСКИЕ DNS отключены



dns:
  bind_hosts:
    - 192.168.1.1
    - 127.0.0.1				******* для лок.сервисов роутера
    - ::1
  port: 53


~ # netstat -ntulp | grep Home
tcp        0      0 192.168.1.1:8080     0.0.0.0:*       		    LISTEN      983/AdGuardHome
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      983/AdGuardHome
tcp        0      0 192.168.1.1:53       0.0.0.0:*              	LISTEN      983/AdGuardHome
tcp        0      0 ::1:53                  :::*                    LISTEN      983/AdGuardHome
udp        0      0 127.0.0.1:53            0.0.0.0:*                           983/AdGuardHome
udp        0      0 192.168.1.1:53       0.0.0.0:*                  	        983/AdGuardHome
udp        0      0 ::1:53                  :::*                                983/AdGuardHome
~ #

На клиенте который в политике (не в основной)

Сервер:  UnKnown
Address:  192.168.1.1

Имя:     mail.ru
Addresses:  2a00:1148:1000:101:5:4:0:200
	  217.69.139.202
	  217.69.139.200
	  94.100.180.201
	  94.100.180.200

Политика с WG в ней никакого упоминания про DNS нет.

Теперь в основной

Сервер:  UnKnown
Address:  192.168.1.1

Имя:     yandex.ru
Addresses:  2a02:6b8:a::a
	  5.255.255.77
	  77.88.44.55
	  77.88.55.88

 

 

Edited by vasek00
Link to comment
Share on other sites

  • 0
В 20.09.2024 в 10:39, Dim McAlastair сказал:

Потому что, после отката на прошивку 4.2 Beta 3, AdGuardHome стал получать запросы от клиентов с недефолтной политикой доступа без манипуляций с iptables.

Это был баг.

Link to comment
Share on other sites

  • 0
В 20.09.2024 в 10:39, Dim McAlastair сказал:

А можно поподробнее? Что и куда нужно вписать, чтобы устройства с другой политикой доступа отправляли запросы на AdGuardHome? 

iptables nat prerouting, до правил DNS_REDIR

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...