用Go基于Tcp协议实现内网穿透工具——Shermie-Nat-Transversal

前言

之前看到有一篇博客是介绍内网穿透的,有评论在问怎么实现,内网穿透的工具太多了,看看源码就会,比较简单,原理一句话概括就是协议转发,这里就用Go简单实现一下吧

涉及的知识

  • 自定义tcp协议
  • 协议转发(核心)

特点

可以代理多个应用,每新增一个应用本地就需要和服务器创建一个tcp连接,每个客户端都有一个唯一的标识,只需要在公网域名加上客户端标识即可,比如:

  • your.domain.com?unique-id=1代表本地的用户服务
  • your.domain.com?unique-id=2代表本地的支付服务

    效果

    访问公网地址,请求会到我本地的http服务,然后将数据返回给浏览器

仓库

地址:github.com/kxg3030/shermie-nat-tra..., 喜欢的话请用你发财的小手点个 star

本作品采用《CC 协议》,转载必须注明作者和本文链接
失色天空
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!