IP 被墙怎么办?使用 cloudflare 配置代理
更多语言
更多操作
IP 被墙怎么办?使用 Cloudflare 配置代理
当服务器 IP 被墙后,中国网络无法直接连接服务器,即使服务器本身仍然正常运行。 一种常见的解决方案是使用 Cloudflare CDN 进行反向代理,通过域名访问服务器,从而绕过 IP 封锁。
本文以 VMess + WebSocket (WS) 为例,介绍如何通过 Cloudflare 代理被封锁的服务器。
一、问题背景
当服务器 IP 被封锁后,通常会出现以下情况:
- 国内网络无法连接服务器 IP
- ping IP 不通
- TCP 连接超时
- 服务器在海外访问正常
这种情况通常称为:IP 被墙
但如果服务器仍然可以被海外网络访问,那么就可以通过 CDN 代理的方式进行中转访问。
Cloudflare 可以作为一个中间层:
客户端 → Cloudflare CDN → 服务器
这样客户端访问的是 Cloudflare 节点 IP,而不是服务器真实 IP。
二、方案原理
整体结构如下:
客户端
↓
Cloudflare CDN
↓
服务器 WebSocket
↓
VMess 服务
工作流程:
- 客户端访问域名
- 请求进入 Cloudflare CDN
- Cloudflare 将请求转发到源服务器
- 服务器 WebSocket 接收连接
- VMess 处理代理流量
优点:
- 隐藏服务器真实 IP
- 使用 HTTPS 443 端口
- 流量看起来像正常网站访问
三、准备条件
1 服务器
需要一台海外服务器,并且已经安装:
- VMess 服务
- WebSocket 支持
例如:
- VPS
- 云服务器
2 域名
需要一个域名,并托管到 Cloudflare。
例如:
example.com
3 Cloudflare 账户
建议选择:
- 免费套餐即可
四、服务器端配置
本文以 VMess + WebSocket 为例。
1 VMess WebSocket 配置(或者任何其他一键脚本 ui 等等,确认你能对应上配置即可)
示例配置:
{
"inbounds": [
{
"port": 10000,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "你的UUID",
"alterId": 0
}
]
},
"streamSettings": {
"network": "ws",
"wsSettings": {
"path": "/ray"
}
}
}
]
}
配置说明:
| 参数 | 说明 |
|---|---|
| port | VMess监听端口 |
| id | 用户UUID |
| network | 使用 WebSocket |
| path | WebSocket路径 |
2 WebSocket Path
建议使用一个不明显的路径,例如:
/[uuid]
/[random-text]
避免使用明显的:
/vmess
/v2ray
/proxy
五、Cloudflare 配置
登录 Cloudflare 后进行以下配置。
1 添加 DNS 记录
进入:
Cloudflare → DNS
添加记录:
ray.example.com → 服务器IP
并开启 代理(橙色云)
如果是灰色云,则说明没有走 Cloudflare CDN。
2 SSL 设置
进入:
SSL/TLS → Overview
推荐设置为:
Full
说明:
| 模式 | 说明 |
|---|---|
| Flexible | 不推荐 |
| Full | 推荐 |
| Full (Strict) | 需要源站证书 |
3 WebSocket 支持
Cloudflare 默认支持 WebSocket。
只需要确保:
- 使用 443
- 使用 HTTPS
无需额外开启。
六、客户端配置
客户端填写以下参数:
地址: ray.example.com
端口: 443
UUID: 你的UUID
加密: auto
传输协议: WebSocket
路径: /ray
TLS: 开启
配置示例:
server: ray.example.com
port: 443
uuid: xxxxxxxx
network: ws
path: /ray
tls: true
七、连接测试
配置完成后可以进行测试。
1 ping 域名
ping ray.example.com
返回 IP 应该是 Cloudflare IP。
[截图:ping 返回 Cloudflare IP]
2 检查 CDN 是否生效
可以访问:
https://ray.example.com
如果返回:
400 Bad Request
通常说明 WebSocket 服务已经正常运行。
3 客户端连接
打开客户端连接节点。
如果成功:
- 可以正常访问外网
- IP 不再暴露
八、常见问题
1 无法连接
检查:
- DNS 是否开启 Cloudflare 代理
- WebSocket path 是否一致
- TLS 是否开启
- 端口是否 443
2 Cloudflare 522 错误
522 表示:
Cloudflare 无法连接源站
可能原因:
- 服务器防火墙阻止
- 端口未开放
- 服务未启动
3 Cloudflare 523 错误
523 表示:
源站不可达
通常是:
- IP 填写错误
- 服务器网络问题
九、安全建议
为了提高安全性,建议:
- 隐藏服务器真实 IP
- 使用防火墙限制访问
- 定期更换 UUID
- 使用复杂 WebSocket Path
例如:
/api/v1/socket
/ws-9f8a7b
十、总结
当服务器 IP 被墙后,可以通过 Cloudflare CDN 代理继续使用服务器。
优势:
- 隐藏真实 IP
- 流量伪装为 HTTPS
- 配置简单
- 免费可用
适用协议:
- VMess
- WebSocket
- HTTPS
是一种非常常见的解决方案。如果 ip 暂时被墙,可以临时使用该方案,等 ip 被放出来。
[[Category:500 常见应用指南 — Application Guides]] Category:500 常见应用指南 — Application Guide