LINUX.ORG.RU
ФорумAdmin

SERVFAIL от OpenWrt/dnsmasq/Stubby/1.1.1.1 при включенном DNSSEC и DoT

 , ,


0

1

Есть OpenWrt 19.07.0, dnsmasq 2.80-15 и Stubby 0.2.6-2. В dnsmasq включено proxydnssec и в Stubby, соответственно, dnssec_return_status, в качестве DNS-сервера в Stubby используется 1.1.1.1 с DoT.

На клиенте используется systemd-resolved, который сначала включает на интерфейсе, обслуживаемом dnsmasq, DNSSEC (в режиме allow-downgrade), но после произвольного количества запросов получает SERVFAIL и отключает проверку DNSSEC (так и задумано, если судить по коду systemd-resolved) - запросы к невалидным доменам просто помечаются как неподлинные, но разрешаются без ошибки.

Очевидно, что проблема где-то в связке dnsmasq -> Stubby -> 1.1.1.1. Памяти на роутере - достаточно, никаких ограничений на количество соединений - нет, большинство настроек - по умолчанию, по логам на роутере, на первый взгляд, ничего фатального.

В следующем тесте часто падает на 20 запросе, иногда - на 10, иногда - на 50. Перед этим возникает пауза и дальше «Server returned error SERVFAIL, retrying transaction with reduced feature level UDP+EDNS0.» и «Downgrading transaction feature level fixed an RCODE error, downgrading server 192.168.1.1 too.».

$ resolvectl reset-server-features && resolvectl flush-caches; for i in {1..50}; do printf "%d\n" $i; resolvectl query -t A sigfail.verteiltesysteme.net && printf 'DOWNGRADE\n' && break; done

systemd-resolved:

Jan 21 02:48:44 lambda systemd-resolved[217304]: Transaction 1239 for <sigfail.verteiltesysteme.net IN A> scope dns on enp0s25/*.
Jan 21 02:48:44 lambda systemd-resolved[217304]: Using feature level UDP+EDNS0+DO for transaction 1239.
Jan 21 02:48:44 lambda systemd-resolved[217304]: Using DNS server 192.168.1.1 for transaction 1239.
Jan 21 02:48:44 lambda systemd-resolved[217304]: Sending query packet with id 1239.
Jan 21 02:48:44 lambda systemd-resolved[217304]: Got message type=method_return sender=org.freedesktop.DBus destination=:1.26154 path=n/a interface=n/a member=n/a cookie=443 reply_cookie=884 signature=n/a error-name=n/a error-message=n/a
Jan 21 02:48:44 lambda systemd-resolved[217304]: Match type='signal',sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0=':1.26392' successfully installed.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Processing incoming packet on transaction 1239 (rcode=SERVFAIL).
Jan 21 02:48:49 lambda systemd-resolved[217304]: Server returned error SERVFAIL, retrying transaction with reduced feature level UDP+EDNS0.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Retrying transaction 1239.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Cache miss for sigfail.verteiltesysteme.net IN A
Jan 21 02:48:49 lambda systemd-resolved[217304]: Transaction 1239 for <sigfail.verteiltesysteme.net IN A> scope dns on enp0s25/*.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Using feature level UDP+EDNS0 for transaction 1239.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Sending query packet with id 1239.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Processing incoming packet on transaction 1239 (rcode=SUCCESS).
Jan 21 02:48:49 lambda systemd-resolved[217304]: Downgrading transaction feature level fixed an RCODE error, downgrading server 192.168.1.1 too.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Not validating response for 1239, used server feature level does not support DNSSEC.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Server 192.168.1.1 does not support DNSSEC, downgrading to non-DNSSEC mode.
Jan 21 02:48:49 lambda systemd-resolved[217304]: Added positive unauthenticated cache entry for sigfail.verteiltesysteme.net IN A 27s on enp0s25/INET/192.168.1.1
Jan 21 02:48:49 lambda systemd-resolved[217304]: Added positive unauthenticated cache entry for sigfail.verteiltesysteme.net IN RRSIG 27s on enp0s25/INET/192.168.1.1
Jan 21 02:48:49 lambda systemd-resolved[217304]: Transaction 1239 for <sigfail.verteiltesysteme.net IN A> on scope dns on enp0s25/* now complete with <success> from network (unsigned).
Jan 21 02:48:49 lambda systemd-resolved[217304]: Sent message type=method_return sender=n/a destination=:1.26392 path=n/a interface=n/a member=n/a cookie=886 reply_cookie=2 signature=a(iqqay)t error-name=n/a error-message=n/a
Jan 21 02:48:49 lambda systemd-resolved[217304]: Sent message type=method_call sender=n/a destination=org.freedesktop.DBus path=/org/freedesktop/DBus interface=org.freedesktop.DBus member=RemoveMatch cookie=887 reply_cookie=0 signature=s error-name=n/a error-message=n/a
Jan 21 02:48:49 lambda systemd-resolved[217304]: Freeing transaction 1239.

tcpdump:

03:28:36.106601 IP (tos 0x0, ttl 64, id 45658, offset 0, flags [DF], proto UDP (17), length 108)
    lambda.56797 > _gateway.domain: [bad udp cksum 0x8480 -> 0xe934!] 15750+% [1au] A? sigfail.verteiltesysteme.net. ar: . OPT UDPsize=864 DO (80)
03:28:41.116933 IP (tos 0x0, ttl 64, id 29731, offset 0, flags [DF], proto UDP (17), length 74)
    _gateway.domain > lambda.56797: [udp sum ok] 15750 ServFail q: A? sigfail.verteiltesysteme.net. 0/0/0 (46)
03:28:41.117690 IP (tos 0x0, ttl 64, id 46406, offset 0, flags [DF], proto UDP (17), length 85)
    lambda.56797 > _gateway.domain: [bad udp cksum 0x8469 -> 0x3918!] 15750+% [1au] A? sigfail.verteiltesysteme.net. ar: . OPT UDPsize=864 (57)
03:28:41.165379 IP (tos 0x0, ttl 64, id 29733, offset 0, flags [DF], proto UDP (17), length 337)
    _gateway.domain > lambda.56797: [udp sum ok] 15750 q: A? sigfail.verteiltesysteme.net. 2/0/1 sigfail.verteiltesysteme.net. [48s] A 134.91.78.139, sigfail.verteiltesysteme.net.

Куда имеет смысл смотреть дальше в первую очередь? Может, это какая-то известная проблема?



Последнее исправление: serzh-z (всего исправлений: 3)

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