CSDN博客

img woashizhangsi

c#做聊天工具为什么只能在局域网内发送数据

发表于2008/10/3 22:12:00  830人阅读

问:想实现一个简单的qq样式的聊天工具。
用过socket,也试了unsafe SendARP方法。貌似都只能在局域网里发送消息。如果是外网上的一台电脑,虽然知道ip,还是连不上。
是不是必须做一个ip映射?
可是,msn,qq,就不用啊。安装好,立马可以与世界各地的人聊天。

 

 

(1)答:这个的话,需要使用Server转发的模式,或者使用VPN通道.简单的几句也说不清,就简要地说一下大致的方法

1.建立一个服务器端,放在公网的服务器上运行,监听
2.客户端通过指定的IP与端口连接服务器(客户端没有网络要求,只要能连接服务器,打开你指定的端口即可)
3.客户端发送消息给服务器,再通过服务器转发给另外一个客户端

 

(2)答:学一下计算机网络你就会明白为什么连不上了!
因为我们在局域网的IP其实都是私有地址,对外是无效的。而我们想去连接一个宽带用户时,还是不能连上。那是因为现在的网络运营商用了一个NAT(网络地址转换技术)来提高IP地址的利用率!所以一般的宽带用户的IP也不是有效IP。

0 0

相关博文

我的热门文章

img
取 消
img