Files
local-dns-docker/README.md
2025-03-29 08:00:19 -07:00

1.7 KiB

local-dns-docker

When I started this I had a tailscale server that wasn't able to resolve .local addresses. I since changed to .internal with the adguard dns doing rewrites and sending it all back to galaxy (192.168.1.16). If you want ot send somewhere else you need to deal with adguard rewrites. Long story short, I probably don't need this split dns server anymore since I will be using .internal.

https://www.reddit.com/r/Tailscale/comments/1dql8a6/use_the_same_domain_name_on_home_network_and_on/

What everybody has already said, but also use the tailnet IP of your DNS server as a global nameserver. I'll post my working steps:

  • Create a subnet router on your DNS host.
  1. On the DNS host you need to set --accept-dns=false
  2. advertise routes
  3. https://tailscale.com/kb/1019/subnets

sudo tailscale up --accept-dns=false --advertise-routes=192.168.x.x/x

  • In tailscale Machines edit new host and allow new route(s)
  • In tailscale DNS, create a global namerserver:
  1. set it to the tailnet IP of your DNS server
  2. you can set split DNS here or you can just use your DNS for everything
  3. if u have android clients, check the slider to ignore local DNS

https://tailscale.com/kb/1019/subnets?tab=linux#connect-to-tailscale-as-a-subnet-router

There is also a procedure to initially register the device with Tailscale server before this whole thing can work. Maybe I will document later. Not necessary as long as using the credentials in /DATA/AppData/tailscale/ so don't delete them.

How to operate the container

sudo docker compose down

(make whatever changes)

sudo docker compose build

sudo docker compose up -d