全部產品
Search
文件中心

CDN:配置IP黑/白名单

更新時間:Sep 18, 2025

當業務面臨惡意IP盜刷或特定攻擊時,可通過配置IP黑白名單,在CDN邊緣節點根據訪問來源對請求進行過濾。此功能允許您僅允許存取可信IP(白名單)或精準攔截已知惡意IP(黑名單),從而保護來源站點資源,降低安全風險。

使用情境

配置項

使用情境

IP白名單

  • 保護內部敏感性資料:僅允許指定的IP訪問敏感性資料或資源,確保資料安全。

  • 第三方服務對接:確保只有可信的第三方服務IP能夠訪問CDN資源。

IP黑名單

  • 防止惡意攻擊:檢測到某IP頻繁發起異常請求時,將其加入黑名單,禁止惡意的IP訪問。

  • 地區訪問限制:禁止高風險地區的IP訪問(如某些政策限制的國家), 封鎖來自某些國家或地區的IP位址區段。

計費說明

配置IP黑/白名单功能本身不收費,但被攔截的請求仍會產生少量費用。

  • 計費原理:攔截髮生在HTTP請求處理階段(七層),此時CDN節點已經處理了請求,消耗了資源。

  • 計費項目:

    • 流量費用:被攔截的請求會產生一次請求(包含HTTP頭)和一次響應(403頁面)的流量。這部分流量按標準CDN流量計費。

    • HTTPS請求數費用:如果網域名稱使用HTTPS協議,由於TLS握手在IP攔截前已經完成,因此每次被攔截的HTTPS請求仍會計算一次HTTPS請求數費用。

注意事項

  • 一個網域名稱只能配置一條IP黑名單或IP白名單規則,且兩者互斥,無法同時配置。

  • 配置IP黑名單後,黑名單中的IP請求仍然可以到達CDN節點,但會被節點拒絕並返回403狀態代碼。此時,CDN日誌中會記錄這些IP的請求資訊,但這並不意味著IP黑名單未生效。

  • 少數互連網服務提供者(ISP)在特定地區可能會分配私人IP地址給使用者端,導致CDN節點接收到的是使用者的私人IP地址。

    說明

    私人IP位址範圍有以下三個:

    • A類私人IP地址:10.0.0.0~10.255.255.255,子網路遮罩:10.0.0.0/8

    • B類私人IP地址:172.16.0.0~172.31.255.255,子網路遮罩:172.16.0.0/12

    • C類私人IP地址:192.168.0.0~192.168.255.255,子網路遮罩:192.168.0.0/16

