在具有多个NIC的计算机上运行时,.NET Remoting Client的问题

时间:2009-07-21 02:29:53

标签: .net remoting nic

我构建了一个.NET Remoting Client,它在单个NIC的机器上运行得非常好,并且通过远程事件接收了大量的测试消息。

但是当添加额外的NIC时,客户端似乎能够连接远程服务器,但测试消息不再能够到达。

从调试开始,服务器端确实触发了事件,但客户端没有得到。从谷歌检查并找到类似的问题报告: http://www.eggheadcafe.com/community/aspnet/2/10061570/reply.aspx

我只是想知道是否有任何解决方案?

提前致谢!

2 个答案:

答案 0 :(得分:1)

这也是我的一些问题。

此问题的本质是客户端如何在服务器上注册事件处理程序。添加事件处理程序时,客户端正在发送“绑定”地址的IP地址。这是TcpChannel类中的静态非公共字段(谢谢反射器)。您需要将客户端显式绑定到服务器能够访问的IP地址。客户端的配置文件应该是这样的。

<channel ref="tcp" port="0" bindTo="your.ip.address.here" >

答案 1 :(得分:1)

我在使用.Net Remoting c#客户端服务器程序时遇到问题 当客户端和客户端之间有路由器时,彼此连接 服务器。

在客户端设置

useIpAddress = false

示例:

  <system.runtime.remoting>
    <application name="Client">
      <channels>
        <channel ref="tcp" port="0" useIpAddress="false">
          <clientProviders>

http://msdn.microsoft.com/en-us/library/system.runtime.remoting.channels.tcp.tcpchannel(v=vs.71).aspx