在Windows Server 2008 R2上运行MSDN PeerChannel "SecureChat"的方法

55
我只能在以下基本家庭网络场景中使PeerChannel SecureChat的SDK示例正常工作:
  • 在同一台机器上运行的实例之间本地运行,或
  • 在Windows 7机器之间运行

我无法在我的Windows Server 2008 R2和任何其他机器之间使其工作(没有抛出异常,但节点从未找到对方,因此不会“在线”)。 我可以在所有机器之间ping IPv6地址。该可执行文件具有防火墙例外规则,但我也尝试完全禁用Windows 2008防火墙。 PRNP服务正在运行。

  1. 有可能让它工作吗? 怎么做?

  2. 它在你的2008机器上工作吗?

我最好的猜测是:我注意到在Windows 7机器上,“Peer Networking Grouping”和“Peer Networking Identity Manager”服务都存在。这里和在线上,“Peer Networking Grouping”服务的描述明确提到启用多方会话,但与家庭组有关。这个服务在Windows Server机器中缺失。
因此,我怀疑缺少的服务是SecureChat示例不能在Windows Server机器上工作的原因,但我不明白为什么Microsoft会禁止Peer Channel在Server产品上运行。这可能是原因吗?
谢谢!

对于那些尝试在win2k8机器上运行示例并分享运行/未运行的评论者进行点赞。对于发布导致根本原因的详细信息的答案进行回复。 - Jason Kleban
1
服务器通常配置为提供数据服务。而点对点聊天则旨在让网络连接中的两个组件积极参与。由于您从不指望有人坐在服务器上与某人聊天,因此这些服务从未被加载。甚至不确定它们是否在服务器上提供! - SASS_Shooter
@SASS_Shooter - 当然,聊天不是我们的目标。在Windows Server上,对等网格用于分布式计算肯定是一个有效的用例。此外,所有服务似乎都已经存在并运行 - 缺少什么? - Jason Kleban
IsPnrpAvailable返回true吗? - MaximR
实际上,这个答案与Greg的几乎相同,但是我想提一下并问一下你是否尝试过这些方法:http://www.die-rooter.de/ITworks/archives/17-WCF-Peer-To-Peer-PNRP-under-Windows-Server-2008.html - ben.hildebrand
2个回答

1

尝试在服务器上启用以下服务:

  1. Peer Name Resolution Server(通过服务器管理安装)
  2. Peer Discovery Server(通过服务器管理安装)
  3. 简单服务发现协议服务(SSDP服务)

然后,确保修改防火墙规则;默认情况下,它们会阻止IPv4 / IPv6 Teredo隧道驱动程序。需要支持IPv6,因为PNRP需要它。

此外,您应该能够以两种方式配置您的服务:通过Internet Information Systems(IIS)或作为Windows服务。最好使用IIS,您可以在这里找到有关如何配置它的文章:托管和使用WCF服务

这些是我能想到的一些提示,希望对您有所帮助。


0

这个MSDN页面提到了Windows实现PNRP的一个微妙细节:

任何两个运行相同版本的PNRP的客户端都可以使用此协议相互定位...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接