JAVA建立Socket连接,自动获取主机建立连接!

略萌的程序猿大叔 2015-07-29 11:34:45
目的和要求:
我做了一个Java小程序,是一个聊天室,是一个CS结构的应用程序,但是目前我想改善用户体验,我的服务端程序启动后阻塞,等待用户对我的12345端口号发送请求连接(TCP/IP),我的客户端可能在局域网内的任何一台电脑使用,目前连接服务器的做法是让使用者手动输入我的服务端IP地址,然后建立连接,但是为了增强用户体验,我想让客户端自动获取主机(服务器IP)进行连接,希望大神给我一些指导和伪代码,代码执行效率不限!!!
初步设计思路:
我的思路是这样的,通过某种方式获得网卡的网关信息,通过网关对局域网内所有可用IP地址进行测试连接,如果在指定超时时间内,建立的连接说明这个IP地址既是我的主机位置
目前程序的一些概况:
端口是死的,服务器程序是等待状态,我只有一个网卡,只有一个网关,在Window操作环境下,java写的 Socket

100分送上
...全文
255 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 3 楼 纠结的纠结伦的回复:
同求啊啊啊啊啊啊啊啊啊啊
这个东西我看到了一些解决方案,我现在的做法是使用udp 广播分发,在233.233.233.1网段不断广播自己的主机位置,多个数据包发送的频繁一点,这是一个广播方案,很多移动开发的也是用这个方案
emotionalronan 2016-01-11
  • 打赏
  • 举报
回复
同求啊啊啊啊啊啊啊啊啊啊
  • 打赏
  • 举报
回复
自己顶顶 别沉 拜托各位大婶了
  • 打赏
  • 举报
回复
我的服务器端专门写了一个java程序,不断的等待客户端连接,我的是基于TCP/IP协议的连接,我的网络环境中IP是自动获取的,所以我的服务器如果重启或者出现其他情况使得本地连接IP变了,我就不能在客户端代码中写死他,我不在客户端代码中写死的原因在于我增强了服务器端代码 "适应性和可移植性",我不想把服务器端的本地连接IP限制死,也不想把客户端代码中主机IP限制死

51,407

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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