内网穿透

参考:https://www.jianshu.com/p/cdc446e51675
http://blog.sina.com.cn/s/blog_6e9654bc0102ycnc.html
https://www.sohu.com/a/201964268_743147

用【外办公】实现

官网地址:https://www.howsget.com

  1. 创建一个链接组
  2. 添加映射 在这里插入图片描述
  3. 在本机下载客户端 按使用教程启动
    在这里插入图片描述
  4. 其他用户可以通过访问http://1234567.howgets.com:88来访问127.0.0.1:20000

注:如果没有在本机运行客户端程序则其他用户在访问http://1234567.howgets.com:88的时候得到的是The Host [1234567.howgets.com] was not binding.

原理

假设公网IP为23.23.23.23,内网IP为192.168.1.2。公网主机先监听80端口,监听这个端口是用于向外部提供一个HTTP服务,80是WEB服务器的默认端口。同时其他任意一个端口(这里我们假设为7777),监听这个端口是用于让内网服务器主动连接进来打通一个隧道。接着内网再主动向公网主机的7777发起一个请求,这样内网就成功与公网主机建立了一个连接通道。然后当有任何客户端主动连接公网的80端口时,公网接收到连接请求之后马上把这连接请求通过先前建立好的隧道转发到内网主机,内网主机接收到来自隧道的数据包后再主动连接内网主机自身的80端口,连接成功之后将数据包原封不动地转发数据包给80端口,待HTTP服务器程序处理完这个数据包,生成了响应报文之后再原路转发回去,最终到达公网的80端口,然后返回给最开始请求公网服务器80端口的客户端。

下载客户端连接的过程就是在内网主机和外网主机之间建立转发隧道的过程。

用ssh实现隧道

SS 隧道穿透 内网 NAT
两步建立ssh反向隧道
原理
主机A在局域网内,如果没有对主机A进行端口映射,对于主机B来说主机A是不可见的,如果在主机B这边向主机A发送连接请求,这个请求是不可达的。而主机B有自己独立的IP,对于主机A来说是可见的,可以直接向
主机B请求连接。
SSH反向连接的过程就是主机A主动去连接主机B,主机B响应主机A的连接请求,它们之间就建立了一个远程连接。然后主机B在本地再创建一个本地连接,重定向到主机A和主机B刚才建立的远程连接上,之后对这个本地连接的操作都会反馈到远程连接上去。整个过程类似于文件的DUP,这就在主机A和主机B之间建立了连接通道,此时对于主机B来说,主机A已经是可见了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值