构建基于 Hysteria 2 隧道加速的 FRP 内网穿透全攻略

第一章:前言、准备事项与底层加速原理

1.1 前言:打破内网穿透的“次元壁”

在当今这个数据爆炸的时代,无论你是在公司远程访问家里的 NAS 查资料,还是在室外通过 WebDAV 播放家里的 4K 蓝光大片,“内网穿透”(FRP)已经成为了数字发烧友的刚需。

然而,绝大多数小白在搭建完基础的 FRP 后,都会遇到一个令人抓狂的瓶颈:速度极慢且极其不稳定。由于跨海公网的丢包率(Packet Loss)和运营商的 QOS(服务质量限制),原本家里的百兆上传带宽,在外面访问时可能只剩下可怜的几百 KB/S。

这两天,我们共同完成了一个极其复杂的架构:Hysteria 2 加密隧道 + Nikki 策略分流 + 链式中转加速 + FRP 穿透。这套架构不仅让你的访问速度从 2MB/S 飙升到了 10MB/S 以上,更通过协议伪装避开了运营商的封锁。本章作为全书的开篇,将带你认清这套系统的物理本质。

1.2 准备事项:你的“军备竞赛”清单

在动任何一行代码之前,请先对照以下清单,准备好你的软硬件工具。

1.2.1 核心硬件

  • VPS 服务端:你需要一台位于海外的云服务器(推荐 Google Cloud Platform, GCP)。
    • 位置建议:美国西海岸或香港(本文示例 IP 为 35.212.186.92)。
    • 操作系统:强烈推荐 Debian 11/12Ubuntu 22.04
  • 本地软路由:一台运行 OpenWrt 的路由器,如本文的主角 NanoPi R2S
    • 它的 CPU 性能决定了你进行 Hysteria 2 加解密时的速度上限。

1.2.2 必备软件环境

  • Nikki (原 Clash 核心):用于在 R2S 上进行流量拦截和协议转换。
  • FRP 客户端 (FRPC):OpenWrt 自带的插件或手动安装的版本。
  • FRP 服务端 (FRPS):安装在 VPS 上的服务程序。

1.2.3 核心数据储备(建议记录在记事本)

  • 域名:一个已解析到你 VPS IP 的二级域名(用于 SSL 证书申请)。
  • FRP 令牌 (Token):你的通信密码,如 aabbcc
  • 隧道认证密码:Hysteria 2 的钥匙,如 ss122119
  • 业务端口规划
    • UDP 443:隧道主港口。
    • TCP 5443:FRP 内部握手。
    • TCP 7443:你的 HTTPS 网页对外访问口。

1.3 深度原理:这套加速链路是怎么跑的?

为什么直接用 FRP 会慢?为什么加了 Hysteria 2 就快了?我们要从网络协议的底层寻找答案。

1.3.1 传统 FRP 的悲剧:TCP 的“礼貌”缺陷

标准的 FRP 使用的是 TCP 协议。TCP 是一种“极其讲礼貌”的协议:它在发送数据前要先握手,发送后要等待对方确认。

  • 丢包噩梦:一旦跨海线路出现 1% 的丢包,TCP 就会认为网络拥塞,从而主动降低一半以上的速度。这在晚高峰期间是灾难性的。
  • 特征明显:FRP 的握手包特征非常明显,容易被运营商识别并进行 QOS 限速。

1.3.2 Hysteria 2 的黑科技:UDP 的“推土机”精神

我们将流量塞进 Hysteria 2,其实是把原来的 TCP 包“打包”进了一个个 UDP 报文 中。

  • 暴力重传:Hysteria 2 不会因为丢包就退缩,它会根据你设置的带宽参数,不断地探测并占满带宽。
  • ALPN 伪装:它能把自己的流量伪装成正常的 HTTP/3 (QUIC) 视频流量。对于运营商来说,他只看到你在“看大片”,而不知道你其实是在进行“内网穿透”。

1.3.3 “传送门”逻辑:Nikki 的隧道机制

