请问socket如何连接某个局域网里的机器

wildboat 2004-08-20 02:23:15
tcp:
socket.connect(xxx.xxx.xxx.xxx)
如果对方机器在某个局域网里,地址为:192.168.0.111之类的局域网地址,通过代理服务器或路由共享上网,如何和他连接

麻烦给出详细的解决方法
...全文
321 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
两台机器都在局域网的话,确实需要一台中转服务器,JAVA有关于P2P编程的接口,可以解决这个问题。
haoyiguo 2004-10-07
  • 打赏
  • 举报
回复
http://www.ppcn.net/show.aspx?id=1306&cid=2
13880079673 2004-08-25
  • 打赏
  • 举报
回复
“希望楼主能把我的回答看完”

局域网内的机器在外网不能直接访问,但是局域网内的机器却可以访问外网具有固定地址的机器。而一旦两台机器建立了连接,数据就可以在两台机器间传输。

就拿QQ来说,他有一台中专服务器,这台服务器有固定IP,而你如果正在运行一个QQ的客户端的话,现在你用防火墙就可以看到不管有无消息到达里的机器,你的QQ客户端都会定时地发送信息到那台服务器(而实际上这个信息里面包括你的号码,等相关信息),而每个要发给你的信息就保存在那台服务器上,如果服务端根据每个发上来连接的消息里面的号码找到时候有要发回给你的信息,如果有,就保持这个连接并把要发给你的信息通过这条连接返回给你,QQ就是不断的重复这个流程来达到工作流程

我想象在楼主应该不会再问为什么QQ还有一些其他的软件可以在局域网内工作,当然其他还有一些像P2P,中转代理什么之类的解决方式(那些都比较复杂,希望楼主可以在搞清楚上面介绍的中转服务器代理模式的基础上再接再厉)

wildboat 2004-08-25
  • 打赏
  • 举报
回复
我的QQ:20126531
欢迎各位来和我共同讨论
wildboat 2004-08-25
  • 打赏
  • 举报
回复
谢谢
我说的就是point to point
wildboat 2004-08-23
  • 打赏
  • 举报
回复
请大侠来帮忙啊
这个应该有解决方法吧
比如一些黑客程序啦,直接传输文件很多软件都有这个功能啊
作端口映射应用范围太小,只能映射到局域网的一台机器上
用服务器作中转不经济

应该有办法吧
我看有很多产品都说什么穿透防火墙,网关的功能
请有成功经验的大侠指点小弟
sarcophile 2004-08-22
  • 打赏
  • 举报
回复
1,没法主动连接应该,除非直接连公网的那台机器配置了端口影射
--- 你还要随时知道映射的具体内容
2,QQ有服务器啊。第一次连接应该是通过服务器连接上的
--- 没服务器好像麻烦了
redhatcn 2004-08-22
  • 打赏
  • 举报
回复
如何监听本机的一些端口,如25, 110, 139等等, 谁说说原理?
bgrobert 2004-08-22
  • 打赏
  • 举报
回复
呵呵,这个问题确实很麻烦。我关注很久了。
whlx 2004-08-22
  • 打赏
  • 举报
回复
关注...
Elvewyn 2004-08-20
  • 打赏
  • 举报
回复
QQ有服务器啊。第一次连接应该是通过服务器连接上的。
  • 打赏
  • 举报
回复
很麻烦啦,连不连得上先不说,你怎么穿过防火墙呀
阿云ivan 2004-08-20
  • 打赏
  • 举报
回复
UP
wildboat 2004-08-20
  • 打赏
  • 举报
回复
那一些IM是如何做的
QQ用的是udp,可udp也得connect对方的ip啊

请达人指教
herony420 2004-08-20
  • 打赏
  • 举报
回复
涉及到路由,我觉得是否采用点对点的方式
cutesun 2004-08-20
  • 打赏
  • 举报
回复
没法主动连接应该,除非直接连公网的那台机器配置了端口影射
doinfo 2004-08-20
  • 打赏
  • 举报
回复
ding

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