C# 如何实现 P2P 穿 NAT ?

在网上找了很多,看得不是很懂
需要具体的代码来理解
可惜找不到啊

问问有没有人懂这方面的?

阅读 5.1k
1 个回答

NAT很好穿越的,麻烦的是有些NAT跟FireWall是集成的,而firewall是有访问规则限制的,也就是说如果外网想回包给内网,必须是内网先主动发一个包给外网。这部分有个RFC 规范称为ICE的,见这篇文章
http://tools.ietf.org/rfc/rfc6336.txt
注意,ICE不是一个单一的规范,而是STUN+Turn方案的总称。
总之,NAT打洞是一个过程,跟C#或是C++或是Python、Java无关。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
Microsoft
子站问答
访问
宣传栏