老子巨爱学习。 2021-11-08 09:22 采纳率: 66.7%
浏览 87
已结题

如何实现两台不同的主机上在Java环境中实现TCP通信

在一台电脑的eclipse环境中,可以实现客户端与服务端通信,但在两台电脑上客户端就连接不到服务器端,这是为什么?该怎么解决?

img


img

img

  • 写回答

5条回答 默认 最新

  • 冰思雨 2021-11-08 10:18
    关注
    1. TCP通信是通过 IP地址+端口号 这个组合来完成的,localhost只表示本地IP,不能表示其他主机,Client不要使用localhost来连接服务端;
    2. 服务端要优先启动,没有服务端,客户端无法进行连接;
    3. 同一台主机上面,一个端口号只能绑定到一个进程当中(特殊设置除外),如果前一个进程没有结束,后一个进程是无法重复绑定相同端口的;
    4. 当前进程结束后,所绑定的端口会进行释放,但是,释放端口需要时间,TCP底层会有一个超时时间,超时后才会被回收。所以,重复绑定时可以等一会再试试;
    5. 主机上面有时候会有网络防火墙,(服务端)外部的入栈请求,需要配置防火墙,开放对应端口的入栈连接。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 盒曰 2021-11-08 09:24
    关注

    1.服务开了吗
    2.服务的ip、端口对应上了吗
    3.贴出代码

    评论
  • iilmx 2021-11-08 09:34
    关注

    先启动HelloServer.java,然后再运行HelloClient.java,不然客户端是找不到8888端口号的

    评论
  • 飞翔的驴儿 2021-11-08 15:32
    关注

    用 telnet 先试一下,

    评论
  • 冰思雨 2021-11-09 09:54
    关注
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 11月21日
  • 已采纳回答 11月13日
  • 修改了问题 11月8日
  • 创建了问题 11月8日

悬赏问题

  • ¥20 ERR_CACHE_MISS 确认重新提交表单
  • ¥20 关于vba使用HTMLfile执行js函数问题
  • ¥60 悬赏求解,通过实时现场摄像头的视频图像识别其他对家打出的麻将牌,识别麻将牌,识别牌墙位置,通过识别对家打出了什么牌
  • ¥15 关于#GPU jetson#的pcie驱动开发问题,如何解决?
  • ¥15 stm32f103zet6 串口5无法收发数据
  • ¥15 关于C语言使用线程队列实现多线程并发
  • ¥15 这个运行,错误在哪里呀,大家看看吧,教导我
  • ¥15 advanceinstaller对话框设置
  • ¥100 正常上网,内部网页无法打开
  • ¥15 组件库引入并使用在若依框架未展示