Hy everyone, I have a PiHole instance running on my home server, and I changed my router (Fritz box) DNS in order to use my PiHole. Everything runs great.
I was wondering if I can put another DNS provider on my “alternative DNS server” in my router, in order to have a fallback alternative in case my server is down, or if I should avoid it.
I’m asking this because I don’t know if the request will be handled in parallel between the two DNS provider (that would make my PiHole useless) or not. Thank you.
When you specify more than one DNS server for network clients, the order in which these servers are used is not random. The following sequence is observed:
Primary DNS Server: Clients will first attempt to use the primary DNS server specified in their network settings. This server is often considered the default.
Secondary DNS Server: If the primary DNS server is unavailable or unable to resolve a query, clients will then attempt to use the secondary DNS server. This server acts as a backup.
So in OPs case his Pihole will always be used if it’s available, and only when it’s not will the secondary be used.
Except that, as I’ve already mentioned, I have two piholes, and sometimes both will be receiving requests. Based on your description, the second would never receive requests as long as the first is online. Perhaps this is router dependent, but it’s what I’ve observed.
There’s no RFC that specifies that a specific order is applied to DNS servers.
RFC 2182 details the operation and functionality of secondary DNS servers. Which defines/influences how resolvers behave with multiple DNS servers.
When it comes to a “secondary”DNS… there is nothing like a primary and secondary DNS server. These indications are quite misleading but many systems adopted it this way. Pihole only list the DNS servers as primary and secondary, because this is what the providers write on their pages. The bad phrasing is supported especially by how Windows handles it.
Most operating systems implement DNS servers as alternatives, not as fallbacks, i.e. they will query any of both servers from time to time, so it is quite likely that you will loose your Pi-hole filtering capabilities (at least partially) [if you specify a secondary DNS server on your network].
The ONLY DNS server you should have set on your network is a/the PiHole(s).
That RFC is about DNS servers in the context of DNS zones in domain names. Not for a DNS client running DNS queries like an operating system. And the RFC is very clear about this:
For your Windows, Linux whatever machine “there are simply multiple DNS servers”.
It doesn’t. As I said in another comment “most operating systems will just load balance or opportunistically pick between the two”, and there’s the relevant part from the RFC:
What you stated is generally a Windows only feature. Other OSes don’t adhere to that. Drives me crazy on Windows Servers too.