Am using a Netgear R8500, stock current firmware, and have the pihole IP set as the only DNS entry. R8500 is the DHCP server and I prefer NOT to use pihole. Mixture of wired and wireless devices - almost 30 in total (am only concerned currently with 5 wired Windows machines and 5 wireless Android -2 phones & 3 Tablets)
Using a physical pi 3b
Network is 192.168.1.0/24, router is .1 pihole is .50
Pi-hole should be blocking ads from ALL devices connected to my home network.
Each client should be listed, by name, on the Network Overview page and shown as using pihole.
Actual Behaviour:
Pi-hole blocks ads across all devices, wired and wireless perfectly.
On the Network Overview page, it reports the router as using pihole but lists only 2 wired devices, by ip, as not using pihole. Router itself reports almost 30
Tried setting up conditional forwarding on the DNS page but this creates massive traffic logging so is obviously creating a loop.
Using Local network 192.168.1.0/24 IP address of router 192.168.1.1
If I manually set the pihole ip as the dns server on the windows ethernet controller (Use the following DNS server addresses). Then flush and renew DNS the pihole will correctly report, on Network Overview, that the device is using the pihole.
Suspect the issue is related to the R8500 having no access to dnsmasq on stock firmware
This is the only location that I can set any DNS reference on the Netgear R8500, the ip address there is the pihole. In my ignorance I thought that was pushed out when dhcp leases were issued. I guess it only pushes out the routers ip for DNS then? Looking at ipconfig the only dns reference is the server ip.
I checked the link you sent and I'm ding (in my head at least) option 1 "1. Define Pi-hole’s IP address as the only DNS entry in the router" am i not?
Using Pi-hole as your router's upstream is a valid configuration.
You just lose the ability to attribute DNS traffic to specific clients, as your router is the only client that Pi-hole sees (apart from itself, or rather its own host), and you won't be able to use client-based filtering.
One way to get around this would be to disable your router's DHCP server and switch on Pi-hole's.
But you already made it clear you don't want to go down that road:
As explained in the docs, your only remaining option would be to configure each device manually to use Pi-hole.
(There could be also the (rather exotic) option to configure EDNS(0) in your router, though you should consider yourself really lucky if your router would actually support that. I am not aware of any stock consumer grade router that does so.)
If you are willing to spend additional money, you could opt for replacing your router/modem with a device that allows to configure a local DNS server via DHCP, or introduce an additional router (without a modem, making it significantly cheaper) supporting that.
OK, I now get that pihole will only see the router, maybe itself, in the client list - will try editing the /etc/hosts file and see what that can do for me. Second part of the issue is whilst ads etc are blocked on devices pihole shows that they are not using pihole
The information I provided is pretty much comprehensive for the options you may choose from.
Editing hosts won't change anything about your router being the only client sending DNS requests to Pi-hole (and neither would Conditional Forwarding, as you already found out).
OK, I turned off DHCP on my router and set DNS back to 'Provided by ISP". Turned on DHCP on pihole and added all the DHCP leases I needed. Rebooted the pihole and all seemed to be OK.
However, when I try to flush the logs it goes through the motions but does not clear them until I reboot. Then I noticed that the FTL service is offline. So from ssh I ran pihole -r and selected repair, that only got so far - see image, and then dropped back to ssh.
Generated a debug log but that failed 'curl failed'
Not sure what I did and can recreate the pihole if needed - any thoughts on what I messed up?
Rebuilt pihole from scratch. Turned off DHCP on router, removed pihole DNS reference and reset to provided by ISP, then turned on DHCP on pihole. Added all my devices to the Static DHCP leases and so far seems to be working. Not sure what I messed up on the first test as I'm 99% sure I did exactly the same on the second go round - oh well.
One query, in my Static DHCP leases if I have a host called 'MyPC' it shows on active DHCP leases as 'MyPC' but everywhere else pihole references it as 'MyPC.lan'. Why is that?
Thanks - what a noob question never noticed that field before
I added 1 record through the gui to see that format of /etc/dnsmasq.d/04-pihole-static-dhcp.conf then copy/paste my list of devices into it. Reboot and done, much quicker than using the gui