VicroCode
让代码创造价值
VicroCode是一个轻量级代码在线发布、交易平台,开箱即用,免部署、免服务器、免备案,支持接入智能体、通用管理系统、游戏等多种项目
稍候片刻,您可先学习AI编程手册
正在加载中...

市场信息

[程序员] Cloudflare + DMIT + edgetunnel:一条可切换的双入口节点

Cloudflare + DMIT + edgetunnel:一条可切换的双入口节点 本文记录一次完整落地:DMIT VPS 上的 VLESS 作为可控出口,Cloudflare Workers 上的 edgetunnel 作为边缘入口,FlClash 里两套节点并存。最后链式 SOCKS 验证通过,落地 IP 回到同一台洛杉矶机器。

www.v2ex.com · 2026-09-29T02:41:46+00:00

/ai-market-guide/ Cloudflare + DMIT + edgetunnel:一条可切换的双入口节点 本文记录一次完整落地:DMIT VPS 上的 VLESS 作为可控出口,Cloudflare Workers 上的 edgetunnel 作为边缘入口,FlClash 里两套节点并存。最后链式 SOCKS 验证通过,落地 IP 回到同一台洛杉矶机器。

公开前请轮换面板密码、UUID 和 SOCKS 账密。文中参数来自这次实测,仅作过程说明。

  1. 要解决什么 需求很具体: 有一台 DMIT (洛杉矶),希望出口 IP 稳定、自己可控。域名已在 Cloudflare ,希望必要时用 CDN/Workers 藏源站、走 443 。

客户端用 FlClash 和小火箭,不要两套互不相干的订阅。后来又加了一层:能否「不靠自己的 2083 端口」进网,但仍从这台 VPS 出网。

这就是 edgetunnel 链式代理要做的事。最终形态: 客户端 ├─ DMIT-直连 v.s7ea.com:2083 VLESS + WS + TLS 出口 = VPS └─ CF-边缘 edt.s7ea.com:443 edgetunnel Worker └─(可选) SOCKS5 → VPS:10808 出口 = 同一台 VPS 2. 环境 项 值 VPS DMIT ,Ubuntu ,密钥登录 IPv4 / IPv6 45.59.186.107 / 2605:52c0:3:6a7:be24:11ff:fea2:929a 直连域名 v.s7ea.com (先灰云指源站) Worker 域名 先 edgetunnel.zhoh2019.workers.dev ,后绑 edt.s7ea.com 面板 3x-ui + Xray 边缘 cmliu/edgetunnel ,fork 在 zhostev/edgetunnel 客户端 FlClash 、Shadowrocket 3. 第一段:只做 VPS 上的 VLESS 方案是 VLESS + WebSocket + TLS ,端口 2083 ( Cloudflare 可反代的 HTTPS 端口),路径 /cfws 。

顺序不能反: DNS 先灰云,A 记录指 VPS 。橙云会挡住 Let’s Encrypt 的 HTTP-01 。

安装 3x-ui 。 3.8.5 会把订阅服务和面板抢同一个端口,把 subPort 改走或关掉订阅服务。

解析未好时先自签证书,入站能起来;解析通了再用 acme.sh standalone 换 Let’s Encrypt 。入站:VLESS 、2083 、TLS 、WS 、 /cfws 、SNI/Host 均为 v.s7ea.com ,flow 留空。

直连分享链接形态: vless:// @v.s7ea.com:2083? encryption=none&security=tls&sni=v.s7ea.com&fp=chrome&type=ws&host=v.s7ea.com&path=%2Fcfws#cf-vless 测通标准是访问 /ai-market-guide/ : ip=2605:52c0:3:6a7:be24:11ff:fea2:929a colo=LAX loc=US warp=off 出口是这台机器的 IPv6 ,不是本地 ISP 。

  1. FlClash 的两个坑 FlClash 「添加配置」只有二维码、文件、URL 。 URL 只要 https:// 订阅,不要 vless:// 。

把分享链接贴进去会报「必须为 URL 」,还容易把 UUID 截断。单节点应走「从剪贴板导入」,或写一份 Clash Meta YAML 用「文件」导入。

直连节点在 Clash 里对应: - name: DMIT-直连 type: vless server: v.s7ea.com port: 2083 uuid: network: ws tls: true servername: v.s7ea.com client-fingerprint: chrome ws-opts: path: /cfws headers: Host: v.s7ea.com 小火箭可以直接吃 vless:// ,没有这个问题。 5. 第二段:加上 edgetunnel edgetunnel 把 VLESS 入站放到 Cloudflare Workers / Pages ,不需要再买一台机器。

它不是「没有服务器」,只是入站不跑在你的 Linux 上。出站默认走 Worker 自己的连接或项目内置的 ProxyIP 。

部署选择: Pages 上传 zip:适合不想碰 Git 的人。 Pages 连 GitHub:适合以后要改代码。

本次实际生效的是 Workers 域名 *.workers.dev ,再绑自定义域。必做三项: 变量 ADMIN 、建议固定 UUID (与 3x-ui 同一枚)。

KV 绑定的 变量名 必须是 KV ,不是 kv 。命名空间叫什么无所谓,先在「存储和数据库 → KV 」里创建一个再选。

未配 ADMIN 时,所有路径都会显示伪装页(例如 Welcome to nginx ), /admin 也不例外。面板起来后会出现「随机优选 16 个 CF IP 」。

