Somewhere along I got obsessed with UDP punchthrough, and started doing some tests with Lidgren, I'm hoping to integrate this into my Unity projects but first I need to put this through it's paces. Anyone have ideas on how to test this sort of thing? I managed to get my clients connecting to servers using a master-server on a public IP... but I've been running my clients and servers from iBurst and 3G accounts. I have no idea if these are running from behing a NAT though... Are typical work environments more likely to use NAT? Also, the more I do this, the more I wonder how necessary UDP punchthrough really is... It seems to me that you would mostly need it if your players want to host game themselves, and not so much if you're hosting your own servers on public IPs.
is this what you looking for ? http://unity3d.com/support/documentation/ScriptReference/Network.TestConnection.html
NAT is today in the broadband age a near granted thing. the only ones that are potentially not behind NAT are cable users where routers are less common than bridges, but even they often have a router to have more than 1-2 systems behind their broadband
Yes, that seems to be correct. I spoke to a friend who worked for a mobile provider for a while and he said the same thing. I was just suspicious because it worked more easily than I expected, but then I don't think I've tested it against enough NAT environments... building in proxy support may be a little more complicated, and will probably be a little more difficult to test for.