内网穿透搭建服务器
内网穿透技术
Section titled “内网穿透技术”内网穿透是指将位于内网中的服务器的某些端口通过某种技术手段,映射到公网上,使得公网中的客户端可以访问到内网中的服务器。
目前常用的技术有Frp、Ngrok等,它们通过在公网服务器上搭建代理服务,将公网流量转发到内网中的服务器,实现内网穿透。当然,如果您的NAT类型为NAT1(完全锥形NAT),则可以使用STUN协议实现内网穿透。
下面,我们分别介绍这两种技术的搭建过程,代理服务器以SakuraFrp为例, STUN穿透以Lucky工具为例。
使用Frp搭建服务器节点
Section titled “使用Frp搭建服务器节点”启动QtEasyTier
Section titled “启动QtEasyTier”- 根据需要配置好服务端的组网参数
- 监听端口处可以按需填写,这里以默认的 11010 tcp 端口为例
- 点击运行网络即可

创建FRP隧道
Section titled “创建FRP隧道”- 打开FRP网站-注册-登陆-实名认证
- 查看可选FRP节点状态
- 创建FRP隧道 由于运营商QOS以及节点设置,推荐优先选择TCP隧道

- 修改本地IP为局域网IP(127.0.0.1等本地回环地址会导致组网无法连接)

- 修改本地端口为你在QtEasyTier中配置的监听端口(默认为11010)

节点选择建议
Section titled “节点选择建议”在选择穿透节点时,推荐按顺序考虑以下几点:
- 优先选择同省的多线、三线节点
- 若没有同省节点,优先选择物理位置较近的多线、三线节点
- 若没有多线、三线节点可选,优先选择同运营商节点,尽可能避免跨运营商访问。在此基础上,尽可能选择物理位置较近的节点
- 在没有其他选择的情况下,选择离自己物理位置较近的节点
- 特别的,对于广电用户,在没有三线、多线可选的情况下,请尝试移动或联通节点
启动FRP隧道
Section titled “启动FRP隧道”- 根据设备下载合适的二次开发启动器或frpc

- 配置启动器(根据引导操作,不详述)
- 启动隧道
- 查看FRP日志,从中获取FRP穿透地址及端口

- 进行组网时,服务器一栏填写FRP穿透地址及端口即可
使用STUN搭建服务器节点
Section titled “使用STUN搭建服务器节点”本部分内容基于Lucky或其他STUN内网穿透软件实现,以下以Lucky为例。
STUN(Session Traversal Utilities for NAT)内网穿透技术可以帮助解决因NAT(Network Address Translation)技术所带来的网络连接问题。STUN技术允许NAT1用户获取公网端口,通过路由端口转发或者LUCKY内置转发,将内网服务端口暴露到外网,从而实现内网穿透的目的。
STUN功能提供的端口穿透仅用于体验,无法保证端口变化的频率。请注意,对于与STUN稳定性相关的问题,无法提供技术支持。同时,我们也不提供任何关于如何访问内网的无公网v4方案。
STUN内网穿透基础使用说明详见STUN内网穿透
服务端的启动方法与前文相同,不再赘述
- 检测自己的NAT类型
- 设置DMZ或UPNP
- 创建穿透端口
(1) TCP穿透
在
lucky -> 内网穿透 -> STUN内网穿透下创建一条新的穿透规则,穿透协议选择为IPV4-TCP。- 穿透通道本地端口可为 0 (随机端口),也可手动指定一个大于10240的未使用端口(推荐);
- 目标地址填写设备的ip地址(不可为127.0.0.0/8);
- 目标端口为对应的EasyTier监听端口。
(2) UDP穿透 - udp穿透和tcp的内容一致,只不过穿透类型改成了UDP而已。 (3) 手动设置
- 不使用Lucky内置端口转发,改为手动开启对应的防火墙和端口转发,从而提高转发效率。
- 成功实现STUN内网穿透

- 固定穿透stun端口
Easytier支持通过DNS的TXT记录、SRV记录和HTTP(s)请求获取链接,从而获取对端设备的IP+端口号,因此我们可以在
lucky -> 动态域名创建对应的解析记录或者lucky -> Web服务实现动态解析地址。 (1) TXT记录 在lucky->动态域名->添加ddns记录添加一个txt记录,记录名为要更新的域名,记录类型为TXT,记录内容为lucky的全局变量tcp://{STUN_规则名_ADDR}
(2) SRV记录
配置和灵活性没有TXT高,因此这里不展开说明如何实现,如果有需要可以参考ie-12大佬的教程
(3) HTTP记录
HTTP相较于DNS的TXT记录的优势在于动态变化的端口可以实时解析,不会因为DNS缓存导致滞后,但是前提是需要搭建好Web的反向代理和STUN穿透。
在 lucky -> Web服务 -> 添加子规则 创建一个站点,服务类型选择为文本输出,前端地址设置为你的域名解析地址,这里的地址可以和你的TXT记录一致,因为一个是A/AAAA记录,另一个是TXT记录,两者不冲突。

- 将STUN穿透地址及端口填入服务器栏
- 或将TXT记录填入服务器栏
- 启动组网
