I am trying to use tailscale for personal project as mesh overlay network, but it is annoying. When you create images in packer, you need to remove state, otherwise nodes would fight over the same IP when created from the same snapshot. AuthKey expiration for infra is 90 making this another secret that you need to manually rotate. When running "tailscale up" with --ssh it hangs ssh connection making Ansible scripts brittle. For non-tech use, the android app is pretty useless. Taildrop is weird, I would like to have NFS over tailnet that you can easily share with others.
It seems that everyone wants to build VPN solution to sell to enterprises. There is probably more profit than building opensource mesh overlay :(
Given all that, I think that narrowlink architecture is flawed and worse than tailscale. Narrowlink gateway is both single point of failure and performance bottleneck (looks a bit like Cisco AnyConnect). Wireguard is very nice and modern protocol, narrowlink would need to implement own custom alternative over https. It would be interesting to see how both perform in very large topologies.