AdguardTeam / AdGuardHome

Network-wide ads & trackers blocking DNS server
https://adguard.com/adguard-home.html
GNU General Public License v3.0
24.61k stars 1.78k forks source link

SLAAC IPV6 addressing associated with Private reverse DNS servers not kept private when No hostname available. #3817

Open jumpsmm7 opened 2 years ago

jumpsmm7 commented 2 years ago

Issue Details

AdguardHome is using WHOIS by contacting the ISP to resolve client IPV6 Hostnames instead of using RDNS and relying on the local reverse lookup for ipv6 to discover client hostnames.

EugeneOne1 commented 2 years ago

@jumpsmm7, hello and sorry for a long response. AdGuard Home tries to obtain the WHOIS information for all the clients whose IP address isn't a special one. RDNS clients resolving used not instead WHOIS but in combination with it having a higher priority. Thus if the client appears to be resolved via WHOIS, it means that AGH can't resolve client's IP via RDNS.

Note also that RDNS uses private upstream resolvers (the local_ptr_upstreams setting) for the clients with IP addresses from locally-served networks.

If your router (or any other machine in the network) responds to PTR requests for addresses of these clients?

jumpsmm7 commented 2 years ago

The biggest issue faced that the client should be easier to identify given if EDNS0 information is available, for example if it can be identified through EDNS0 that the client shares common information such as a mac-address for example, then host name for one can correspond to the other. This may have to be a feature request. The biggest challenge is that even with ipv6 slaac addressing matching the same PTR data as a stateful addressing, the hostname assingnment should not be queried with whois to the upstream ISP or DNS service provider. Instead it should be treated locally and assumed no hostname unless defined in /etc/hosts or derivable from local ptr lookup. BTW, I love the work the adguardhometeam has done so far.

EugeneOne1 commented 2 years ago

@jumpsmm7, unfortunately, we still can't quite figure out what you're asking for. Can you please show us the kind of request that currently fails or returns invalid information using nslookup or dig? Thanks.

jumpsmm7 commented 2 years ago

@jumpsmm7, unfortunately, we still can't quite figure out what you're asking for. Can you please show us the kind of request that currently fails or returns invalid information using nslookup or dig? Thanks.

The Issue I am having is that if I define a [/Some-IPV6-Address.ip6.arpa/]Some-IPV6-Address for a Private reverse DNS servers If I have a slaac address assignment associated with this network and that same slaac address has no retrievable hostname, WHOIS should not be attempting to retrieve a host name from the upstream because this network is defined as "private". Otherwise this could potentially be seen as leaking client information to the upstream.

jumpsmm7 commented 2 years ago

I adjusted the title to reflect the actual problem.