First of all, is there any developer or contributor willing to develop and maintain this feature? I'm not familiar with this technology. But on article that explain how NAT translation (hole punching) works, they claim TCP based one is more complex and i expect TCP based one is less popular.
We’ll be discussing these techniques generically, using Tailscale and others for examples where appropriate. Let’s say you’re making your own protocol and that you want NAT traversal. You need two things.
First, the protocol should be based on UDP. You can do NAT traversal with TCP, but it adds another layer of complexity to an already quite complex problem, and may even require kernel customizations depending on how deep you want to go. We’re going to focus on UDP for the rest of this article.