Mobile IOS not working with self hosted NetBird
Hi there I have a problem to trying to Connect my iphone to a server with NetBird.
Actually I use the self hosted version installed on docker with their script. The connection work perfectly with a Windows computer but not on iphone and not on iPad using the iOS app
That’s really strange because the app say that it is connected to the server but it’s actually impossible to reach the host or the web services


7 Replies
Here is my client logs
https://pastebin.com/3hPMucL8
Pastebin
NetBird IOS logs - Pastebin.com
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
I guess would need more information about the setup (Where is the server hosted? Is IPv6 enabled on everything? Where are the devices and server relative to eachother?)
@VULGA
What about your ACL's?
Do you allow connections from the 100.64 subnet
And does netbird allow you to connect to the servers web endpoints in the first place
I'm sorry I will explain with more information
basically I rend a VPS AMD CPX11 server into Hetzner Cloud. I have a private ipv4. (also ipv6 but I don't use it )
I've installed Netbird with the installation script directly from the documentation. My Host system is build with Debian 12.
https://docs.netbird.io/selfhosted/selfhosted-quickstart
For the firewall I use the traditional UFW. I also opened every port mentioned on the netbird doc
on TCP ports 80, 443, 33073, 10000 and 33080; and UDP ports: 3478, 49152-65535.
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
33073/tcp ALLOW Anywhere
10000/tcp ALLOW Anywhere
33080/tcp ALLOW Anywhere
3478/udp ALLOW Anywhere
49152:65535/udp ALLOW Anywhere
80/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
33073/tcp (v6) ALLOW Anywhere (v6)
10000/tcp (v6) ALLOW Anywhere (v6)
33080/tcp (v6) ALLOW Anywhere (v6)
3478/udp (v6) ALLOW Anywhere (v6)
49152:65535/udp (v6) ALLOW Anywhere (v6)
About ACL. I have a basic configuration allow with every port the group where is placed my iphone, my computer and my Ipad. They can connect to my other one server hosted in OVH with my web infrastructure on docker.
I'll quickly rule out any doubt that my web infrastructure is surely not the cause of this problem. I was using it with tailscale without any problems and I've only been on netbird for 2 days.
currently i can connect via the netbird client on windows without any problem. i've just tested it now with another windows computer on another network with another ip and it works perfectly.
for some reason i don't know whether it's an iphone, ipad etc. in short anything that runs on iOS. the application doesn't seem to want to work. it accepts the connection without a problem. i'm able to see that i can connect to my web server from the host but no way when i type in the domain name. it's as if i didn't have netbird. i should point out that i've already tried with the ip of the web server machine without any result.
I have same problem
with android and ios. Logs from today investigion:
05-14 14:54:04.812 26048 26211 E GoLog : [TRAC] client/internal/dns/upstream.go:129 took 124.51473ms to query the upstream 8.8.8.8:53
05-14 14:54:04.812 26048 26211 E GoLog : [TRAC] client/internal/dns/upstream.go:129 took 113.039836ms to query the upstream 8.8.8.8:53
05-14 14:54:04.812 26048 26211 E GoLog : [TRAC] client/internal/dns/upstream.go:129 took 124.048991ms to query the upstream 8.8.8.8:53
05-14 14:54:04.813 26048 26211 E GoLog : [TRAC] client/internal/dns/upstream.go:129 took 123.937419ms to query the upstream 8.8.8.8:53
05-14 14:54:04.825 26048 26328 E GoLog : [TRAC] client/internal/dns/upstream.go:129 took 135.978923ms to query the upstream 8.8.8.8:53
05-14 14:54:04.835 26048 26328 E GoLog : [TRAC] client/internal/dns/upstream.go:129 took 134.866089ms to query the upstream 8.8.8.8:53
05-14 14:54:30.224 26048 26328 E GoLog : [TRAC] client/firewall/uspfilter/uspfilter.go:269 couldn't decode layer, err: Invalid (too small) IP header length (0 < 5)
05-14 14:55:19.445 26048 26328 E GoLog : [DEBG] client/internal/peer/guard/ice_monitor.go:69 Gathering ICE candidates
05-14 14:55:19.459 26048 26328 E GoLog : [DEBG] client/internal/stdnet/filter.go:31 trying to create a wgctrl client failed with: socket: permission denied
05-14 14:55:19.459 26048 26328 E GoLog : [DEBG] client/internal/stdnet/filter.go:31 trying to create a wgctrl client failed with: socket: permission denied
05-14 14:55:19.460 26048 26328 E GoLog : [DEBG] client/internal/stdnet/filter.go:31 trying to create a wgctrl client failed with: socket: permission denied
05-14 14:55:19.460 26048 26328 E GoLog : [TRAC] client/internal/stdnet/filter.go:24 ignoring interface tun0 - it is not allowed