To go along with the relay MLAPI.Relay, I have now released MLAPI.Puncher. A free and open source NAT punchthrough implementation. It's written in less than 500 lines, making it easy to work with. All the core implementation is in 2 files, one for the server and one for the client. It supports all cone types. FullCone, Address Restricted Cone, Port Restricted Cone and Symmetric Cone (if the symmetric cone has sequential port assignment). It's dependency free and should run everywhere with socket access. (For unity, everywhere except WebGL). Usage is super easy, the API is just a few method calls. If you want to check it out or just read more about it. Check the GitHub page out.