内网穿透原理-工具和代码

本文讨论了客户端和服务端之间的长连接通信,包括半包、黏包问题以及用户连接管理。作者通过胡安民的java-Intranet-penetration项目实例,展示了如何处理这些问题,确保消息正确传递。遇到问题时,解决难度大,强调实践中的注意事项和实时支持。
摘要由CSDN通过智能技术生成

原理概念


原理:

  1. 客户端向服务端注册
  2. 服务端向客户端注册
  3. 用户向服务端建立连接消息
  4. 服务端将用户连接消息转发给客户端
  5. 客户端创建一个本地客户端连接到本地应用
  6. 用户给服务端发送消息
  7. 服务端将用户消息转发给客户端
  8. 客户端将消息转发给本地应用
  9. 本地应用将消息发送给客户端
  10. 客户端将消息转发给服务端
  11. 服务店将消息转发给用户

注意:

  1. 需要考虑,客户端和服务端, 半包, 黏包问题
  2. 用户连接, 客户端连接, 服务端连接, 本地应用连接, 如何管理, 简单来说就是长连接
  3. 用户或者本地应用,关闭了如何通知对方
  4. 服务端挂了重启,客户端如何自动连接
  5. 从用户->服务端->客户端->本地应用, 这一条线路如何保证消息正确的传递, 一旦中间那个环境出了一点问题, 那么就完蛋了, 非常不好排查的

实战项目

胡安民/java-Intranet-penetration
可以查看README.md进行使用这个项目

点赞 -收藏 -关注
有问题在评论区或者私信我-收到会在第一时间回复
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡安民

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值