操作步驟

  1. 登入CDN控制台

  2. 域名管理頁面,找到目標網域名稱,單擊操作列的管理

  3. 在指定網域名稱的左側導覽列,單擊访问控制

  4. IP黑/白名单地區,單擊修改配置

  5. 您可以根據下方樣本,快速進行配置。您也可以參考參數說明,添加適用於自身業務的配置。

    • 情境一:保護管理後台(白名单+規則引擎

      • 目標:僅允許公司辦公室出口 IP 203.x.x.10 和 203.x.x.11 訪問 /admin/ 路徑。

      • 配置:

        • 類型:選擇 白名单

        • 規則:填入 203.x.x.10 和 203.x.x.11(換行分隔)。

        • 進階配置-IP規則:選擇使用真實建連IP作為判斷依據

        • 進階配置-規則條件:在規則引擎頁面配置一個規則,規則內容為URI包含/admin/*其中任意一個,忽略大小寫。然後在規則條件選擇此規則。

          image

      • 結果:只有來自這兩個 IP 的請求才能訪問 /admin/ 目錄,其他所有 IP 對該目錄的訪問都將被拒絕並返回 403 狀態代碼。

    • 情境二:允許夥伴的 IPv6 網段訪問(白名单

      • 目標:僅允許夥伴的 IPv6 網段 FC00:0AA3:0000:0000:0000:0000:0000:0000/48 訪問。

      • 配置:

        1. 類型:選擇 白名单

        2. 規則:填入 FC00:0AA3:0000:0000:0000:0000:0000:0000/48

        3. 進階配置-IP規則:選擇使用真實建連IP作為判斷依據

      • 結果:只有來自該 IPv6 位址範圍的請求可以訪問您的網域名稱資源。

    • 情境三:緊急封鎖攻擊源(黑名单

      • 目標:發現一個來自198.x.x.0/24網段的 CC 攻擊,需緊急封鎖。

      • 配置:

        1. 類型:選擇 黑名单

        2. 規則:填入 198.x.x.0/24

        3. 進階配置-IP規則:選擇 使用真實建連IP作為判斷依據

      • 結果:所有來自 198.x.x.0/24 網段的 IP 請求都將被 CDN 節點拒絕。

參數說明

參數

說明

類型

選擇黑名单白名单

  • 黑名单:列表中的IP地址將被拒絕訪問,返回403狀態代碼。

  • 白名单:僅允許清單中的IP地址訪問,其他所有IP都將被拒絕。

規則

規則格式要求

  1. 支援輸入IP地址或者IP位址區段。

  2. 輸入多個IP地址或者IP位址區段時,使用分行符號分隔。

  3. 支援IPv4類型的地址或者位址區段:

    1. IPv4地址樣本:192.168.0.1

    2. IPv4位址區段樣本:192.168.0.0/24

    3. 不支援輸入通配網路地址0.0.0.0/0,如果需要表示全量IPv4地址,可以用以下兩個子網來表示:

      1. 0.0.0.0/1

      2. 128.0.0.0/1

  4. 支援IPv6類型的地址或者位址區段:

    1. IPv6地址樣本:FC00:AA3:0:23:3:300:300A:1234

    2. IPv6位址區段樣本:FC00:0AA3:0000:0000:0000:0000:0000:0000/48。

    3. 地址中的英文字母不區分大小寫,即支援全大寫、全小寫或者大小寫混合,例如:FC00:AA3:0:23:3:300:300A:1234fc00:0aa3:0000:0023:0003:0300:300a:1234

    4. 不支援: :縮寫格式,例如:不支援FC00:0AA3::0023:0003:0300:300A:1234

    5. 不支援輸入通配網路地址0000:0000:0000:0000:0000:0000:0000:0000/0,如果需要表示全量IPv6地址,可以用以下兩個子網來表示:

      1. 0000:0000:0000:0000:0000:0000:0000:0000/1

      2. 8000:0000:0000:0000:0000:0000:0000:0000/1

規則長度限制

規則輸入框最大支援輸入30 KB長度的字元,考慮到IP地址或者IP位址區段的字串長度有長有短,如果按平均長度來算,最多可配置大約700個IPv6地址/位址區段或者2000個IPv4地址/位址區段。如果您有更多的IP地址封鎖需求,請開通ESA安全防護功能(支援海量IP封鎖和按地區封鎖服務),具體操作方法,請參見如何從CDN、DCDN升級到ESAIP訪問規則配置

IP規則

支援選擇以下三種規則:

  1. 使用使用者的x-forwarded-for要求標頭作為判斷依據(預設規則)

    當用戶端均通過可信代理訪問,且代理會正確設定x-forwarded-for頭時,推薦使用該規則。

  2. 使用真實建連IP作為判斷依據

    當用戶端直接連接CDN,無中間Proxy 伺服器;或希望基於Proxy 伺服器IP進行存取控制時,推薦使用該規則。

  3. 同時使用x-forwarded-for和真實建連IP作為判斷依據

    當用戶端為混合網路環境,部分使用者直連,部分使用者通過代理訪問時,推薦使用該規則。

規則條件

規則條件能夠對使用者請求中攜帶的各種參數資訊進行識別,以此來決定某個配置是否對該請求生效。

  • 不使用:不使用規則條件。

  • 若需新增或編輯規則條件,請在規則引擎中進行管理。

拓展閱讀:阿里雲CDN如何識別用戶端IP

CDN節點通過以下兩種方式識別用戶端IP,這兩種方式各有優劣:

  • 真實建連IP (TCP Connection IP)

    • 定義:用戶端與CDN邊緣節點建立TCP串連時所使用的IP地址。

    • 優點:無法被偽造,安全性最高。

    • 缺點:當使用者通過代理(如公司網路出口、NAT裝置)訪問時,此IP為Proxy 伺服器的IP,無法反映真實的用戶端來源。

  • X-Forwarded-For (XFF) 要求標頭

    • 定義:一個HTTP要求標頭欄位,用於記錄請求經過的每一個Proxy 伺服器的IP地址。CDN通常取其最左側的IP作為用戶端IP。

    • 優點:能夠穿透代理,擷取到真實的用戶端IP。

    • 缺點:此要求標頭可由用戶端任意偽造,存在嚴重安全風險。惡意使用者可通過偽造XFF頭來繞過基於此IP的存取控制。

當用戶端直接存取 CDN 時,這兩個 IP 通常是相同的。但如果用戶端通過Proxy 伺服器訪問 CDN,這兩個 IP 將會不同。例如,用戶端真實 IP 為 10.10.10.10,Proxy 伺服器 IP 為 192.168.0.1,則:

  • X-Forwarded-For 要求標頭的值可能為 10.10.10.10, 192.168.0.1

  • 用戶端真實 IP 為 10.10.10.10

  • 真實建連 IP 為 192.168.0.1

針對上述IP擷取方式,CDN提供三種校正模式,以平衡安全性與業務靈活性。

IP地址校正模式

使用情境

工作原理

安全性評估

使用使用者的x-forwarded-for要求標頭作為判斷依據(預設)

用戶端均通過可信代理訪問,且代理會正確設定XFF頭。

僅提取並匹配x-forwarded-for要求標頭中最左側的IP地址。

x-forwarded-for要求標頭可被用戶端偽造,惡意使用者可輕易繞過黑名單限制。

使用真實建連IP作為判斷依據

用戶端直接連接CDN,無中間Proxy 伺服器;或希望基於Proxy 伺服器IP進行存取控制。

僅使用用戶端與CDN節點建立TCP串連的IP地址進行匹配。

建連IP無法偽造,提供最可靠的防護。

同時使用x-forwarded-for和真實建連IP作為判斷依據

混合網路環境,部分使用者直連,部分使用者通過代理訪問。

黑名單x-forwarded-for頭中的IP或真實建連IP,任意一個命中規則即攔截。

白名單x-forwarded-for頭中的IP或真實建連IP,任意一個命中規則即允許存取。

兼顧了識別真實用戶端IP的靈活性與建連IP的安全性,是大多數情境下的最佳選擇。

常見問題

相關API

添加IP黑/白名单配置

調用 BatchSetCdnDomainConfig 介面配置IP黑/白名单,相關參數參考配置IP白名單配置IP黑名單

更新IP黑/白名单配置

調用 BatchSetCdnDomainConfig 介面更新IP黑/白名单,相關參數參考配置IP白名單配置IP黑名單

重要

介面的更新邏輯為:僅更新傳入的參數。例如,若在請求中傳入了ip_list參數而未傳入ip_acl_xfwd,則ip_acl_xfwd不會被更新。

該介面僅支援對IP列表IP規則規則條件進行更新,不允許更改配置類型。例如,無法通過該介面將IP黑名單配置更改為IP白名單配置

如果您需要更改配置類型(例如,將IP黑名單配置更改為IP白名單配置),需按照以下步驟操作:

  • 調用刪除配置介面,移除現有的IP黑名單配置。

  • 調用添加配置介面,重新添加IP白名單配置。

刪除IP黑/白名单配置

步驟一:查詢ConfigId

調用查詢網域名稱配置介面,查詢配置的ConfigId。如果您知道對應配置的ConfigId,請忽略此步驟,參考步驟二進行刪除配置。

步驟二:刪除配置

調用DeleteSpecificConfig介面,使用ConfigId刪除配置。