將來源站點接入阿里雲CDN服務後,您可以通過IP偵查工具,檢測用戶端請求實際訪問的IP是否為CDN加速節點IP,判斷加速是否生效。
適用情境
-
驗證CDN接入:網域名稱完成CNAME配置後,確認使用者訪問已調度至CDN節點,而非來源站點。
-
排查線上故障:根據使用者訪問緩慢、逾時等反饋,判斷請求是否經過CDN。
-
若請求經過CDN,則問題可能在CDN節點、回源或來源站點。
-
若未經過CDN,問題可能在DNS解析或用戶端環境。
-
操作步驟
步驟一:擷取待檢測的IP地址
方法一:(推薦)使用瀏覽器開發人員工具
-
在Chrome或Edge中按 F12,開啟開發人員工具,切換到Network(網路)面板。
-
訪問您的阿里雲加速網域名稱(如 CDN 網域名稱)。
-
在請求列表中,點擊類型為Document的首頁面請求。
-
在詳情中查看Remote Address,即為實際串連的阿里雲加速節點 IP。
方法二:使用curl命令
執行以下命令,輸出中 Connected to 後的IP即為實際串連的IP。
# 將 <您的加速網域名稱> 替換為實際的加速網域名稱
curl -vso /dev/null https://<您的加速網域名稱> 2>&1 | grep "Connected to"
步驟二:使用IP偵查工具
控制台(推薦)
在CDN控制台的IP檢測頁面,輸入待檢測的IP地址後,單擊開始檢測。
API
調用BatchDescribeCdnIpInfo介面,批量查詢IP是否為CDN節點介面。
-
支援檢測IPv4和IPv6地址。
-
單次最多支援查詢20個IP地址。
步驟三:通過回應標頭判斷請求是否命中CDN緩衝
除了通過IP偵查工具判斷加速是否生效,您還可以通過檢查HTTP回應標頭來判斷請求是否經過CDN以及是否命中了CDN緩衝。
執行以下命令,查看加速網域名稱的HTTP回應標頭:
# 將 <您的加速網域名稱> 替換為實際的加速網域名稱
curl -I https://<您的加速網域名稱>
在返回的回應標頭中,重點關注以下兩個欄位:
-
X-Cache:表示CDN快取命中狀態。
-
HIT:請求命中CDN節點緩衝,資源由CDN節點直接返回,未回源。 -
MISS:請求未命中CDN節點緩衝,CDN回源擷取資源。
-
-
Via:表示請求經過的中間代理節點。若該欄位包含CDN節點標識(如
cache),說明請求經過了CDN。
回應標頭樣本:
HTTP/2 200
x-cache: HIT TCP_MEM_HIT
via: cache21.l2cn3000[146,0], cache10.cn3000[1,0]
上述樣本中,X-Cache為HIT表示快取命中,Via欄位包含cache標識表示請求經過了CDN節點。
結果分析
1. 檢測結果為CDN節點
-
說明:該 IP屬於CDN邊緣節點,檢測結果將顯示所屬地區和電訊廠商。
-
用途:可用於確認用戶端實際訪問的加速節點位置,輔助網路問題定位。
2. 檢測結果不是CDN節點
-
說明:該IP不在CDN節點庫中,系統無法識別其歸屬。
-
可能原因及排查建議:
-
輸入的不是加速網域名稱對應的節點 IP
可參考上述“擷取待檢測的IP地址”的說明。
-
直接存取了來源站點IP或網域名稱
-
若繞過CDN(如直接使用來源站點 IP、未配置CNAME或本地hosts強制解析),則串連的是來源站點而非CDN節點。
-
請確認:
-
網域名稱已正確接入CDN
-
DNS解析已指向CDN提供的CNAME地址
-
本地無hosts或代理幹擾。
-
-
-
IP 為內網地址、本地迴環或非公網IP
-
如
127.0.0.1、192.168.x.x、10.x.x.x等,此類地址不屬於 CDN 節點。 -
請確保在公網環境下測試,並使用真實用戶端訪問。
-
-