我们在 R2S 的 Nikki 配置里使用了 tunnels(隧道)功能。

  1. FRPC(客户端):它以为自己在访问本地的服务器(127.0.0.1:5443)。
  2. Nikki(捕获者):它在 5443 端口蹲守,一看到 FRPC 发包,立刻把包截获。
  3. Hysteria(加密者):Nikki 把截获的包通过 Hysteria 2 协议加密,并根据你的选择,或是直连美国,或是先发往香港节点中转。
  4. VPS(解密者):美国的 Hysteria 服务端接住包,脱掉加密外衣,把它交给旁边的 FRPS 处理。

1.3.4 什么是“链式加速”?

为什么你的配置里有一个 dialer-proxy: "🇭🇰 香港节点"? 因为国内直连美国的 UDP 流量极不稳定。我们让流量先经过带宽极大的香港中转机,再由香港转交给美国。这就像是从“村道直通高速”变成了“通过高架上高速”,虽然路程长了一点,但总耗时却缩短了数倍。

1.4 本章避坑总结

  1. 不要在 80/443 上死磕:记住,443 端口要留给隧道伪装,不要试图在它上面跑 FRP 的 HTTPS 业务。
  2. BBR 是必备药引:如果 VPS 没开内核 BBR 加速,Hysteria 2 的暴力程度会大打折扣。
  3. 端口一定要放行:GCP 后台的防火墙规则如果没设好,你所有的配置都是无用功。

第一章结束。 这一章我们理清了“准备什么”和“为什么这么做”。

第二章:VPS 枢纽端部署——从零安装到攻克“443 冲突”

在上一章中,我们理清了整套系统的逻辑骨架。现在,我们要进入实战环节,在你的美国 VPS 服务器上搭建“指挥中心”。这一章不仅包含安装步骤,更重要的是要复盘你之前遇到的所有报错,尤其是 Hysteria 2 与 FRP 抢夺端口的致命冲突。

2.1 谷歌云 (GCP) 的第一道锁:防火墙配置

在 VPS 上敲任何命令之前,必须先在云控制台打开“大门”。如果你这一步漏掉了,即使你在终端里看到服务运行正常,外网也永远访问不到。

请前往 GCP 控制台 -> 网络 -> 防火墙,创建一个新的入站规则:

协议类型端口号作用
UDP443Hysteria 2 隧道的主入口(核心)
TCP5443FRP 客户端与服务端的指令通道
TCP6443FRP 管理面板,用于网页查看设备是否在线
TCP80映射出的 HTTP 网页业务
TCP7443映射出的 HTTPS 网页业务(避开 443)

2.2 FRP 服务端 (FRPS) 的保姆级部署

由于你之前使用的是 MvsCode/frps-onekey 脚本,且版本为 v0.67.0,其配置文件已经全面转向了 .toml 格式。

2.2.1 一键安装脚本

在你的 VPS 终端执行以下命令:

Bash

wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install.sh -O install.sh
chmod +x install.sh
./install.sh install
  • 版本选择:请选择最新版本。
  • 端口与 Token:按照我们之前的约定,Bind Port 填 5443,Token 填 aabbcc

2.2.2 深度修改配置文件(必看避坑点)

安装完成后,系统默认配置并不能满足“加速隧道”的要求。你需要手动编辑:

sudo nano /usr/local/frp/frps.toml

请确保你的配置文件内容如下(注意注释部分的说明):

Ini, TOML

bindAddr = "0.0.0.0"
bindPort = 5443

# 【避坑核心 1:UDP 冲突】
# 之前你启动失败,是因为 FRP 默认想占用 UDP 443 做 QUIC 传输。
# 但我们的 443 要留给 Hysteria 2,所以必须在前面加 # 注释掉这行!
# quicBindPort = 443

vhostHTTPPort = 80
# 【避坑核心 2:HTTPS 挪窝】
# 这里的 443 绝对不能用,因为 443 被隧道占用了。
# 我们改成 7443,以后访问 HTTPS 网页时带上它。
vhostHTTPSPort = 7443

