Lucky STUN内网穿透的搭建(2026最新 详细)
解释:Lucky是一款开源的网络工具,有端口转发、DDNS、STUN内网穿透等功能。其中STUN指Session Traversal Utilities for NAT(NAT会话穿越工具),目的是实现NAT穿透。
目的:实现免费近似于公网ipv4的外部网络访问内网服务的系统。可以用来进行网络游戏的联机、远程访问电脑、远程传输文件、nas的外部访问等。
适用条件:无公网ipv4,没有购买第三方“内网穿透”服务的意愿,希望达到不限速不限量的体验。
需要具备:
(1)一些网络和计算机知识基础;
(2)一台可以安装Lucky的设备(电脑、路由器、nas等);
一个域名(可以不备案,一个.top/.icu等域名一年12元左右,有的甚至个位数,不用域名其实也是可以的,只不过隔一段时间可能需要手动变更一下ip);
(3)NAT1(完全锥形)的网络环境,最差也要NAT2(受限,有一定概率不成功),nat3、nat4基本不用想了。当然,NAT类型是可以优化的或
NAT类型测试工具:
在线网站:NAT 在线检测工具
https://natchecker.com/zh
NAT类型在线检测工具,查看我的NAT类型 – 猫点饭
软件:比特彗星(bitcomet)内置的nat检测(工具-nat类型检测)
Watt Toolkit内置的NAT检测工具
如果你的NAT类型不是NAT1,也不用担心,NAT类型是可以优化的,从NAT4优化到NAT1也不是没有可能,以后有机会出一篇文章讲解。
下面以Windows端的Lucky为例
一、安装Lucky
Lucky在GitHub上的页面:https://github.com/gdy666/lucky

点击Releases(发行)下的版本号,随时间变化版本可能不同

找到形如lucky_版本号_Windows_x86_64.tar.gz的选项,单机下载
解压到文件夹并进入,双击运行lucky.exe(刚解压未运行时的文件夹应该是只有三个项目)


右下角托盘中出现如图所示的图标后代表运行成功,并点击打开后台
二、初步配置STUN内网穿透规则
先点击左侧栏中的STUN内网穿透

右侧应该是空空如也,添加穿透规则

先看这一部分(不用担心 跟着一步一步来就行)
规则名称:随意
操作模式:简易模式
穿透类型:先以ipv4-TCP测试(大部分服务也都是这个),后续根据实际应用/服务调整即可
穿透通道本地端口:0(解释:0表示使用随机端口保证没有冲突,仅作维持通道使用的内部端口,不是穿透后的公网端口,穿透成功后的公网端口是随机的,不可指定)
防火墙自动放行:开启
UPnP:如果你的路由器没有设置DMZ主机并将对象指向你的电脑,需打开路由器的UPnP功能和此处的UPnP
如果你的这台电脑已经是DMZ主机,不需打开
备注:开启DMZ很简单,路由器后台一般都有,打开即可,并选择你的电脑(选项可能是你电脑网卡的MAC地址,不知道的话cmd输入ipconfig查询)。
NAT-PNP:关闭
不使用Lucky内置端口转发:关闭
禁用通道有效性检测:关闭
目标地址:如果你的Lucky就安装在这台电脑上,那么目标地址就是这台电脑的ip地址,为了方便可以直接填127.0.0.1(本地回环地址),也可以填ipconfig查询到的局域网地址
目标端口:填在你这台电脑上的服务的端口,如Minecraft Java版默认端口号一般是25565,SMB共享协议的端口为445,Windows自带的远程桌面(RDP)端口默认为3389
禁用自身转发检测:关闭
自定义脚本处罚:关闭
点击添加,打开,虽然现在是运行不了的,但要记录红色遮挡部分的ip地址,然后关闭这个规则

三、配置DDNS规则
然后点击左侧栏中的动态域名,即DDNS,点击添加任务

任务名称:随意,可不填
任务开关:启用
调试模式:随意
操作模式:简易
托管服务商:选择你的DNS解析服务商,注意腾讯云与http://DNSPod.COM不完全一样
下面两个一般都是id、key、token等,需要去你的dns解析服务商创建密钥、令牌之类的,然后复制到这里,这一步很重要,是Lucky与DNS服务商创建关联,使Lucky有权修改DNS解析参数,以用于同步ip等,不会注册域名或者查看密钥的请自行查询,不复杂
强制同步(秒)、首次执行任务延迟(秒)、检测周期(秒):默认即可
ipv6Addr:禁用
ipv4Addr:启用
获取公网ip方式:接口、网卡均可,如果是网卡注意选择整确的网卡

