Technitium as Primary DNS and Router DHCP Setup
This tutorial ties everything together: Technitium on your VM becomes the primary DNS for your network, and your router is configured so that every device that gets an IP via DHCP also gets Technitium as its DNS server. No need to set DNS on each VM or device by hand.
The Big Picture
flowchart TB
subgraph Router
DHCP[DHCP server]
DNS_Setting[Primary DNS = 172.100.12.112]
end
subgraph VM
Tech[Technitium DNS - 172.100.12.112]
end
Client1[Devices and VMs]
Client2[Get IP + DNS via DHCP]
DHCP --> Client1
DNS_Setting --> Client2
Client2 --> Tech
Tech --> Internet[Internet DNS / Cache]
- Technitium runs on the VM at 172.100.12.112 (from Create VM and Technitium in Docker).
- Router: Primary DNS is set to 172.100.12.112. The router’s DHCP server tells clients to use that DNS.
- Result: All DHCP clients use Technitium for DNS without extra configuration.
Two Stages
| Stage | What you do |
|---|---|
| 1. Primary DNS on the VM | Technitium is already the DNS server on the VM (port 53). No extra step if you followed the Technitium Docker tutorial. |
| 2. Router changes | On your router: set Primary DNS to 172.100.12.112 (your Technitium VM). Optional: set a secondary DNS (e.g. router itself or another DNS) for redundancy. |
Stage 1: Confirm Technitium is Your Primary DNS on the VM
You already did this when you:
- Created the VM 112-Technitium-DNS_Server with static IP 172.100.12.112.
- Installed Docker and Technitium and started Technitium with port 53 exposed.
So on the VM, Technitium is the service listening on 53. The VM itself can use 127.0.0.1 or 172.100.12.112 as DNS; other machines will use 172.100.12.112.
Stage 2: Router Changes (Primary DNS = Technitium)
Here we update the router so that its primary DNS is your Technitium server. Then the router’s DHCP will hand out this DNS to all clients.
Step 1: Log in to Your Router
- Open the router’s admin page (e.g.
http://192.168.1.1orhttp://172.100.12.1). - Log in with your admin credentials.
Step 2: Find DNS / WAN or LAN DNS Settings
Different routers use different names. Look for one of:
- WAN / Internet: “Primary DNS”, “DNS server 1”, “Use custom DNS”.
- LAN / DHCP: “DNS server handed out to clients”, “DHCP options”, “DNS for DHCP”.
You want to set the DNS that the router uses and/or gives to DHCP clients to 172.100.12.112.
Step 3: Set Primary DNS to Technitium
- Primary DNS (or DNS 1):
172.100.12.112 - Secondary DNS (optional): Your router’s IP (e.g.
172.100.12.1) or another DNS (e.g.8.8.8.8) for fallback if the VM is down.
Save and apply. The router may restart its DHCP server; clients may need to renew (reboot or ipconfig /renew / dhclient) to get the new DNS.
Step 4: Confirm DHCP Clients Get the New DNS
On a client that gets IP from the router:
- Windows:
ipconfig /all— check “DNS Servers”. - Linux:
cat /etc/resolv.conforresolvectl status— should show 172.100.12.112 (or the router if the router forwards, depending on setup).
If the router is set to hand out 172.100.12.112 as DNS, you should see that on the client.
Optional: Router as Secondary DNS
Some setups use:
- Primary DNS: 172.100.12.112 (Technitium).
- Secondary DNS: Router (172.100.12.1) or 8.8.8.8.
Then if the Technitium VM is offline, clients can still resolve via the secondary. Configure this in the same router DNS/DHCP section if your device supports two DNS servers.
Summary
| Item | Value |
|---|---|
| Technitium VM | 112-Technitium-DNS_Server @ 172.100.12.112 |
| Router primary DNS | 172.100.12.112 |
| DHCP | Router gives clients IP + DNS; clients use Technitium for DNS |
Full Tutorial Chain
| # | Tutorial | Link |
|---|---|---|
| 1 | Create VM 112-Technitium-DNS_Server | Create VM |
| 2 | Docker, Docker Compose & utilities | Docker and utilities |
| 3 | Technitium DNS in Docker | Technitium in Docker |
| 4 | Primary DNS and router | You are here |
After this, all devices that get DHCP from your router will use Technitium at 172.100.12.112 for DNS. For more on Technitium, see the official site and blogs/tutorials.