我构建了一个 .NET Remoting Client,它在单个 NIC 的机器上运行良好,并且通过远程事件接收到大量测试消息。
但是当添加了额外的网卡后,客户端似乎可以连接远程服务器,但测试消息却无法到达。
从调试来看,服务器端确实触发了事件,但客户端没有得到。从google查了一下,发现有类似的问题报告: http ://www.eggheadcafe.com/community/aspnet/2/10061570/reply.aspx
我只是想知道是否有任何解决方案?
提前致谢!
我构建了一个 .NET Remoting Client,它在单个 NIC 的机器上运行良好,并且通过远程事件接收到大量测试消息。
但是当添加了额外的网卡后,客户端似乎可以连接远程服务器,但测试消息却无法到达。
从调试来看,服务器端确实触发了事件,但客户端没有得到。从google查了一下,发现有类似的问题报告: http ://www.eggheadcafe.com/community/aspnet/2/10061570/reply.aspx
我只是想知道是否有任何解决方案?
提前致谢!
这对我来说也是一些问题。
这个问题的本质是客户端如何在服务器上注册事件处理程序。添加事件处理程序时,客户端正在发送“绑定”地址的 IP 地址。这是 TcpChannel 类中的静态非公共字段(感谢反射器)。您需要将客户端显式绑定到服务器能够访问的 IP 地址。客户端的配置文件应该是这样的。
<channel ref="tcp" port="0" bindTo="your.ip.address.here" >
当客户端和服务器之间有路由器时,我无法使我的 .Net Remoting c# 客户端-服务器程序正常工作并相互连接。
在客户端设置
使用IP地址=假
例子:
<system.runtime.remoting>
<application name="Client">
<channels>
<channel ref="tcp" port="0" useIpAddress="false">
<clientProviders>