以下是场景:客户端计算机已通过VPN(Cisco VPN客户端)连接到“工作网络”。工作网络托管具有带nettcp绑定的WCF服务的计算机。客户端尝试连接到此服务并获取异常,如下所示:
无法连接 的net.tcp:// workMachine:2010 / SomeService。 连接尝试持续了一段时间 时间跨度00:00:01.3180754。 TCP 错误代码10061:没有连接可以 是因为目标机器 积极拒绝工作机器:2010年。
我尝试的事情:
以上都失败了,没有用。 有没有人遇到过类似的问题?
客户端计算机在Windows 7上
WCF服务的SecurityMode设置为NONE - 因此不应该是一个问题。
任何见解都会有所帮助
答案 0 :(得分:2)
您可能需要通过代理对象显式提供客户端凭据。
假设下面代码中的代理对象实现了一个ClientBase接口。
proxy.ClientCredentials.Windows.ClientCredential.UserName = "clientaccount";
proxy.ClientCredentials.Windows.ClientCredential.Password = "S3cr3t1337Pwd";
答案 1 :(得分:1)
您是否 - 仅出于测试目的 - 使用HTTP端点在同一台计算机上公开相同的服务,并尝试从VPN客户端连接到该服务?
NetTcp是公司防火墙背后的绝佳选择 - 只是不知道Cisco VPN客户端如何在这里引起麻烦,这在使用基于http的协议时可能不会出现。现在只是一个疯狂的猜测,但如果你没有别的东西继续下去,试一试!
马克
答案 2 :(得分:1)
另一个想法是协助调试这类问题,使用CMD执行“netstat -a”(你可以附加-o开关并找到相关的进程ID)并查看有问题的端口当前是否打开,如果不是,您可能会遇到SMSvcHost.exe问题(这是用于管理IIS托管的TCP服务的Windows进程)。
之前我遇到过这个问题并通过重新启动以下服务来纠正它(显然,如果你正在处理一个实时生产系统,你需要仔细考虑这个问题):
NetTcpActivator(Net.Tcp侦听适配器) NetTcpPortSharing(Net.Tcp端口共享服务)
可能相关:
NetMsmqActivator(Net。管道侦听器适配器) NetPipeActivator(网络管道监听适配器)
希望这有助于某人!
学家