免费不限速!全新NAS无公网访问应用,基于STUN模块的“内链通”
大家好,这里是Cherry,喜爱折腾、玩数码,热衷于分享自己的数码玩耍经验~
前言
内网穿透大家都有用过,其实现原理有很多种,比较常见的有P2P、STUN、TURN、IPsec等等。今天,cherry为大家带来一款新出来的STUN穿透工具,它依托各平台的STUN模块来进行部署,可以让我们快速的搭建其穿透服务,并且使用家庭带宽上行。
什么是STUN:
全称Simple Traversal of UDP through NATs,表示通过 UDP 实现 NAT 网络下的简单穿透,实现互联网用户确定自己的公网 IP 地址和端口,从而实现穿越 NAT 与外部网络进行通信。
STUN的原理:
其原理就是STUN客户端第一次发起UDP包的时候,由STUN服务器解析UDP包内的公网IP+端口,然后将此信息封装后返回STUN客户端中。最后,STUN客户端将此信息发送给外部调用的终端,从而实现数据链接。
STUN的缺点:
由于携带端口,DDNS无法转发其服务,只能通过ip:prot访问,而用户的实际公网端口变化会比较频繁,会导致外部服务器无法获取到稳定的URL地址,导致服务中断。
🔻简易的原理图,我们通过lucky来调用API服务,将打洞后获取的动态公网ip+端口发送给短网址集成服务,然后通过短网址服务的302重定向来获取服务地址。

一、优化网络
要使用本服务,需要确保自己的网络处于NAT3及以上。一般的校园网、移动大内网、企业内网都是NAT4网络,大家可以通过【https://www.checkmynat.com/】来查看当前网络的NAT类型。
NAT 四种类型(也是NAT1-NAT4):
Full Cone NAT:全锥形,任何外部主机只要知道这个公网IP和端口,就能向内网主机发送数据。
Restricted Cone NAT:受限锥形,内网主机需先向外部主机发送数据,该外部主机才能向内网主机发送数据。
Port Restricted Cone NAT:端口受限锥形,内网主机需先向外部主机发送数据,该外部主机的特定端口才能向内网主机发送数据。
Symmetric NAT:对称形,内网主机与每个外部主机通信时,会分配不同的公网IP和端口,在安全性上最为严格,但也最容易导致连接问题。
比如我家里的网络,用的是TPlink路由器,没有开启UPnP,属于端口受限型,即NAT3。

而如何提升NAT3或NAT4呢?那就是把光猫改成桥接,然后通过路由器拨号,并且在路由器/软路由里开启DMZ/UPnP/Full Cone网络等。
如果光猫不让桥接的,那可以咸鱼找大哥们弄一个光猫的超级密码,然后开启UPnP,并且将路由器改为AP模式,这样减少中间的层级(这个方案不建议)。
注意,虽然获取公网IP的第一步也是q光猫改桥接,但是改了桥接并不一定能获取公网IP,有些地方公网IP是要收费的。
🔻爱快开启UPnP:

🔻Openwrt开启Full Cone:

二、安装STUN工具
本服务使用API服务来获取STUN后的公网信息,因此任意支持STUN模块的工具都可以使用。这里我们以比较常用的lucky为例。群晖、威联通、铁威马、绿联、Unraid、飞牛等支持compose的NAS系统,直接复制下方的compose代码部署。
群晖、飞牛等也可以直接从应用商城直接安装。
services:
lucky:
image: gdy666/lucky
container_name: lucky
volumes:
- ./lucky/data:/goodluck
network_mode: host
restart: always
不支持compose的NAS系统,比如极空间、海康、拾光坞、华芸等等,则需要单独部署lucky容器,网络模式选择host,存储路径映射/googluck,其它默认即可。

三、配置STUN
打开lucky服务地址,http://ip:16601,输入默认账号密码666/666登录,选择左侧的STUN内网穿透,点击添加穿透规则。

最上方的规则名称随意,下面要勾选并开启UPnP,然后红框内的是我们需要访问的服务地址。

接着下拉,开启最下方的Webhook通知,接口地址和POST内容参照我下面的格式。
🔴接口地址
https://lanjmp.com/api/update
🔴请求体,userID和password获取方法看文章最后
{
"userId": "用户标识",
"password": "密码",
"ip": "{ip}",
"port": "{port}"
}

保存以后,在STUN这里可以看一下日志正不正常,如果顺利打动成功的话,我们就可以获取到具体的端口和IP地址,然后会触发webhook将信息发送给短网址服务商。

最后,输入https://lanjmp.com/userid就会自动重定向到我们的真实服务地址了,有没有一点DDNS的味道?

最后
内网穿透的方法其实有很多种,STUN也只是其中一种,但是毕竟内穿中间涉及太了太多的环节,还是会存在一些不稳定因素的。“内链通”提供的穿透服务目前仅支持HTTP/HTTPS等网络服务,而嵌套或者多层级的APP服务是无法转发的。
该服务当前还处于测试阶段,一共有几百个名额。关于文章中需要使用的userid、password信息,大家可以通过Tank米多贝克的网站【https://mi-d.cn/10963】里去搜索申请方法。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

tomato_boy
校验提示文案
-rb-
校验提示文案
RemonKing
校验提示文案
值友5476310697
校验提示文案
值友3734144089
校验提示文案
钱老墨
校验提示文案
大码垃圾佬
校验提示文案
lalala1023
校验提示文案
那年的夏风
校验提示文案
好得意的流星
校验提示文案
值友2358320274
校验提示文案
值友5120477205
ip:prot
校验提示文案
值友1154984753
校验提示文案
值友5703614240
校验提示文案
黑熊熊
校验提示文案
值友9701527446
老公:“房子可不换,车也可不换,但你先把这朋友给我换了。。。”
校验提示文案
值友3359039488
校验提示文案
子弹
校验提示文案
值友5703614240
校验提示文案
值友3359039488
校验提示文案
子弹
校验提示文案
值友1154984753
校验提示文案
值友5120477205
ip:prot
校验提示文案
值友9701527446
老公:“房子可不换,车也可不换,但你先把这朋友给我换了。。。”
校验提示文案
值友2358320274
校验提示文案
好得意的流星
校验提示文案
黑熊熊
校验提示文案
那年的夏风
校验提示文案
lalala1023
校验提示文案
大码垃圾佬
校验提示文案
钱老墨
校验提示文案
-rb-
校验提示文案
tomato_boy
校验提示文案
值友3734144089
校验提示文案
值友5476310697
校验提示文案
RemonKing
校验提示文案