Linux dhcp dhclient Mint Redhat Ubuntu Debian How To Use Local Domain DNS Server Instead of ISPs

If you are running a local DNS server like named/bind and don't want to use the ISP supplied DNS servers that are announced via a DHCP request (using dhclient) then the solution is simple.

The reason should be obvious, but normally running your own DNS server will provide a more reliable, and fast DNS response and you won't have to worry about filtering as much (unless your upstream filters or proxies outgoing DNS requests).

Edit /etc/dhcp/dhclient.conf

Add the following line, or in many cases you can find the line is there but just commented out with a #.  Uncomment it or add the line like below:

prepend domain-name-servers 127.0.0.1;

Need more DNS servers just add a comma after:

prepend domain-name-servers 127.0.0.1, 192.168.10.80;

Now when checking /etc/resolv.conf, you should see that the first DNS server is 127.0.0.1 and then whatever your ISP or LAN provided you with.

What if you want to define the ONLY DNS servers and not use anything from the ISP/DHCP Server

Instead of the "prepend" option, we can use "supersede" which will completely ignore all the DNS servers provided from the DHCP server. 

Add the following line, or in many cases you can find the line is there but just commented out with a #.  Uncomment it or add the line like below:

supersede domain-name-servers 127.0.0.1;

Just like the prepend option you can specify multiple DNS servers like this:

supersede domain-name-servers 127.0.0.1, 192.168.10.80;

Of course, keep in mind that if your local DNS fails or is not working or starting for any reason, that DNS requests will fail, which will generally cause many things to break.  It is probably wise to use a secondary, trusted DNS server on your LAN or on the public internet if possible.

Don't Forget To Disable systemd-resolved

On most GUI Linux's such as Ubuntu/Mint etc.. you will have systemd-resolved which has it's own listener on port 53 which forwards requests to the actual DNS server (eg. your ISP's).  This will conflict with your local listener (eg. bind/named).  If you want to use your localhost DNS successfully remember to disable systemd-resolved and stop the service or you will have broken DNS.

systemctl disable systemd-resolved

#remember to stop it too!

systemctl stop systemd-resolved

 


Tags:

linux, dhcp, dhclient, mint, redhat, ubuntu, debian, domain, dns, server, isps, bind, isp, supplied, servers, announced, via, reliable, filtering, upstream, filters, proxies, outgoing, requests, edit, etc, conf, commented, uncomment, prepend, resolv, lan, provided,

Latest Articles

  • How To Force Flash an AMD Instinct GPU To Another Model Using Debian Ubuntu Mint Linux
  • How To compile ollama from source to use unsupported AMD GPU with rocm in Ubuntu Debian
  • QEMU KVM Virtio GPU Windows Cannot Select 1080P
  • Linux Gnome Desktop Ubuntu Mint Debian Gets Slower After Weeks
  • Firefox How to Save Full Page As Screenshot/PDF
  • Nvidia Datacenter Driver Tesla Slow nvidia-smi response and high utilization with 0 usage
  • ffmpeg how to normalize / increase the volume of your audio
  • kdenlive audio blips pops cracks artifacts solution fix
  • haproxy / nginx certbot SSL issues
  • nginx how to see the real IP when behind a CDN
  • Docker how to find real container child process ID
  • Alibaba Aliyun how to reset password solution 'Setup does not meet the requirements, please resetting'
  • RTL88X Series 80Mhz hostapd mode for Linux Debian Kali
  • How To Deploy Your Own Mastodon Server in Docker
  • ffmpeg burning subtitles in non-English errors [Parsed_subtitles_0 @ 0x561d3a0b3b80] Glyph 0x6709 not found, selecting one more font for (Sans, 700, 0)
  • rsyslog in container config
  • Interesting Whisper AI CPU vs GPU Test
  • How to install pytorch with cuda capability for AI acceleration with Nvidia Tesla etc.. GPUs
  • How to Spider the web archive.org to recover your old website/webpage
  • Debian 10 /etc/apt/sources.list