Open isg17 opened 2 years ago
Hello and thank you for the thorough report. I can't seem to reproduce that behaviour, at least on Ubuntu with nslookup
. We'll try on an OpenWrt machine a bit later, but until then, does this behaviour reproduce with it?
nslookup -debug '192.168.1.26' '2001:…'
Also, just to be clear, what are the values you're using in the “Private reverse DNS servers” field on the “DNS settings” page? Do you see AdGuard Home forwarding these PTRs to one of these upstreams?
Thanks!
After your response, I took some time to double-check configuration issues on my end. I even split the DNS servers (OpenWRT+dnsmasq on the router and Adguard Home on RPi3), and the problem persisted.
Note: If I reconfigure dnsmasq to listen on UDP/53 and then forward to Adguard Home on UDP/5353, the reverse querying works. However, that is not the configuration that is optimal for me.
Please see my three test cases and results where I placed the reverse zones in the Upstream DNS servers or the Private reverse DNS servers sections.
Additional_NSLOOKUP_Traces.txt
| Upstream DNS servers | 208.67.222.222 | 208.67.220.220 | [/local/]127.0.0.1:5353 | [/lan/]127.0.0.1:5353 | [/168.192.in-addr.arpa/]127.0.0.1:5353 | [/ip6.arpa/]127.0.0.1:5353
| Private reverse DNS servers | 127.0.0.1:5353
QUESTIONS:
5.1.168.192.in-addr.arpa, type = PTR, class = IN
ANSWERS:
AUTHORITY RECORDS:
-> 5.1.168.192.in-addr.arpa
origin = fake-for-negative-caching.adguard.com
mail addr = hostmaster.5.1.168.192.in-addr.arpa
serial = 100500
refresh = 1800
retry = 900
expire = 604800
minimum = 86400
ttl = 10
ADDITIONAL RECORDS:
** server can't find 5.1.168.192.in-addr.arpa: NXDOMAIN
QUESTIONS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa, type = PTR, class = IN
ANSWERS:
-> 5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa
name = hp-clj.lan.
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa name = hp-clj.lan.
QUESTIONS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa, type = PTR, class = IN
ANSWERS:
-> 5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa
name = hp-clj.lan.
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa name = hp-clj.lan.
QUESTIONS:
hp-clj.lan, type = A, class = IN
ANSWERS:
-> hp-clj.lan
internet address = 192.168.1.5
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
Name: hp-clj.lan Address: 192.168.1.5
QUESTIONS:
5.1.168.192.in-addr.arpa, type = PTR, class = IN
ANSWERS:
-> 5.1.168.192.in-addr.arpa
name = hp-clj.lan.
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
5.1.168.192.in-addr.arpa name = hp-clj.lan.
QUESTIONS:
hp-clj.lan, type = A, class = IN
ANSWERS:
-> hp-clj.lan
internet address = 192.168.1.5
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
Name: hp-clj.lan Address: 192.168.1.5
| Upstream DNS servers | 208.67.222.222 | 208.67.220.220 | [/local/]127.0.0.1:5353 | [/lan/]127.0.0.1:5353
| Private reverse DNS servers | 127.0.0.1:5353 | [/168.192.in-addr.arpa/]127.0.0.1:5353 | [/ip6.arpa/]127.0.0.1:5353
QUESTIONS:
5.1.168.192.in-addr.arpa, type = PTR, class = IN
ANSWERS:
AUTHORITY RECORDS:
-> 5.1.168.192.in-addr.arpa
origin = fake-for-negative-caching.adguard.com
mail addr = hostmaster.5.1.168.192.in-addr.arpa
serial = 100500
refresh = 1800
retry = 900
expire = 604800
minimum = 86400
ttl = 10
ADDITIONAL RECORDS:
** server can't find 5.1.168.192.in-addr.arpa: NXDOMAIN
QUESTIONS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa, type = PTR, class = IN
ANSWERS:
AUTHORITY RECORDS:
-> 0.1.0.6.2.ip6.arpa
origin = dns101.comcast.net
mail addr = dnsmaster.comcastonline.com
serial = 2014093026
refresh = 7200
retry = 300
expire = 604800
minimum = 900
ttl = 823
ADDITIONAL RECORDS:
** server can't find 5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa: NXDOMAIN
QUESTIONS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa, type = PTR, class = IN
ANSWERS:
-> 5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa
name = hp-clj.lan.
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa name = hp-clj.lan.
QUESTIONS:
hp-clj.lan, type = A, class = IN
ANSWERS:
-> hp-clj.lan
internet address = 192.168.1.5
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
Name: hp-clj.lan Address: 192.168.1.5
QUESTIONS:
5.1.168.192.in-addr.arpa, type = PTR, class = IN
ANSWERS:
-> 5.1.168.192.in-addr.arpa
name = hp-clj.lan.
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
5.1.168.192.in-addr.arpa name = hp-clj.lan.
QUESTIONS:
hp-clj.lan, type = A, class = IN
ANSWERS:
-> hp-clj.lan
internet address = 192.168.1.5
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
Name: hp-clj.lan Address: 192.168.1.5
| Upstream DNS servers | 208.67.222.222 | 208.67.220.220 | [/local/]127.0.0.1:5353 | [/lan/]127.0.0.1:5353
| Private reverse DNS servers | [/168.192.in-addr.arpa/]127.0.0.1:5353 | [/ip6.arpa/]127.0.0.1:5353
QUESTIONS:
5.1.168.192.in-addr.arpa, type = PTR, class = IN
ANSWERS:
AUTHORITY RECORDS:
-> 5.1.168.192.in-addr.arpa
origin = fake-for-negative-caching.adguard.com
mail addr = hostmaster.5.1.168.192.in-addr.arpa
serial = 100500
refresh = 1800
retry = 900
expire = 604800
minimum = 86400
ttl = 10
ADDITIONAL RECORDS:
** server can't find 5.1.168.192.in-addr.arpa: NXDOMAIN
QUESTIONS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa, type = PTR, class = IN
ANSWERS:
AUTHORITY RECORDS:
-> 0.1.0.6.2.ip6.arpa
origin = dns101.comcast.net
mail addr = dnsmaster.comcastonline.com
serial = 2014093026
refresh = 7200
retry = 300
expire = 604800
minimum = 900
ttl = 900
ADDITIONAL RECORDS:
** server can't find 5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa: NXDOMAIN
QUESTIONS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa, type = PTR, class = IN
ANSWERS:
-> 5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa
name = hp-clj.lan.
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.X.X.X.X.X.X.X.X.3.0.6.0.1.0.6.2.ip6.arpa name = hp-clj.lan.
QUESTIONS:
hp-clj.lan, type = A, class = IN
ANSWERS:
-> hp-clj.lan
internet address = 192.168.1.5
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
Name: hp-clj.lan Address: 192.168.1.5
QUESTIONS:
5.1.168.192.in-addr.arpa, type = PTR, class = IN
ANSWERS:
-> 5.1.168.192.in-addr.arpa
name = hp-clj.lan.
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
5.1.168.192.in-addr.arpa name = hp-clj.lan.
QUESTIONS:
hp-clj.lan, type = A, class = IN
ANSWERS:
-> hp-clj.lan
internet address = 192.168.1.5
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
Name: hp-clj.lan Address: 192.168.1.5
@isg17 Hi. Sorry for the long silence! Is this issue still relevant?
This is still relevant and the issue is still present on v0.107.11.
Issue Details
Expected Behavior
When performing reverse lookups on IPv4 addresses on a dual-stacked (IPv4 and IPv6) Adguard Home DNS server, the lookup fails while using Adguard Home DNS server's IPv6 address. Additional testing performed indicates:
Actual Behavior
The PTR record for the IPv4 address query is not found. For example: Adguard_Home_Reverse_Lookup_Bug_v0.107.3.txt Adguard_Home_Reverse_Lookup_Bug_v0.108.0-b.3.txt Host 26.1.168.192.in-addr.arpa. not found: 3(NXDOMAIN)
root@WiFi6514A-R:~# /opt/AdGuardHome/AdGuardHome -v --version AdGuard Home Version: v0.107.3 Channel: release Go version: go1.16.12 Build time: 2022-01-25T13:39:29Z+0000 GOOS: linux GOARCH: arm GOARM: v7 Race: false Dependencies: github.com/AdguardTeam/dnsproxy@v0.40.7-0.20220124144147-a8868e34b0bf (sum: h1:lir9P3RJyZSZXUSw11px0SMIWfwjscbwpqWmm2rR76I=) github.com/AdguardTeam/golibs@v0.10.4 (sum: h1:TMBkablZC0IZOpRgg9fzAKlxxNhSN2YJq7qbgtuZ7PQ=) github.com/AdguardTeam/urlfilter@v0.15.2 (sum: h1:LZGgrm4l4Ys9eAqB+UUmZfiC6vHlDlYFhx0WXqo6LtQ=) github.com/NYTimes/gziphandler@v1.1.1 (sum: h1:ZUDjpQae29j0ryrS0u/B8HZfJBtBQHjqw2rQ2cqUQ3I=) github.com/aead/chacha20@v0.0.0-20180709150244-8b13a72661da (sum: h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY=) github.com/aead/poly1305@v0.0.0-20180717145839-3fee0db0b635 (sum: h1:52m0LGchQBBVqJRyYYufQuIbVqRawmubW3OFGqK1ekw=) github.com/ameshkov/dnscrypt/v2@v2.2.3 (sum: h1:X9UP5AHtwp46Ji+sGFfF/1Is6OPI/SjxLqhKpx0P5UI=) github.com/ameshkov/dnsstamps@v1.0.3 (sum: h1:Srzik+J9mivH1alRACTbys2xOxs0lRH9qnTA7Y1OYVo=) github.com/beefsack/go-rate@v0.0.0-20200827232406-6cde80facd47 (sum: h1:M57m0xQqZIhx7CEJgeLSvRFKEK1RjzRuIXiA3HfYU7g=) github.com/cheekybits/genny@v1.0.0 (sum: h1:uGGa4nei+j20rOSeDeP5Of12XVm7TGUd4dJA9RDitfE=) github.com/digineo/go-ipset/v2@v2.2.1 (sum: h1:k6skY+0fMqeUjjeWO/m5OuWPSZUAn7AucHMnQ1MX77g=) github.com/fsnotify/fsnotify@v1.5.1 (sum: h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI=) github.com/go-ping/ping@v0.0.0-20210506233800-ff8be3320020 (sum: h1:mdi6AbCEoKCA1xKCmp7UtRB5fvGFlP92PvlhxgdvXEw=) github.com/google/go-cmp@v0.5.5 (sum: h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=) github.com/google/gopacket@v1.1.19 (sum: h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8=) github.com/google/renameio@v1.0.1 (sum: h1:Lh/jXZmvZxb0BBeSY5VKEfidcbcbenKjZFzM/q0fSeU=) github.com/insomniacslk/dhcp@v0.0.0-20210310193751-cfd4d47082c2 (sum: h1:NpTIlXznCStsY88jU+Gh1Dy5dt/jYV4z4uU8h2TUOt4=) github.com/josharian/native@v0.0.0-20200817173448-b6b71def0850 (sum: h1:uhL5Gw7BINiiPAo24A2sxkcDI0Jt/sqp1v5xQCniEFA=) github.com/kardianos/service@v1.2.0 (sum: h1:bGuZ/epo3vrt8IPC7mnKQolqFeYJb7Cs8Rk4PSOBB/g=) github.com/lucas-clemente/quic-go@v0.24.0 (sum: h1:ToR7SIIEdrgOhgVTHvPgdVRJfgVy+N0wQAagH7L4d5g=) github.com/marten-seemann/qtls-go1-16@v0.1.4 (sum: h1:xbHbOGGhrenVtII6Co8akhLEdrawwB2iHl5yhJRpnco=) github.com/mdlayher/ethernet@v0.0.0-20190606142754-0394541c37b7 (sum: h1:lez6TS6aAau+8wXUP3G9I3TGlmPFEq2CTxBaRqY6AGE=) github.com/mdlayher/netlink@v1.4.0 (sum: h1:n3ARR+Fm0dDv37dj5wSWZXDKcy+U0zwcXS3zKMnSiT0=) github.com/mdlayher/raw@v0.0.0-20210412142147-51b895745faf (sum: h1:InctQoB89TIkmgIFQeIL4KXNvWc1iebQXdZggqPSwL8=) github.com/miekg/dns@v1.1.45 (sum: h1:g5fRIhm9nx7g8osrAvgb16QJfmyMsyOCb+J7LSv+Qzk=) github.com/patrickmn/go-cache@v2.1.0+incompatible (sum: h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc=) github.com/pkg/errors@v0.9.1 (sum: h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=) github.com/satori/go.uuid@v1.2.0 (sum: h1:0uYX9dsZ2yD7q2RtLRtPSdGDWzjeM3TbMJP9utgA0ww=) github.com/ti-mo/netfilter@v0.4.0 (sum: h1:rTN1nBYULDmMfDeBHZpKuNKX/bWEXQUhe02a/10orzg=) github.com/u-root/u-root@v7.0.0+incompatible (sum: h1:u+KSS04pSxJGI5E7WE4Bs9+Zd75QjFv+REkjy/aoAc8=) go.etcd.io/bbolt@v1.3.6 (sum: h1:/ecaJf0sk1l4l6V4awd65v2C3ILy7MSj+s/x1ADCIMU=) golang.org/x/crypto@v0.0.0-20211215153901-e495a2d5b3d3 (sum: h1:0es+/5331RGQPcXlMfP+WrnIIS6dNnNRe0WB02W0F4M=) golang.org/x/net@v0.0.0-20211216030914-fe4d6282115f (sum: h1:hEYJvxw1lSnWIl8X9ofsYMklzaDs90JI2az5YMd4fPM=) golang.org/x/sync@v0.0.0-20210220032951-036812b2e83c (sum: h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ=) golang.org/x/sys@v0.0.0-20211216021012-1d35b9e2eb4e (sum: h1:fLOSk5Q00efkSvAm+4xcoXD+RRmLmmulPn5I3Y9F2EM=) golang.org/x/text@v0.3.7 (sum: h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=) gopkg.in/natefinch/lumberjack.v2@v2.0.0 (sum: h1:1Lc07Kr7qY4U2YPouBjpCLxpiyxIVoxqXgkXLknAOE8=) gopkg.in/yaml.v2@v2.4.0 (sum: h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=) howett.net/plist@v0.0.0-20201203080718-1454fab16a06 (sum: h1:QDxUo/w2COstK1wIBYpzQlHX/NqaQTcf9jyz347nI58=)
root@WiFi6514A-R:~# host -v -p 53 MyLaptop-WiFi.local 192.168.1.1 Trying "MyLaptop-WiFi.local" Using domain server: Name: 192.168.1.1 Address: 192.168.1.1#53 Aliases:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56159 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;MyLaptop-WiFi.local. IN A
;; ANSWER SECTION: MyLaptop-WiFi.local. 10 IN A 192.168.1.26
Received 53 bytes from 192.168.1.1#53 in 0 ms Trying "MyLaptop-WiFi.local" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55608 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;MyLaptop-WiFi.local. IN AAAA
;; ANSWER SECTION: MyLaptop-WiFi.local. 10 IN AAAA 2600:6c54:XXXX:XXXX::1a
Received 65 bytes from 192.168.1.1#53 in 0 ms Trying "MyLaptop-WiFi.local" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45305 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;MyLaptop-WiFi.local. IN MX
Received 37 bytes from 192.168.1.1#53 in 0 ms
root@WiFi6514A-R:~# host -v -p 53 MyLaptop-WiFi.local 2600:6c54:XXXX:XXXX::1 Trying "MyLaptop-WiFi.local" Using domain server: Name: 2600:6c54:XXXX:XXXX::1 Address: 2600:6c54:XXXX:XXXX::1#53 Aliases:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26895 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;MyLaptop-WiFi.local. IN A
;; ANSWER SECTION: MyLaptop-WiFi.local. 10 IN A 192.168.1.26
Received 53 bytes from 2600:6c54:XXXX:XXXX::1#53 in 9 ms Trying "MyLaptop-WiFi.local" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63375 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;MyLaptop-WiFi.local. IN AAAA
;; ANSWER SECTION: MyLaptop-WiFi.local. 10 IN AAAA 2600:6c54:XXXX:XXXX::1a
Received 65 bytes from 2600:6c54:XXXX:XXXX::1#53 in 0 ms Trying "MyLaptop-WiFi.local" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8388 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;MyLaptop-WiFi.local. IN MX
Received 37 bytes from 2600:6c54:XXXX:XXXX::1#53 in 0 ms
root@WiFi6514A-R:~# host -v -p 53 192.168.1.26 192.168.1.1 Trying "26.1.168.192.in-addr.arpa" Using domain server: Name: 192.168.1.1 Address: 192.168.1.1#53 Aliases:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60938 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;26.1.168.192.in-addr.arpa. IN PTR
;; ANSWER SECTION: 26.1.168.192.in-addr.arpa. 10 IN PTR MyLaptop-WiFi.local.
Received 76 bytes from 192.168.1.1#53 in 0 ms
root@WiFi6514A-R:~# host -v -p 53 192.168.1.26 2600:6c54:XXXX:XXXX::1 Trying "26.1.168.192.in-addr.arpa" Using domain server: Name: 2600:6c54:XXXX:XXXX::1 Address: 2600:6c54:XXXX:XXXX::1#53 Aliases:
Host 26.1.168.192.in-addr.arpa. not found: 3(NXDOMAIN) Received 177 bytes from 2600:6c54:XXXX:XXXX::1#53 in 0 ms
root@WiFi6514A-R:~# host -v -p 5353 192.168.1.26 2600:6c54:XXXX:XXXX::1 Trying "26.1.168.192.in-addr.arpa" Using domain server: Name: 2600:6c54:XXXX:XXXX::1 Address: 2600:6c54:XXXX:XXXX::1#5353 Aliases:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11848 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION: ;26.1.168.192.in-addr.arpa. IN PTR
;; ANSWER SECTION: 26.1.168.192.in-addr.arpa. 0 IN PTR MyLaptop-WiFi.local.
Received 76 bytes from 2600:6c54:XXXX:XXXX::1#5353 in 0 ms root@WiFi6514A-R:~#
Screenshots
Screenshot:
Additional Information