Does NetBird need a public domain?
Yes for the self-hosted setup. The server has to be reachable on TCP 80 and 443 and UDP 3478, so the quickstart script issues a Let's Encrypt certificate for a public domain and peers connect to it before setting up a direct tunnel. You can avoid that with the Cloud version, which you do not host.