1. ICMP 代理权限警告
WRN The user running cloudflared process has a GID (group ID) that is not within ping_group_range...
- 原因:容器内用户的组 ID 不在系统允许的 ping 权限范围内,导致 ICMP 代理功能被禁用。
- 解决:这是警告而非错误,不影响隧道核心功能,可忽略。若想修复,需调整宿主机的 ping 权限范围:
-
# 在宿主机执行,临时生效
sudo sysctl -w net.ipv4.ping_group_range="0 65535"
# 永久生效(需重启)
echo "net.ipv4.ping_group_range=0 65535" | sudo tee -a /etc/sysctl.conf
# 重新加载配置
sudo sysctl -p
2. 缺少 origin certificate
ERR Cannot determine default origin certificate path. No file cert.pem in [...]
- 原因:Cloudflare Tunnel 需要 origin certificate 进行身份验证,但未找到该文件。
- 解决:方法:手动指定一个空的证书路径(无需实际文件),通过环境变量规避检查:
在docker中添加环境变量: TUNNEL_ORIGIN_CERT=/dev/null
用空路径规避证书检查
2.1.在非 Docker 环境(直接在主机上运行 cloudflared
)中,解决缺少 origin certificate
- 进入你的域名管理页面 → SSL/TLS → 源服务器(Origin Server)
- 点击 创建证书(Create Certificate)
- 点击 确认 后,会显示证书内容:
- 如果不想使用默认路径,可在启动命令中通过
--origincert
参数指定证书位置: cloudflared tunnel run --origincert /path/to/your/cert.pem --token <你的隧道令牌>
3. QUIC 连接超时
ERR failed to dial a quic connection error="failed to dial to edge with quic: timeout: no recent network activity"
- 原因:隧道无法通过 QUIC 协议(UDP 443 端口)连接到 Cloudflare 边缘节点,可能是网络限制导致。
- 解决:
- 将命令改为
--protocol http2
(http2
是基于 TCP 的协议):即docker启动命令改为 tunnel --no-autoupdate run --protocol http2 --token <你的隧道令牌>
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容