点击添加同步记录,出现一个No1.的框
备注:无特殊符号即可,选填
记录名:你的域名
同步开关:启用
记录类型:A(ipv4)
记录内容:{ipv4Addr}
TTL:自动
线路:留空即默认
添加任务即可,添加后当然还是不行的,需要进一步添加DNS解析服务商记录
四、添加DNS解析服务商记录
以腾讯云为例,进入域名控制台https://console.cloud.tencent.com/cns,点击解析,添加两个如图的记录

注意记录类型为TXT的记录值随便填一个端口号即可,如12345,因为反正以后会更新这里只是占位符
记录类型为A的记录值填刚才在STUN中记录的ip地址
然后进入DNSPod,创建Token,把ID和Token记录下来

五、配置STUN内网穿透的Webhook规则
返回STUN内网穿透,点击编辑穿透规则
打开Webhook(注意不是全局)

以腾讯云为例
接口地址:https://dnsapi.cn/Record.Modify
请求方法:POST
请求头:Content-Type: application/x-www-form-urlencoded(这是POST请求的编码格式)
请求体:
login_token=【之前DNSPod创建的ID】,【之前DNSPod创建的Token】
&domain=【你的域名】
&record_id=【解析记录ID】
&record_type=TXT
&record_line=默认
&value=#{port}
&ttl=600
解析记录ID的查看方法如下,返回腾讯云解析控制台,显示记录ID,左边的一串数字就是

备注:标【】的代表需要改(删掉“【】”),其他的不能改。
如果用的是其他服务商,请求接口、请求体、请求头、请求方法都可能不一样,
具体内容建议查询官方api文档,或询问ai,我这里提供了询问ai的提示词,注意ai需打开联网,服务商为国内建议使用国内ai:
我需要请你帮我填写Lucky STUN内网穿透的Webhook配置信息,我使用的是【你的DNS服务商名称】,内容有接口地址、请求方法、请求头、请求体、接口调用成功包含的字符串,
1、接口地址:请阅读、搜索并参考DNS服务商官方 API 文档和网络资料
2、请求方法:包括GET、POST、PUT、PATCH四种HTTP请求方法,请阅读、搜索并参考DNS服务商官方 API 文档和网络资料确定
3、请求头:请阅读、搜索并参考DNS服务商官方 API 文档和网络资料
4、请求体:不同厂商的参数命名、格式完全不同,请阅读、搜索并参考DNS服务商官方 API 文档和网络资料
5、接口调用成功包含的字符串:根据服务商的成功响应填写匹配字符串
Lucky STUN规则中支持的变量:
#{time}:触发Webhook的时间
#{ipAddr}:当前STUN穿透获得的公网IP地址(含端口),比如192.168.1.1:16666
#{ip}:当前STUN穿透获得的公网IP地址的IP部分,比如192.168.1.1
#{port}:当前STUN穿透获得的公网IP地址中的端口部分,比如16666
#{ruleName}:规则名称
所有填写的信息都需参考DNS服务商文档、Lucky官方文档、网络资料等,最终按照序号1、2、3、4、5的顺序输出,然后用简洁易懂的语言给出
必要的说明,如注明哪一部分是需要用户替换的内容,哪一部分必须保证不能修改等
成功界面大致为这样:

且日志不报错

六、测试
1、测试ip及端口同步性
重启光猫,下发的ip会发生变化,登录dns控制台查看A解析的记录值与Lucky中的ip是否一致,查看TXT解析的记录值与Lucky中的端口号是否一致,这个同步过程需要一点时间,但如果长时间不同步,那就是有问题
2、测试外部访问连通性
打开你本地的服务,如Minecraft开启局域网联机,并确保Lucky STUN中的目标端口与你本地服务的端口一致
使用ITDOG的Tcping进行测试在线ping_tcp延迟测试_持续ping_禁ping_tcping_在线tcping_端口延迟测试
填写你的域名:外部端口号,也就是这两个记录值


大部分地区为绿色即为正常
3、测速
先进行网络环境测试
这是我家的宽带网络速度,上传峰值60Mbps,合约7.5Mb/s

这是我手机的5G-A蜂窝网络速度,下载峰值达到700Mbps,合约88Mb/s

当电脑作为服务端被访问时,速率取决于电脑上传速率(一般下载速率都是大于上传速率的),手机端下载速率>>电脑上传速率,所以理论上是可以跑满家庭宽带网络的上传带宽的,理论速度峰值约为7.5Mb/s
现在在电脑端设置共享文件夹,用于测速
注:Windows自带的共享功能的协议是SMB

在手机端ES文件管理器连接并下载,速率约在1.2~12Mb/s波动,平均4~6Mb/s,非常成功!

好的!大功告成!现在可以愉快的体验了!
现在唯一的缺点或者说不舒服的地方就是端口号会改变,没启动一次Lucky就会变化,当然这个也是有办法解决的,比如添加SRV记录、反向代理等,下次再进行分享。