<div dir="ltr">Hi,<div><br></div><div>My scenario is as follows: We are creating a multiplayer video game in the Unity3D engine (C# language). I have successfully setup UPnP Port Mapped NAT Traversal, which works for most users (60-75%).</div>
<div>I would like to see if we can achieve 100% successful NAT Traversal for our P2P multiplayer component with the additional use of STUN/TURN.</div><div><br></div><div>I believe I have a pretty good handle on how UDP-based STUN/TURN works however I feel a little vague on the exact implementation details as well as some finer details.</div>
<div><br></div><div>1. If I used UDP STUN to bash open some ports between two peers, what will typically keep the NAT port map in place on the users routers? Do they typically wait for a FIN or RST to flow over the open port before closing it?</div>
<div>2. Would this work: I use libnice to open UDP ports between two peers with the use of a rendezvous server. I then kill the libnice process/instance and for the peer that is running the multiplayer server I tell it to listen on that port for incoming connections. Presumably the remote peer should be able to connect through to the listening game server instance with the previously opened ports from libnice. Would this be correct?</div>
<div>3. Anyone know of any active C# wrappers for libnice? We can do it ourselves, but just curious.</div><div><br></div><div>Regards,</div><div>Scott Richmond.</div></div>