解决方案 »

  1.   

    首先你要确定此服务器是否应该在对方可访问的网段内。如果不在,那么就需要在两个网段之“外”另找一个服务器。其次,启动服务器的IP应该使用 Any(或者说 0.0.0.0),而不是本地 IP。我在另一个帖子中贴出了两段Server和Client代码,只要监听其1、2个事件就行了,不需要自己写tcp代码。http://bbs.csdn.net/topics/390987992
      

  2.   

    Socket通信需要服务器地址,若绑定192.168或172.16等局域网地址当前只能局域网才能访问,若绑定外网IP只能外网访问,因此一般来说要绑定Any(0.0.0.0)或127.0.0.1才能通吃。
    而 IPAddress ipa = ips[1];    这个代码得到的IP有可能是局域网地址。
      

  3.   

    绑定0.0.0.0就可以了.
    如果你朋友是从外网连接进来的话,你朋友连接的IP地址必须是你的外网IP地址.
    你本机(服务器)要是通过路由器接入外网的话.需要设置路由器进行TCP转发127这个是本地回路IP,仅本机可用,
      

  4.   

    您可以试试开源的networkcomms2.3.1 c#通信框架  英国的