auth.method = "token"
auth.token = "aabbcc" # 必须与 R2S 端保持一致

# FRP 网页面板配置
webServer.port = 6443 # 之前你设定的面板端口
webServer.user = "admin"
webServer.password = "admin"

2.3 Hysteria 2 安装:打造“暴力助推器”

Hysteria 2 是我们跨海加速的秘密武器。它能在极高延迟和丢包的网络环境下,依然维持稳定的吞吐量。

2.3.1 安装步骤

执行官方一键脚本:

Bash

bash <(curl -fsSL https://get.hy2.dev/)

2.3.2 配置 Hysteria 2 (/etc/hysteria/config.yaml)

编辑配置:

YAML

listen: :443 # 监听 443 端口,通过伪装成 HTTPS 绕过限速

tls:
  cert: /etc/hysteria/server.crt # 你的域名证书路径
  key: /etc/hysteria/server.key   # 你的密钥路径

auth:
  type: password
  password: ss122119 # 隧道密码,需与 Nikki 配置一致

2.3.3 【关键点】赋予特权端口权限

在 Linux 中,非 Root 用户无法监听 1024 以下的端口(如 443)。为了让 Hysteria 能够顺利启动,必须执行以下命令:

Bash

sudo setcap 'cap_net_bind_service=+ep' /usr/local/bin/hysteria
  • 意义:这一步赋予了程序“越级”使用 443 端口的权力。如果你发现 systemctl status 报错,多半是没做这一步。

2.4 系统底层优化:开启 BBR 加速

如果不开启 BBR,Hysteria 2 的暴力重传性能将无法得到内核的支持,速度会大打折扣。

执行以下命令:

Bash

echo "net.core.default_qdisc=fq" | sudo tee -a /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
  • 验证结果:输入 sysctl net.ipv4.tcp_congestion_control,如果返回 bbr,则说明优化已生效。

2.5 验证与排查:你怎么知道它跑起来了?

作为小白,最怕的是配置完后两眼一抹黑。学会这两条命令,你就已经入门了一半。

2.1 检查 FRP 状态

Bash

sudo systemctl restart frps
sudo systemctl status frps
  • 看到绿色 active (running):代表 FRP 服务端已就绪。
  • 报错 bind: address already in use:说明你的 80、7443 或者 5443 被占用了,请仔细核对上面的 frps.toml

2.2 检查 Hysteria 2 状态

Bash

sudo systemctl restart hysteria-server
sudo systemctl status hysteria-server
  • 实时查看日志sudo journalctl -u hysteria-server -f
  • 当你后续在 R2S 端开启加速时,这里应该会滚动显示大量的连接日志,说明数据已经成功钻进了隧道。

2.6 本章避坑总结(写给小白的话)

  1. 关于 443 端口的“死斗”:这是整篇文章最重要的一点。FRP 的 QUIC 功能、Hysteria 2 隧道、甚至你可能安装的 Nginx 都在抢 443。记住:在我们的方案里,443 只准留给 Hysteria 2
  2. 证书的陷阱:Hysteria 2 必须要有有效的 SSL 证书才能稳定伪装。如果你在 R2S 的 Nikki 里选了 skip-cert-verify: true,虽然可以暂时绕过,但长期建议通过 acme.sh 申请一个正规证书。
  3. 配置文件的格式.toml 格式对空格极其敏感,请确保不要在行首多加空格,也不要误删了引号。

第二章结束。 此时,你的美国 VPS 已经搭建好了一个坚固且暴力的“接收站”。

第三章:R2S 软路由部署——配置 Nikki 策略与 FRPC 隧道连接

如果说 VPS 是大洋彼岸的“终点站”,那么你家里的 NanoPi R2S 就是整套系统的“超级大脑”。在这一章中,我们将进入最核心的环节:在 R2S 上通过 Nikki (Clash) 搭建加密隧道,并诱导 FRP 客户端 (FRPC) 钻进这条“高速公路”。

3.1 Nikki 配置文件详解:打造“本地传送门”

Nikki 在这里扮演的是一个“流量搬运工”的角色。我们需要在配置文件 Config-BBR加速.yaml 中精确定义三部分:入口 (Tunnels)交通工具 (Proxies)调度中心 (Proxy Groups)

3.1.1 设置隧道入口 (Tunnels)

在配置文件的顶部附近(通常在全局配置之后),我们需要添加 tunnels 段落。这是将 FRP 流量从“普通公网”引入“加密隧道”的第一步。

YAML

# 【位置:全局配置下方】
tunnels:
  # 含义:监听本地所有网卡的 5443 端口,一旦有包进来,就交给“🚀 VPS 加速”策略组处理
  - {network: [tcp], address: "0.0.0.0:5443", target: "127.0.0.1:5443", proxy: 🚀 VPS 加速}
  • 小白注意:这里的 address: 0.0.0.0:5443 是 Nikki 在 R2S 上开的一个“虚拟窗口”。而 target 则是告诉数据包,到了美国 VPS 后去敲哪个门(即 127.0.0.1:5443)。

3.1.2 定义加速节点 (Proxies)

proxies: 列表下,我们要定义两个 Hysteria 2 节点:一个用于中转加速,一个用于极简直连

YAML

# 【位置:proxies 列表内】
proxies:
  # 方案 A:美国-GCP-隧道(中转模式,通过香港节点中转)
  - name: "美国-GCP-隧道"
    type: hysteria2
    server: 35.212.186.92 # 你的美国 VPS IP
    port: 443
    password: "ss122119" # 必须与 VPS 端的 Hysteria 密码一致
    up: "100 Mbps"       # 这是你之前提速到 10MB/s 的关键参数!
    down: "200 Mbps"
    skip-cert-verify: true
    dialer-proxy: "🇭🇰 香港节点" # 【核心】借用机场的香港节点作为中转跳板

  # 方案 B:美国-GCP-隧道-直连(直连模式,不经过第三方中转)
  - name: "美国-GCP-隧道-直连"
    type: hysteria2
    server: 35.212.186.92
    port: 443
    password: "ss122119"
    up: "100 Mbps"
    down: "200 Mbps"
    skip-cert-verify: true

3.1.3 构建调度中心 (Proxy Groups)

我们需要一个可以在 Nikki UI 界面上自由点选的“按钮”。找到 proxy-groups: 段落,进行修改:

YAML

# 【位置:proxy-groups 列表内】
proxy-groups:
  # 这是一个“防呆设计”:只保留能通往美国 VPS 的两个正确选项
  - {name: 🚀 VPS 加速, type: select, proxies: [美国-GCP-隧道, 美国-GCP-隧道-直连]}
  • 为什么要把冗余节点删掉? 我们之前的对话中发现,如果在这个组里选了“香港节点”,FRP 就会因为找不到目的地而断开。所以,这个组必须精简到只有这两个选项。

3.2 FRP 客户端 (FRPC) 的“骗术”配置

这是实现加速的神来之笔。我们不再让 FRP 客户端直接去连接那个 200ms 延迟外的美国 IP,而是让它连接 R2S 自己。

  1. 打开 OpenWrt 插件:进入“服务” -> “FRP 客户端”。
  2. 设置服务器地址:填写 127.0.0.1原理:这就像是在 R2S 内部打了一个内线电话,告诉 FRPC 服务器就在这儿。
  3. 设置服务器端口:填写 5443原理:这对应了 Nikki 在 tunnels 里监听的入口。
  4. 填写 Token:输入你在 VPS 上设定的密码 aabbcc
  5. 保存并应用

3.3 实战:如何让下载速度稳定在 10MB/s?

你在之前的测试中发现,虽然连通了,但浏览器下载速度只有 2MB/S。我们通过两步操作完成了“破壁”:

3.3.1 突破 20Mbps 的心理防线

你最初在 Config-BBR加速.yaml 中设置的 up: "20 Mbps"

  • 计算公式:$20\text{ Mbps} \div 8 = 2.5\text{ MB/s}$。这就是你下载慢的元凶。
  • 解决办法:在 Nikki 节点的 proxies 配置中,将 up 修改为 100 Mbps。这让你的理论上传速度达到了 12.5 MB/s,从而让实测下载稳定在 10 MB/s

3.3.2 直连模式的“隐身”日志验证

你在测试直连模式时发现日志里没有了 35.212.186.92:443,只有 127.0.0.1:5443

  • 这意味着什么? 这说明隧道已经成功合并。当你看到 127.0.0.1:5443 有大量流量(比如 2.4 MB/s)时,说明你的数据正安全地跑在 Hysteria 2 隧道里。

3.4 本章避坑总结

  1. 关于 127.0.0.1 的归属:在 R2S 的 FRPC 里填 127.0.0.1 是为了找 Nikki;而在 Nikki 的 target 里填 127.0.0.1 是为了让包到了美国 VPS 后去找 FRPS。这两个 127.0.0.1 物理位置不同,但逻辑逻辑一致。
  2. 策略组的名字:你在 tunnels 里写的 proxy: 🚀 VPS 加速 必须和 proxy-groups 里的 name 完全一致(包括空格和表情符号),否则 Nikki 会因为找不到搬运工而罢工。
  3. 流量去向:如果你在 R2S 局域网内访问 YouTube,流量走的是常规机场节点;只有目标为 5443 端口的 FRP 流量才会进入我们的“特快专线”。

第三章结束。 此时,你已经完成了一套极其精密的“双层流量控制系统”。

第四章:避坑指南总结——那些让你彻夜难眠的“隐形墙”

折腾了两天,我们从最初的连不上面板,到最后的 10MB/s 极速下载,中间其实踩过了无数个坑。这些坑有些是技术文档没写清的,有些是逻辑上的“思维盲区”。在这一章中,我们将把这些血泪教训总结成一套**“防错闭环系统”**,确保你在后续维护或者重新部署时,不再掉进同一个坑里。

4.1 端口争夺战:谁才是 443 的真主人?

在整个架构中,443 端口是最高权力的象征,也是冲突最剧烈的地方。小白最常犯的错误就是让多个程序去抢这个端口。

4.1.1 致命的 quicBindPort

在 VPS 上的 frps.toml 配置文件里,默认可能包含一行 quicBindPort = 443

  • 坑在哪里:FRP 的 QUIC 传输协议本质上就是 UDP 443。而我们的 Hysteria 2 隧道也必须死守 UDP 443 来实现伪装。
  • 后果:如果你不注释掉 FRP 的这一行,FRP 会先于 Hysteria 启动并占领端口,导致 Hysteria 2 启动失败或报错 address already in use
  • 正确做法:在 frps.toml 中,必须在该行前加一个 # 号,将其彻底废除。

4.1.2 HTTPS 业务的“被迫迁徙”

原本我们习惯用 https://域名 访问服务,这默认指向 443。

  • 坑在哪里:既然 443 给了隧道,FRP 的 HTTPS 映射就绝对不能再用 443 了。
  • 解决办法:在 frps.toml 里将 vhostHTTPSPort 改为 7443
  • 代价:你以后访问时,地址栏必须手动加上端口,例如 https://yourdomain.com:7443

4.2 “127.0.0.1”的身份危机:它到底是谁?

在我们的配置文件中,127.0.0.1 出现了多次,小白最容易在这里搞混逻辑。

4.2.1 R2S 端的 127.0.0.1

在 R2S 的 FRPC 插件中,服务器地址填的是 127.0.0.1

  • 含义:这里的“127.0.0.1”代表 R2S 本身。FRPC 在这里发包,是为了把包交给同样运行在 R2S 里的 Nikki。

4.2.2 Nikki 配置文件里的 127.0.0.1

tunnelstarget 参数中,我们写的是 target: "127.0.0.1:5443"

  • 含义:这里的“127.0.0.1”代表 美国 VPS 本身
  • 逻辑链条:数据包通过隧道飞到美国后,Hysteria 服务端解开包,它会问:“这个包要去哪?”Nikki 告诉它:“去你本地(127.0.0.1)的 5443 端口找 FRPS 汇报。”

避坑金句127.0.0.1 永远指代“当前程序所在的这台机器”。

4.3 带宽“上下行”的认知颠倒

这是你之前遇到 “为什么我明明设了加速,下载还是只有 2MB/s” 的根本原因。

  • 常规思维:我要从家里下载文件,那对应的应该是“下行(Down)”。
  • 真实逻辑(内网穿透视角)
    1. 你在外面访问家里的 NAS。
    2. 家里的 R2S 需要把文件数据**“发出去”**给 VPS。
    3. 对于 R2S 来说,这是一个典型的 “上传(Up)” 行为。
  • 坑在哪里:如果你在 Nikki 节点的 proxies 里把 up 设成了 20 Mbps,那么无论你的宽带有多快,你的下载速度都会被死死限制在 $2.5\text{ MB/s}$。
  • 正确做法:将 up 参数大胆地设为 100 Mbps 甚至更高,只要不超过你家宽带的物理上传上限即可。

4.4 语法与格式:细节里的“魔鬼”

4.4.1 YAML 的缩进地狱

Nikki 的配置文件是 YAML 格式,它对空格极其敏感。

  • 避坑点:缩进必须使用空格,绝不能使用 Tab 键。如果少了一个空格,整个 Nikki 插件都会无法启动。

4.4.2 策略组名字的一致性

你在 tunnels 里指定的 proxy: 🚀 VPS 加速,必须与下面 proxy-groups 里的 name 一字不差。

  • 避坑点:注意那个“火箭”表情符号。如果你在策略组里加了表情,但在隧道配置里没加,流量就会因为找不到目的地而原地打转。

4.5 GCP 防火墙的“半截门”

小白经常只开了 TCP 端口而忘了 UDP 端口。

  • 后果:FRP 握手正常(TCP),但 Hysteria 2 隧道死活连不上。
  • 正确做法:在 GCP 后台,针对 443 端口,必须同时勾选 TCP 和 UDP(或者直接开 UDP)。

4.6 总结:如何判断哪里出错了?

当你发现系统不通时,请按照以下逻辑进行“三步排查法”:

  1. 看“连接”面板:如果 Nikki 里面连 127.0.0.1:5443 的记录都没有,说明你的 R2S 内部 FRPC 没跑起来
  2. 看“日志”输出:如果记录里显示 connection timed out,说明 VPS 防火墙没开 或者是 Hysteria 服务端没启动
  3. 看“下载速度”:如果连上了但下载极慢,请检查 Nikki 配置里的 up 参数 是否设置得太小。

第四章结束。 这一章总结了我们在实战中所有可能导致“翻车”的细节。理解了这些,你就已经能独立解决 90% 的穿透难题了。

第五章:常见问题百科 30 问——你所有好奇与纠结的终极答案

经过前四章的深度学习,你已经从一个对端口号感到头大的“纯小白”,进化成了能独自驾驭 Hysteria 2 隧道与 FRP 联动的“架构师”。然而,在实际运行中,总会有一些细碎的疑惑浮现:为什么速度刚好是这个数?为什么那个日志看不到了?

本章整理了我们在过去两天沟通中产生的所有核心疑问,共计 30 问,涵盖了原理、配置、测速与日常维护的方方面面。

5.1:关于速度与性能的真相

Q1:我设置了 up: 100 Mbps,为什么手机实测只有 10MB/S 左右?

A: 这是一个非常经典的单位误区。在计算机中,$1\text{ MB/s} = 8\text{ Mbps}$。理论上,100 Mbps 的极限速度是 $12.5\text{ MB/s}$。考虑到跨海线路的协议开销(Overhead)和约 200ms 的高延迟,能稳定在 10MB/S 已经是近乎满速的神仙表现了。

Q2:为什么播放视频(WebDAV)很快,但浏览器直接下载文件只有 2MB/S?

A: 浏览器原生下载通常是单线程。在高延迟线路上,单线程很难拉满带宽。而 nPlayer 等播放器通常会开启并发缓存,更容易触发 Hysteria 2 的全速模式。此外,请务必检查你的 up 参数是否还停留在最初的 20 Mbps

Q3:开启 BBR 加速真的有用吗?

A: 绝对有用。BBR 是 Google 开发的拥塞控制算法,它能让 VPS 在丢包环境下不再像传统算法那样盲目“减速”,而是尝试寻找真实的物理带宽。对于 Hysteria 2 这种暴力协议,BBR 就是它的“强力燃料”。

Q4:R2S 的 CPU 会被 Hysteria 2 烧坏吗?

A: 不会。R2S 虽然性能有限,但处理 100Mbps 级别的 Hysteria 2 加解密还是绰绰有余的。在高强度下载时,你可能会在 OpenWrt 后台看到 CPU 占用率飙升到 50% 以上,这是正常现象。

Q5:我把 up 改成 500 Mbps,速度能变 50MB/S 吗?

A: 大概率不能。你的最终速度受限于你家宽带的物理上传上限。如果你家光猫出来的上传只有 30M,你在软件里填 1000M 也没用。

5.2:关于 127.0.0.1 与端口的逻辑

Q6:FRPC 填 127.0.0.1,Nikki 也填 127.0.0.1,它们会打架吗?

A: 不会。这两个地址虽然字符一样,但身处不同的机器。FRPC 里的指的是 R2S;Nikki target 里的指的是美国 VPS。

Q7:为什么我的 HTTPS 业务一定要改到 7443 端口?

A: 因为 443 端口是 Hysteria 2 隧道的大门。如果我们把 FRP 映射也放在 443,VPS 会不知道这个包是给隧道的还是给网页的,导致两者都崩溃。

Q8:我如果选了“直连”模式,日志里为什么看不到 443 的连接了?

A: 因为直连模式下,Nikki 简化了显示逻辑。它把底层隧道连接(443)隐藏了,只向你展示逻辑上的数据交换(5443)。只要 5443 有上传下载速度,加速就在生效。

Q9:FRP 的 Bind Port 5443 和 Nikki 的 Tunnel 端口必须一样吗?

A: 为了不把自己搞晕,建议设为一致。你在 R2S 侧给 Nikki 开一个 5443 的窗户,Nikki 接到包后原样发往美国 VPS 的 5443 端口,逻辑最清晰。

Q10:webServer.port = 6443 是干什么用的?

A: 那是 FRP 的管理控制面板。你通过浏览器访问 http://VPS_IP:6443,输入 admin/admin,就能看到你的 R2S 是否在线。

5.3:关于安全与配置细节

Q11:skip-cert-verify: true 选了之后会有安全风险吗?

A: 这意味着 Nikki 不会核实 VPS 的证书是否是由正规机构颁发的。对于自用隧道,这是为了方便。只要你的密码(ss122119)没泄露,中间人很难破解你的数据。

Q12:为什么 frps.toml 里要注释掉 quicBindPort = 443

A: 这一步至关重要。FRP 的原生 QUIC 协议也会抢占 UDP 443。如果不关掉,Hysteria 2 服务端会因为端口被抢而无法启动。

Q13:alpn: [h3] 这个设置有什么深意?

A: 它是为了让隧道的握手特征看起来像标准的 HTTP/3 流量。运营商看到 h3,会认为你在浏览正常的网页或看视频,从而不会触发针对翻墙流量的拦截。

Q14:我的 FRP Token 设为 aabbcc 会不安全吗?

A: 在测试阶段没问题。但在正式环境下,建议设为复杂的长字符串,防止别人扫到你的端口后白嫖你的带宽。

Q15:为什么我的 dialer-proxy 要写“香港节点”?

A: 因为中国直连美国的 UDP 连接在晚高峰非常不稳定。让数据先通过优质的香港节点中转,能显著降低丢包率,让连接像丝般顺滑。

5.4:日常使用与故障排查

Q16:这套配置会影响我用电脑直接看 YouTube 吗?

A: 完全不会。常规的翻墙流量(YouTube/Google)走的是你 Nikki 里的 rules 规则;而 FRP 加速流量走的是特定的 tunnels 转发。它们就像两条平行的车道,互不干扰。

Q17:如果我换了手机(比如换成了 iQOO 15),需要重新配置吗?

A: 不需要。只要你家里的 R2S 和美国的 VPS 没变,手机端只需要访问你的域名+端口即可。

Q18:为什么我在 R2S 局域网内用域名访问很慢?

A: 因为发生了“回环”:数据先飞到美国,再钻回你家。在家里建议直接访问 R2S 的内网 IP(如 192.168.10.1),这样才是物理上的最快路径。

Q19:我的域名没续费了,会导致隧道断开吗?

A: 会。Hysteria 2 在握手时需要域名。如果解析失效,FRPC 会立即显示 Offline。

Q20:VPS 的流量费用会因为开启 Hysteria 2 而暴涨吗?

A: 会有一定程度的增加。Hysteria 2 采用了暴力重传机制,会产生额外的流量消耗。建议监控 GCP 的账单,避免天价欠费。

5.5:深度进阶 10 问

Q21:我可以把这个配置文件分享给别人用吗?

A: 不建议直接分享,因为里面包含你的 VPS IP、密码和 Token。如果分享,请务必抹去这些敏感信息。

Q22:为什么我的 R2S 连接面板里,127.0.0.1:5443 的源地址是 127.0.0.1

A: 这说明请求确实是由 R2S 内部的 FRP 插件发出的。这也侧面验证了你的隧道拦截配置是正确的。

Q23:除了 443,还有哪些端口适合做隧道伪装?

A: 理论上任何端口都可以,但 443、53 (DNS)、8080 是最不容易被公司或运营商封锁的“大众脸”端口。

Q24:什么是 dialer-proxy 的“逻辑闭环”?

A: 如果你的香港节点挂了,你的美国隧道也会跟着挂。这就是为什么我们在策略组里放了一个“直连”选项作为备胎。

Q25:我的网站 begoodtex.com 能直接跑在 7443 上吗?

A: 可以。只要你在 FRP 客户端里把对应的本地端口映射到远程的 7443 即可。

Q26:GCP 的防火墙规则需要区分 TCP 和 UDP 吗?

A: 必须区分。5443、6443 主要是 TCP;而 443 必须开启 UDP 才能支持 Hysteria 2。

Q27:为什么 Config-BBR加速.yaml 里的 allow-lan 必须设为 true

A: 这样你家里连接 R2S 的电脑、手机才能通过 R2S 正常访问外网。如果关了,R2S 就只能自己上网,没法当路由器用了。

Q28:我可以给不同的内网服务设置不同的加速策略吗?

A: 可以,但这需要极其复杂的分流规则。目前我们采用的全端口加速是最省心、效率最高的方案。

Q29:如果我想换个加速协议(如 TUIC),架构要改吗?

A: 逻辑不变。你只需要在 VPS 安装 TUIC 服务端,在 Nikki 里新增一个 TUIC 节点,然后把 tunnels 里的 proxy 目标换掉即可。

Q30:我是不是已经彻底搞定内网穿透了?

A: 是的。你通过这两天的学习,已经掌握了目前内网穿透领域的“天花板”级加速技术。你不再是那个只会跑脚本的小白,而是一个懂原理、能调优的“准大神”。

至此,这本《小白毕业全书》正式完结。

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注