[GH-ISSUE #5321] Constant DNS Query Spam #10335

Closed
opened 2026-08-05 01:25:29 -04:00 by saavagebueno · 1 comment
Owner

Originally created by @BLACK4585 on GitHub (Feb 14, 2026).
Original GitHub issue: https://github.com/netbirdio/netbird/issues/5321

I have set up Netbird on selfhosted hardware and adapted my whole homelab + servers/vps to use it instead of Tailscale.
For ad blocking reasons, I have enabled one private DNS Nameserver, pointing to my PiHole on my homelab in my private network. The IP is set to my local address, not Netbird adress, as the PiHole has another local IP than the Netbird client. The DNS server is only distributed to my private devices (latop, phone, etc).
My local server subnet is attached to the Netbird network using the networks feature. The router is the Netbird client in my homelab. I am connected to this "Server Subnet" Network even when at home on my private devices. When connecting to my Netbird net, I get a warning telling my my DNS server is not reachable. Which is odd because everything is working fine regarding name resolution on my client. I'm wondering if this could be the catch here.
If you need more info or a debug bundle, let me know!

I noticed a lot of DNS queries to my Netbird management URL in my PiHole. And also a very weird request.
A lot of queries go to netbird.domain.tld and closely behind follow many requests to netbird.domain.tld.domain.tld. Some kind of weird URL chaining seems to happen there, maybe this is a config issue which I don't have an idea of. Also, nothing is reachable under this URL.

I am now wondering what all those requests are and who is making them. They all come from the Netbird Client IP in my homelab.

My second question is the following, maybe this has something to do with the problem above:
I have two subnets at home. One for the servers and one for private devices. When I now connect to any server IP, I can see that my PC is using the Netbird route and not the direct way. I checked this using a traceroute. It shows
a) that the first hop is devicename.netbird.selfhosted and not my gateway
and
b) that the time, the connection is taking is 30ms, which is far longer than running traceroute with Netbird disconnected.
This means that Netbird is not finding or using the direct rout which would be available.
Is this the hardcoded behaviour while being connected to a Netbird Network which provides this local IP or is this an issue I can hunt down?

I hope it is okay asking here and that my problems are understandable with the text I wrote.
Thank you in advance!

Originally created by @BLACK4585 on GitHub (Feb 14, 2026). Original GitHub issue: https://github.com/netbirdio/netbird/issues/5321 I have set up Netbird on selfhosted hardware and adapted my whole homelab + servers/vps to use it instead of Tailscale. For ad blocking reasons, I have enabled one private DNS Nameserver, pointing to my PiHole on my homelab in my private network. The IP is set to my local address, not Netbird adress, as the PiHole has another local IP than the Netbird client. The DNS server is only distributed to my private devices (latop, phone, etc). My local server subnet is attached to the Netbird network using the networks feature. The router is the Netbird client in my homelab. I am connected to this "Server Subnet" Network even when at home on my private devices. When connecting to my Netbird net, I get a warning telling my my DNS server is not reachable. Which is odd because everything is working fine regarding name resolution on my client. I'm wondering if this could be the catch here. If you need more info or a debug bundle, let me know! I noticed a lot of DNS queries to my Netbird management URL in my PiHole. And also a very weird request. A lot of queries go to `netbird.domain.tld` and closely behind follow many requests to `netbird.domain.tld.domain.tld`. Some kind of weird URL chaining seems to happen there, maybe this is a config issue which I don't have an idea of. Also, nothing is reachable under this URL. I am now wondering what all those requests are and who is making them. They all come from the Netbird Client IP in my homelab. My second question is the following, maybe this has something to do with the problem above: I have two subnets at home. One for the servers and one for private devices. When I now connect to any server IP, I can see that my PC is using the Netbird route and not the direct way. I checked this using a traceroute. It shows a) that the first hop is devicename.netbird.selfhosted and not my gateway and b) that the time, the connection is taking is 30ms, which is far longer than running traceroute with Netbird disconnected. This means that Netbird is not finding or using the direct rout which would be available. Is this the hardcoded behaviour while being connected to a Netbird Network which provides this local IP or is this an issue I can hunt down? I hope it is okay asking here and that my problems are understandable with the text I wrote. Thank you in advance!
Author
Owner

@BLACK4585 commented on GitHub (Feb 24, 2026):

I found the problem. The netbird client is running inside an LXC.

What the problem was

Proxmox VE sets a search domain for every LXC by default (in my case domain.tld, because I set the global search domain to this.)
Netbird prepends its own search domain (netbird.domain.tld) to the front of /etc/resolv.conf

So I ended up with:

search netbird.domain.tld domain.tld

The problem is: when any program uses netbird.domain.tld as an address (without the trailing dot), the DNS resolver thinks "okay, that's not a complete name, I need to append the search domains". And then it tries both:

netbird.domain.tld + domain.tld = netbird.domain.tld.domain.tld

Later I changed the search domain in the LXC to pve, and then I got queries for netbird.domain.de.pve instead.

The solution

I just removed the search domain in the LXC completely. Now I only have search netbird.domain.de in resolv.conf and the spam is gone.

Netbird could actually handle this better by always querying its internal names with a trailing dot (as a proper FQDN), then the search domains wouldn't get appended at all. But until that happens, the only fix is: don't leave any additional search domains in the system that Netbird doesn't control.

<!-- gh-comment-id:3954609100 --> @BLACK4585 commented on GitHub (Feb 24, 2026): I found the problem. The netbird client is running inside an LXC. ### What the problem was Proxmox VE sets a search domain for every LXC by default (in my case domain.tld, because I set the global search domain to this.) Netbird prepends its own search domain (netbird.domain.tld) to the front of /etc/resolv.conf So I ended up with: search netbird.domain.tld domain.tld The problem is: when any program uses netbird.domain.tld as an address (without the trailing dot), the DNS resolver thinks "okay, that's not a complete name, I need to append the search domains". And then it tries both: netbird.domain.tld + domain.tld = netbird.domain.tld.domain.tld Later I changed the search domain in the LXC to pve, and then I got queries for netbird.domain.de.pve instead. ### The solution I just removed the search domain in the LXC completely. Now I only have search netbird.domain.de in resolv.conf and the spam is gone. Netbird could actually handle this better by always querying its internal names with a trailing dot (as a proper FQDN), then the search domains wouldn't get appended at all. But until that happens, the only fix is: don't leave any additional search domains in the system that Netbird doesn't control.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#10335