I have a pi hole in my network and I set it as my primary DNS server, and my router (a Mikrotik) as secondary. DHCP sets the DNS servers as pihole, mikrotik
in this exact order and I want to keep it that way. I know systemd-resolved uses some algorithm to set the fastest dns as current server, but I don’t want/need that. Is there some way to do configure it to just let it be?
I’m running Fedora 40.
deleted by creator
deleted by creator
You can’t. Well, you shouldn’t rely on queries going out in any particular order. All of your DNS servers should behave the same way as clients may fail from the first one to a secondary.
Why do you care which one is being used? What are you trying to do?
I want to have ads blocked with pihole and at the same time to have local DNS served by the router. I know pihole does local DNS, but RouterOS (mikrotik) is much better suited for that.
deleted by creator
Thank you. I’ll have it set like this.
Via ChatGPT 4 (accuracy unverified):
Yes, you can configure
systemd-resolved
to use the DNS servers in the order provided without dynamically switching based on speed. Here’s how you can do it:-
Edit the resolved configuration file:
Open the
resolved.conf
file in a text editor:sudo nano /etc/systemd/resolved.conf
-
Modify or add the following line:
DNS=`IP_of_pihole` `IP_of_mikrotik` DNSStubListener=no FallbackDNS=
Replace
IP_of_pihole
andIP_of_mikrotik
with your actual DNS IP addresses. This tellssystemd-resolved
to only use the DNS servers in the order you’ve specified. -
Prevent automatic DNS changes by network manager:
If you’re using NetworkManager, create a drop-in configuration to prevent it from overriding DNS settings:
sudo mkdir -p /etc/NetworkManager/conf.d/ sudo nano /etc/NetworkManager/conf.d/dns.conf
Add the following content:
[main] dns=none
-
Restart services:
After making these changes, restart
systemd-resolved
andNetworkManager
:sudo systemctl restart systemd-resolved sudo systemctl restart NetworkManager
This should ensure that your system uses the DNS servers in the order provided without any automatic switching.
-