切換選單
切換偏好設定選單
切換個人選單
尚未登入
若您做出任何編輯,會公開您的 IP 位址。

IP 被牆怎麼辦?使用 cloudflare 配置代理

出自md5.pw
這是此頁面最近一次修訂;沒有已批准修訂。

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 服务

工作流程:

  1. 客戶端訪問域名
  2. 請求進入 Cloudflare CDN
  3. Cloudflare 將請求轉發到源伺服器
  4. 伺服器 WebSocket 接收連接
  5. VMess 處理代理流量

優點:

  • 隱藏伺服器真實 IP
  • 使用 HTTPS 443 埠
  • 流量看起來像正常網站訪問

三、準備條件

1 伺服器

需要一台海外伺服器,並且已經安裝:

  • VMess 服務
  • WebSocket 支持

例如:

  • VPS
  • 雲伺服器

2 域名

需要一個域名,並託管到 Cloudflare。

例如:

example.com

3 Cloudflare 帳戶

註冊並添加域名到 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 被放出來。