黑马程序员技术交流社区

标题: java在实现远程通信中问题 [打印本页]

作者: java.love    时间: 2013-5-5 22:48
标题: java在实现远程通信中问题
本帖最后由 java.love 于 2013-5-7 07:28 编辑

java在实现远程通信方面要用到udp和tcp协议吗。如果要实现一个程序,有服务器有客户端,用户可以在服务器上下载东西和上传东西,要怎么实现。求大神解答
作者: 孙金鑫    时间: 2013-5-6 00:21
坐等大神回答。。。。。。。。可怜的毕老师啊
作者: HM赵磊    时间: 2013-5-6 08:52
同样的疑惑,怎么使用java实现广域网的计算机通信,而并非是局域网。还有,当我们广域网通信时,我们的IP地址是私有地址(192.168.*.*等)网段的,怎么实现NAT的穿透?求解!
作者: HM朱蛟    时间: 2013-5-6 15:28
本帖最后由 HM朱蛟 于 2013-5-6 15:31 编辑

我猜测:
服务端:Tomcat服务器(封装了ServerSocket,Tomcat下的appweb目录存储html,设置backllog控制并发连接数量防止DOWN机)
客户端:浏览器(封装Socket,利用URL对象获取Connection,Connection的getInputStream拆包,剥去传输层的请求数据头和请求数据体,获得有用的数据)

网络方面:
2种方式
直接挂公网,即购买一个公网地址将来承载网站的服务器直接挂在公网上,设置好网关,申请好DNS域名,可以供用户直接访问
挂在内网通过出口网路设备进行NAT的端口映射将网站映射出去。

交流学习
作者: HM朱蛟    时间: 2013-5-6 15:38
本帖最后由 HM朱蛟 于 2013-5-6 15:50 编辑
HM赵磊 发表于 2013-5-6 08:52
同样的疑惑,怎么使用java实现广域网的计算机通信,而并非是局域网。还有,当我们广域网通信时,我们的IP地 ...


每个网络厂商的OS是不一样的 所以命令是不一样
比如思科是一套命令,华为又是另一套命令,记这些命令没意思。

不过原理是这样的

我打个比喻:
你内网web服务器的ip地址是192.168.1.100   你外网出口设备ip地址是200.200.200.200
那么你需要在出口设备上建立一个nat端口映射表
通俗的说就是:将192.168.1.100的80端口映射到200.200.200.200的80端口
至于配置命令 多种多样。

当然你需要购买一个公网上可用的域名以供客户端DNS解析

免费的域名可以用“花生壳”这个软件整



作者: 黄玉昆    时间: 2013-5-6 23:04
如果问题未解决,请继续追问,如果问题解决了,请将分类改为“已解决”,谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2