SomeWhereOverTheRainBow
Part of the Furniture
Well first of all, WHOIS is mainly used in adguardhome for identifying devices with remote addresses. (e.g. you set adguardhome up to act as a remote DoH server, you connect with your cellphone via a DoH application while away from home. Adguardhome identifies your cellphone based on its public ip address, and you know through the logs that it was your cellphone connecting.) However, if you are connecting over wifi via your cellphone, adguardhome should not be attempting to query your ISP (entries in /etc/resolv.conf) to identify the hostnames of your local devices on your private network, it doesn't with distinguishable non-public routable addresses like 192.168.1.3; however, if I make stateful ipv6 address assignments without defining a upstream for the ipv6 stateful arpa, then adguardhome uses whois to request for the hostname similar to how it does with stateless addressing of the same prefix. In general, whois should not be used to identify clients within one hop of the adguardhome server. In this instance, hostname lookups should be handled by local means(e.g. arp cache, or local reverse lookup). The problem with relying on the upstream to return a hostname for a local client is that it can return anything that is inside the upstreams cache. For some people, this might seem okay, but for others who rely on local name resolution to be reliable, this could pose a problem. The ramifications could range from something minor, to something major. However the case may be, I would rather it return nothing (or what I have defined in /etc/hosts.), than to return what goggles, cloudflair, squad9, or my isp thinks it should be.Thanks for the info. I put AdGuard on hold for a bit as I am trying to work out some IPv6 issues in order to get the name resolution I desire. I've seen something in the issue tracker about privacy concerns, but I'm not entirely sure they are warranted. If you are using GUAs in your environment, the idea is they are publicly routable anyway - so there should not be a concern if those are made visible to the outside.
It seems the concern should only be with stateless/SLAAC addressing when privacy extensions are not enabled. In which case a device's MAC might get leaked. Or perhaps the concern is simply tracking based on IP - whereas with IPv4 and NAT you simply know that the device is originating from the single public IP, here you know the specific GUA accessing. I wrote my observations up here:
rDNS for IPv6 (resolv hostnames from IP-Adress) · AdguardTeam AdGuardHome · Discussion #2912
Hello, in my configuration I am using Adguard home with unbound. the network setup is following: Router/Gateway is an Fritz!Box with DHCP for IPv4 and IPv6 FritzBox is providing via DHCP the the IP...github.com
I'm interested in specifically how you judge this as a privacy concern? Of course I agree that the WHOIS approach should be able to be disabled if you choose not to use it. I could not find anything about doing this, but I assume (since you reference the YAML) that the appropriate section is:
Code:clients: runtime_sources: whois: true arp: true rdns: true dhcp: true hosts: true
Because I could not find anything about it, I don't know what the danger is of disabling WHOIS. I think the only time having WHOIS might be useful is if you are running a publicly accessible AdGuard server and accessing it from outside your network where an incoming client might not be registered. However since it is unlikely that another external client has a PTR record, it seems the best you are going to get with WHOIS is an OrgName. I suppose that's better than nothing, but it's not much
Good to know. I have some concerns about the additional packages mostly because I have some other outside constraints (which I won't detail here) about the Entware install getting too large, but I don't actually know if this will be a problem or not for me.
I wasn't personally worried about Apache - because I'm not using it - I was just concerned on my first quick glance through of the code base that I saw it was getting removed.
What mechanism do/can you use to ensure that Apache only gets removed if it was installed by the installer itself?
Last edited: