我正在使用 PNRP 协议在 .Net 中开发 P2P 应用程序。我已经检查了大量有关 PRNP 和 P2P 的材料(SO、Microsoft 博客等)。但仍然无法解决云的问题。并且找不到正确设置云和对等名称解析的确切分步说明。一切都在本地机器上完美运行(注册和解析名称都可以)。但是全局和本地的云状态总是单独的(如果我做了一些更改,有时会变成虚拟和同步,但最终是单独的)。结果,在一台机器上注册的对等名称在本地网络中的另一台机器上不可见。支持 IPv6。Teredo 似乎正在工作(否则全球云没有出现):
Scope Id Addr State Name ----- ----- ----- ---------------- ----- 3 9 1 Alone LinkLocal_ff00::%9/8 3 5 1 Virtual LinkLocal_ff00::%5/8 1 0 1 Alone Global_
我尝试的操作(Win 10 + Win 7):
• 禁用所有网络的防火墙。
• 打开(状态:运行)并设置为自动:
○ DNS Client
○ Function Discovery Resource Publication
○ Function Discovery Provider Host
○ SSDP Discovery
○ UPnP Device Host
○ Peer Name Resolution Protocol
○ Peer Networking Grouping
○ Peer Networking Identity Manager
○ PNRP Machine Name Publication Service
• 执行此操作:https ://technet.microsoft.com/en-us/library/dd349394(v=ws.10).aspxLocal
• 在此博客上阅读并发布相同内容: https ://blogs.msdn.microsoft.com/p2p/2007/07/24/pnrp-debugging-guide-part-1/
• 转到组策略编辑器 --> 管理模板 --> Microsoft 对等网络服务 --> 全球云:
○ Turn Off Multicast Bootstrap --> disabled
○ Turn Off PNRP cloud creation --> disabled
○ Set PNRP cloud to resolve only --> disabled
○ Set the Seed Server --> Enabled (leaved empty) and for Linc Local --> Not configured.
但仍然看不到本地网络中其他机器的注册名称并解析对等名称。所有云状态都是单独的。有什么建议么?
先感谢您,
PS ping种子Global_failed,但是应该不会影响本地Cloud吧?
PPS 端口 3450 和 1900 已打开并作为防火墙规则添加。