那是给 workers.dev 被干扰时换 Anycast IP 用的,和「出口锁定自己的 VPS 」是反着的。自用应改成自定义列表只留自己的域名,或直接「复制节点」。

  1. workers.dev 通不了,要换自己的域名 FlClash 里一度出现:DIRECT 有延迟,Worker 节点全 Timeout 。原因不是 UUID ,是 *.workers.dev 在客户端网络里不稳定。

绑定 edt.s7ea.com 之后,从公网看: 解析到 Cloudflare Anycast 证书 SAN 包含 edt.s7ea.com /admin 已是中文设置页 但面板会弹窗:**当前访问域名是 edt.s7ea.com ,节点伪装域名仍是 workers.dev **。不改 HOST ,复制节点和订阅就会继续下发打不开的地址。

在「详细配置信息」把 HOST 改成 edt.s7ea.com 并保存。客户端的 server / SNI / Host 必须一致,路径用后台生成的,不要套用 VPS 上的 /cfws 。

改完后 FlClash 出现: DMIT-直连 225 ms CF-边缘 196 ms 两条都绿。此时若走 CF-边缘看 cdn-cgi/trace ,出口可能是: ip=104.28.163.182 colo=AMS loc=NL 说明 Worker 自己出网了,还没有回到 DMIT 。

  1. 链式 SOCKS:从 Loop 到验证通过 为了让 CF-边缘的出口也是 VPS ,在 3x-ui 增加 mixed 入站( SOCKS5 + HTTP ),端口 10808 ,账密认证。 Worker 作为客户端去连这个端口。

edgetunnel 「添加链式代理」里有一个容易踩的验证逻辑: Worker → SOCKS → 再访问「优选」地址 「优选」若填 edt.s7ea.com 或 1.1.1.1 ,会绕回 Cloudflare 。 Worker 运行时禁止再连 CF 自己的地址,报错: TCP Loop detected, contact us if this doesn't seem right. 正确填法: 栏 值 优选 8.8.8.8 (不要 1.1.1.1 ,不要自己的 Worker 域名) 链式代理 socks5 地址 用户:密码 @45.59.186.107:10808 (端口不能省) 验证通过时面板显示: 优选入口 8.8.8.8 → SOCKS5 → 落地 2605:52c0:3:6a7:… 地区 US ,约 540ms 落地 IPv6 与直连测速是同一台机器。

链式比直连多一跳,延迟从约 200ms 升到约 540ms ,符合预期。点「添加」保存后,再走 CF-边缘看 cdn-cgi/trace ,目标是 ip 回到 VPS 、 colo 靠近 LAX 。

若验证长期 Loop:可以放弃链式,两套节点分开用。公网再暴露 10808 收益有限。

本次最后是验证通过,链式可以留作「 CF 入口 + VPS 出口」。 8. 客户端怎么组织 一份 YAML 足够: proxies: - name: DMIT-直连 type: vless server: v.s7ea.com port: 2083 # ws + tls + path /cfws - name: CF-边缘 type: vless server: edt.s7ea.com port: 443 # ws + tls + path 用后台给出的,常见 /?

ed=2560 proxy-groups: - name: PROXY type: select proxies: - DMIT-直连 - CF-边缘 - DIRECT 策略建议: 要稳定出口、流媒体、可控 IP:选 DMIT-直连。 2083 或源站 IP 被干扰:选 CF-边缘(已链式则出口仍是 VPS )。

不要用「随机优选 16 」那种自动选择组当主力,Timeout 时会整组挂掉。全局模式下 DIRECT 探活变红可以忽略。

  1. 排障备忘 现象 原因 FlClash 「必须为 URL 」 把 vless:// 贴进订阅框 /admin 是 nginx 欢迎页 未设置 ADMIN ,或 KV 变量名不是 KV 列表里全是「 CF 官方优选」 开了随机优选,不是自己的域名 workers.dev 节点 Timeout 、直连正常 换自定义域,并改面板 HOST 自定义域能开后台,节点仍下发 workers.dev HOST 未改 cdn-cgi/trace 在 AMS / 104.28.* Worker 未走 SOCKS 链式报 TCP Loop 优选填了 CF 地址或自身域名 链式验证通过但延迟高 正常,多一跳 10. 安全 3x-ui 面板不要长期裸奔在公网明文端口。 SOCKS 10808 必须强密码;不用链式就关掉入站。

UUID 、订阅 token 、SOCKS 账密不要写进公开 Git 。 fork 仓库只放说明,机密放 Workers 变量。

workers.dev 和订阅 URL 都相当于入口,token 泄漏等于节点泄漏。 11. 结论 可以合成,但不要幻想「一个 Worker 取代 VPS 」。

VPS 提供出口质量和 IP 归属。 Worker 提供 443 、CF 证书、自定义域、在 workers.dev 不好用时的另一条入口。

链式 SOCKS 能把两条合成「同一出口」,代价是延迟和一次容易误报的 Loop 检测。 FlClash 要用对导入方式,HOST 要和正在访问的域名对齐。

落地顺序压缩成一句:先灰云把 2083 跑通,再上 Worker 和自定义域,最后才考虑 SOCKS 回源。反过来排障

返回 AI 市场导读

来源:v2ex.com