A nice feature of Pi-hole is that you can see which network devices are sending out the most DNS queries. For every device that is using Pi-hole as their DNS server, you can also see which DNS queries each one has made.
But depending on a few things, you may only see a single host in your Top Clients section, which is not as useful.
Once those queries arrive at the router, it forwards the requests to the Pi-hole. Since the queries are all coming from one place, Pi-hole only sees the router as the origin of all DNS requests. So the traffic flow looks something like this:
Multiple network clients > Router (acting as the primary DNS server) > Pi-hole (acting as an upstream DNS server)
How do I prevent this behavior?
Sometimes you cannot
Even if you set everything correctly, you may still not be able to change this behavior. There may be an option in your router to disable this behavior, but some routers are very limited in their settings. Try to look for a place to set the DNS server via DHCP options or under LAN settings.
When the router's DNS cannot be deactivated, even if you are using pi-hole's DHCP, you still get in effect two DNS servers (the router, which then directs DNS requests to pi-hole, and the pi-hole itself). To fix this:
I am familiar with the Asus Router (Stock) RT-AX86U Firmware Version:[3.0.0.4.388_23285] so adding this in case it helps someone.
DHCP is running on my Asus Router. Pihole is running on a RaspberryPI.
Router @ 192.168.0.1 Raspberry has a DHCP reservation based on MAC for 192.168.0.3.
DHCP Start 192.168.0.101 DHCP end 192.168.0.200 (or you can reduce the range if you want).
All devices that need static addresses like Printers / cameras can be assigned one manually in the DHCP below 100.
on the LAN - LAN IP tab
[RT-AX86U's Domain Name] believe this is case sensitive. *
On the WAN tab -- DNS and WINS Server Setting
[DNS Server1 and 2] point to my RaspberryPI
IPV6 DNS server Points to my RaspberryPI
Advertise router's IP in addition to user-specified DNS - No
Wins Server: RaspberryPI
On my router the WAN DNS Setting is set to QUAD9 DNS Server: 9.9.9.9, 149.112.112.112
[Forward local domain queries to upstream DNS] off
[Enable DNS Rebind protection] On
[Enable DNSSEC support] Yes
[Validate unsigned DNSSEC replies] Yes
[Prevent client auto DoH] Yes
[DNS-over-TLS Profile] Strict
[DNS Privacy Protocol] is DNS over TLS (DoT) - Cleanbrowsing Security ( IPV6 and IPv4)
IPV6 Tab
Connect to DNS Server automatically No
IPv6 DNS Server 1 / 2 / 3 all point to the RaspberryPi
Enable Router Advertisement Yes (I had tried no and it broke the internet)
On the RaspberryPI / Pihole Admin -- Setting -- DNS
Make sure you enable Use Conditional Forwarding and enter the same local domain name as the one you selected on the router *
Now you should be able to see all the client names in the Logs