固定 Cloudflare Tunnel 怎么填写?

 

固定 Cloudflare Tunnel 怎么填写?

如果只是测试,可以直接用默认的临时 trycloudflare 隧道。
但如果你想让节点地址长期稳定,建议使用 固定 Cloudflare Tunnel

固定 Tunnel 的好处是:

  • 域名固定,不会每次重启都变化

  • 订阅地址更稳定

  • 可以使用自己的 Cloudflare 域名

  • 后续客户端不用频繁更换链接

这里重点讲一下 katabump-node 里的三个配置应该怎么填。


1. 先在 Cloudflare 创建 Tunnel

进入 Cloudflare Zero Trust 后,大致路径是:

Zero Trust
→ Networks
→ Tunnels
→ Create a tunnel

然后选择:

Cloudflared

给 Tunnel 起一个名字,例如:

katabump-node

创建完成后,Cloudflare 会给你一段安装命令,里面会包含一段很长的 token。

命令大概长这样:

cloudflared tunnel run --token eyJhIjoi...

这里你真正需要复制的是 --token 后面的那一长串内容。

也就是:

eyJhIjoi...

这个就是后面要填进 ARGO_TOKEN 的值。

注意:ARGO_TOKEN 是敏感信息,不要发到评论区,也不要提交到公开仓库。


2. 添加 Public Hostname

Tunnel 创建好以后,需要给它绑定一个公开访问域名。

在 Cloudflare Tunnel 页面里找到刚创建的 Tunnel,然后进入配置页面,添加 Public Hostname。

可以这样填:

Subdomain: node
Domain: yourdomain.com
Path: 留空

这样最终访问域名就是:

node.yourdomain.com

下面的 Service 一般填写你的容器本地服务地址。

如果你的 katabump-node 默认监听端口是 20026,那么 Service 可以填:

http://localhost:20026

如果 KataBump 给你的容器实际端口不是 20026,而是通过环境变量指定了其他端口,就按实际端口填写。

例如平台实际端口是 3000,那就填:

http://localhost:3000

简单理解:

Public Hostname = 外部访问域名
Service URL = 容器内部服务地址

Cloudflare 官方文档里也是这个逻辑:创建 Tunnel 后添加 Published application route,选择子域名和域名,然后在 Service URL 里填写应用的协议和地址,例如 http://localhost:8000


3. 修改 start.sh 里的固定隧道配置

打开 katabump-node 仓库里的:

start.sh

找到顶部这几行配置:

ARGO_TOKEN=""
ARGO_DOMAIN=""
ALLOW_TEMP_TUNNEL="1"

如果你要使用固定 Cloudflare Tunnel,就改成:

ARGO_TOKEN="你的Cloudflare Tunnel Token"
ARGO_DOMAIN="node.yourdomain.com"
ALLOW_TEMP_TUNNEL="0"

例如:

ARGO_TOKEN="eyJhIjoixxxxxxxxxxxxxxxxxxxxxxxx"
ARGO_DOMAIN="node.example.com"
ALLOW_TEMP_TUNNEL="0"

这三个值分别是什么意思?

ARGO_TOKEN

填 Cloudflare Tunnel 的 token,也就是 cloudflared tunnel run --token 后面的那一长串。

ARGO_DOMAIN

填你在 Cloudflare Public Hostname 里绑定的完整域名,比如:

node.example.com

注意不要填 https://,只填域名本身。

正确:

node.example.com

错误:

https://node.example.com
ALLOW_TEMP_TUNNEL

是否允许使用临时 trycloudflare 域名。

固定 Tunnel 模式下要填:

0

临时 Tunnel 模式下才填:

1

4. 固定 Tunnel 完整填写示例

假设你的 Cloudflare 域名是:

example.com

你想用:

node.example.com

作为节点入口。

那么 Cloudflare Public Hostname 这样填:

Subdomain: node
Domain: example.com
Path: 留空
Service Type: HTTP
Service URL: localhost:20026

对应 start.sh 这样填:

ARGO_TOKEN="eyJhIjoixxxxxxxxxxxxxxxxxxxxxxxx"
ARGO_DOMAIN="node.example.com"
ALLOW_TEMP_TUNNEL="0"

启动命令仍然是:

node /home/container/index.js

容器启动后,脚本会读取 ARGO_DOMAIN,然后生成包含这个固定域名的 VLESS 链接和订阅内容。

后面你访问:

https://node.example.com

应该可以看到项目首页。

访问:

https://node.example.com/node

可以查看节点页面。

访问:

https://node.example.com/sub

可以获取订阅内容。


5. 怎么判断固定 Tunnel 成功?

启动后先看:

/logs

重点看 cloudflared 是否成功连接。

然后看:

/node

如果页面里不再是 trycloudflare.com,而是你的固定域名,例如:

node.example.com

就说明固定 Tunnel 已经生效。

也可以看:

/node.json

如果里面的 hostsni 或链接里的域名都变成了你的 ARGO_DOMAIN,说明配置正常。


6. 常见填写错误

错误一:ARGO_DOMAIN 填了 https://

错误写法:

ARGO_DOMAIN="https://node.example.com"

正确写法:

ARGO_DOMAIN="node.example.com"

ARGO_DOMAIN 只填域名,不要带协议头。


错误二:只填 ARGO_TOKEN,不填 ARGO_DOMAIN

错误写法:

ARGO_TOKEN="eyJhIjoixxxxxxxxxxxxxxxxxxxxxxxx"
ARGO_DOMAIN=""
ALLOW_TEMP_TUNNEL="0"

这样 Tunnel 可能能启动,但脚本不知道应该用哪个域名生成客户端链接。

正确写法:

ARGO_TOKEN="eyJhIjoixxxxxxxxxxxxxxxxxxxxxxxx"
ARGO_DOMAIN="node.example.com"
ALLOW_TEMP_TUNNEL="0"

错误三:Public Hostname 的 Service 端口填错

如果你的 Node.js 服务监听的是:

20026

那 Cloudflare Service 就应该填:

http://localhost:20026

如果你填成:

http://localhost:8080

可能会导致 Cloudflare 域名打开 502 或无法访问。


错误四:ALLOW_TEMP_TUNNEL 没改成 0

如果你已经配置了固定 Tunnel,就应该关闭临时 Tunnel:

ALLOW_TEMP_TUNNEL="0"

否则脚本可能仍然按临时 trycloudflare 模式处理。


简单总结

固定 Cloudflare Tunnel 只需要记住这一组对应关系:

Cloudflare Tunnel Token  →  ARGO_TOKEN
Cloudflare 绑定的完整域名  →  ARGO_DOMAIN
是否关闭临时隧道  →  ALLOW_TEMP_TUNNEL="0"

完整示例:

ARGO_TOKEN="eyJhIjoixxxxxxxxxxxxxxxxxxxxxxxx"
ARGO_DOMAIN="node.example.com"
ALLOW_TEMP_TUNNEL="0"

Cloudflare Public Hostname 示例:

node.example.com → http://localhost:20026

这样配置完成后,KataBump 容器里的服务就可以通过固定 Cloudflare 域名访问,订阅地址和节点链接也会更加稳定。

评论

此博客中的热门博文

2026最全免费AI API盘点!每月白嫖16亿Token,零成本实现大模型自由!

【保姆级】免费接入 Claude Opus 4.7:sub2api 中转站 + Hermes Agent 部署全攻略

免费 1TB 私人网盘搭建指南:文件直链生成器 + Alist 完美挂载!