【纯Python!自己实现内网穿透】

在这里插入图片描述

开始前

先说下实现思路:我们使用socket 建立 nat server与nat client的长连接,nat server跑在有公网地址的机器上,nat client跑在需要暴露服务内网机器上,最终将内网服务暴露出去。

概念

外部的请求访问 <--> nat server <-socket-> nat client <--> 内网服务

socket: socket就是五元组,包含以下内容1)协议;2)本地地址; 3)外部地址; 4)状态;5)PID。(这里关注本地和外部地址中的 host 以及 监听端口
nat_server_host: 需要是个公网地址,比如10.10.2.2。
nat_server_port: 需要外部可以访问的端口,用于 NAT Client进行socket连接。
remote_port: 指由NAT Client向NAT Server发起注册请求时的端口,需要在NAT Server上暴露的端口,后续用户通过访问这个端口,穿透到内网的服务。
local_port: 指和NAT Client同机器,本地提供服务的端口。

实现和效果

操作步骤

需求:假设 需要将 自己设备上(只有内网

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值