Here is the refined, step-by-step guide to making your local domains work remotely over Netbird.
The Goal
We will configure Split DNS. This tells Netbird: "When I try to access anything.mydomain.com, do not ask the public internet (Google). Instead, send that question through the VPN tunnel to my home Pi-hole."
Prerequisites
Netbird Admin Access: You need access to the Netbird Dashboard.
Local DNS Server IP: You need the internal IP address of your Pi-hole (e.g.,
192.168.1.x).Netbird Client: The device you are connecting from (e.g., your laptop or phone) must have the Netbird app installed and connected.
Step 1: Identify your DNS Server IP
First, determine which IP address Netbird should target.
If you have Subnet Routes enabled in Netbird (meaning you can already ping
192.168.1.xaddresses remotely), use your Pi-hole's Local LAN IP (e.g.,192.168.1.x).If you do not have subnet routes, you must install the Netbird client on your Pi-hole host and use its specific Netbird IP (e.g.,
100.x.x.x).
Recommendation: Since you can already access services via IPv4, use the Local LAN IP.
Step 2: Add the Nameserver in Netbird
Log in to the Netbird Admin Panel.
Navigate to the DNS tab in the left sidebar.
Click the Add Nameserver button.
Step 3: Configure the Nameserver
Fill in the popup form with the following details:
Name: Give it a recognizable name (e.g.,
Home Pi-hole).Description: (Optional) "Resolves internal homelab domains."
Nameserver IP: Enter the IP from Step 1 (e.g.,
192.168.1.x).Port: Leave this as
53(unless you changed your Pi-hole port).Distribution Groups: Select All (or the specific group containing your remote devices).
The Critical Part:
Match Domains: Enter your root domain name.
Example: If your services are
jellyfin.batman.comandgrafana.batman.com, just enterbatman.com.Do not add subdomains. This one entry covers everything.
Click Save.
Step 4: Refresh the Client
DNS settings can take a moment to propagate.
On your remote device (Laptop/Phone), open the Netbird app.
Disconnect and Reconnect.
Wait about 10-15 seconds.
Step 5: Verification (Do this before opening the browser)
Before you try to load the dashboard, check if your computer is actually finding the address.
On Windows:
Open Command Prompt or PowerShell and type:
nslookup jellyfin.yourdomain.com
On Mac/Linux:
Open Terminal and type:
nslookup jellyfin.yourdomain.com
What to look for:
Server: Should be the IP of your Pi-hole (or a Netbird relay address).
Address: This MUST return your local LAN IP (e.g.,
192.168.1.12).- If it says "Non-existent domain" or returns a public internet IP, the settings haven't applied yet.
Step 6: The Result
Once nslookup returns the correct local IP:
Open your browser.
Type
https://jellyfin.yourdomain.com.Success:
The request goes through Netbird.
Nginx Proxy Manager receives the Domain Name.
Authelia works because the domain matches the cookie.
You are logged in securely.