一個 IP 段好不好,關鍵看它的歷史。如果一個 /24 曾被用來傳送垃圾郵件、仍掛在黑名單上、地理位置被識別到錯誤的國家,或者在沒有有效 RPKI 的情況下被宣告,那麼等你把網站、郵件或帳號遷移上去之後,可能要花上幾週時間收拾殘局。本文是一份面向 IPv4 租用使用者的實用盡職調查清單,無論只租幾個地址還是多個 /24 段都適用:內容包括如何解讀註冊資訊、檢查路由歷史與 RPKI、對比各家地理位置資料庫、查詢黑名單與信譽評分,以及租約中需要約定哪些條款。
# Registration record of the block (RIPE, APNIC, ARIN, AFRINIC or LACNIC answers automatically)
whois 203.0.113.0
# Fields to look at:
# inetnum / NetRange : the exact range and its size
# netname, descr : who it is assigned to
# country : the registered country (not necessarily the geolocation)
# status : ALLOCATED PA / ASSIGNED PA / LEGACY ...
# org, mnt-by : the holder and the maintainer that can change the record
# abuse-c / abuse-mailbox : where abuse reports go
出租方應當是該 IP 段的持有者,或持有該持有者的書面授權。如果你要用自己的 ASN 宣告該 IP 段,請向對方索取授權書(Letter of Authorization,LOA)(參見使用自有 ASN 宣告租用的 IP 段)。
這個 IP 段之前由誰宣告、在什麼時間宣告,能說明很多問題。源 ASN 頻繁變更、長期由以濫用聞名的網路宣告,或者被拆分成碎片宣告,都可能意味著隱患。
# Current origin ASN(s) and visibility (RIPEstat public API)
curl -s "https://stat.ripe.net/data/prefix-overview/data.json?resource=203.0.113.0/24" | python3 -m json.tool | head -40
# Routing history: which ASNs announced the block and when
curl -s "https://stat.ripe.net/data/routing-history/data.json?resource=203.0.113.0/24" | python3 -m json.tool | head -60
同樣的資訊也可以在 bgp.he.net(搜尋該字首)和 RIPEstat 網頁介面中方便地檢視。另外留意該 IP 段當前是否仍在宣告:長期未被路由的 IP 段,往往比每隔幾個月就易手一次的 IP 段更乾淨。
許多網路會丟棄 RPKI 無效的路由。請確認針對將要宣告該 IP 段的 ASN 已經存在(或將會建立)ROA,並且最大字首長度設定正確。
# Is 203.0.113.0/24 valid when announced by AS64500?
curl -s "https://stat.ripe.net/data/rpki-validation/data.json?resource=AS64500&prefix=203.0.113.0/24" | python3 -m json.tool
狀態應為 valid。invalid 表示已存在針對其他 ASN 或其他字首長度的 ROA,宣告前必須先修正;unknown 表示目前還沒有 ROA 覆蓋該 IP 段。詳細說明見 ROA 與 RPKI 詳解。
網站和平台使用的地理位置資料庫來自多家服務商,它們的結果並不總是一致。請從該 IP 段中挑幾個地址,在每個資料庫裡都查一遍。
curl -s ipinfo.io/203.0.113.10; echo
curl -s "http://ip-api.com/json/203.0.113.10?fields=country,regionName,city,isp,org,as,hosting"; echo
另外,也請到 MaxMind(maxmind.com 上的 GeoIP2 演示)、IP2Location 和 DB-IP 官網查詢。如果部分資料庫顯示的國家不正確,請詢問出租方是否釋出 geofeed 並提交更正(參見通過 geofeed 修正 IP 地理位置)。如果你的業務場景依賴 IP 類型(住宅、ISP 或資料中心),請參見如何判斷 IP 是原生、住宅、ISP 還是資料中心 IP。
抽查要覆蓋整個 IP 段(例如 .1、.64、.128、.200、.254),不要只查第一個地址:哪怕只有一個“壞鄰居”,也可能反映出整個地址段的情況。
從你業務覆蓋的國家對該 IP 段進行 ping 和 TCP 測試。尤其是中國大陸:一個地址段可能在海外完全可達,在國內卻無法訪問,參見從中國大陸測試站群 IP 連通性。平台訪問情況請參見流媒體與平台訪問測試。
不一定。從未使用過的 IP 段也可能尚未被地理位置資料庫收錄,或者沒有 ROA。長期在信譽良好的網路下平穩使用的 IP 段,往往是更好的選擇。
whois 中的國家是註冊資訊,並不代表實際位置。對網站和平台而言,通常真正起作用的是地理位置資料庫,請確保它們顯示的是你需要的國家。
請訪問我們的 IP 租用頁面檢視可選地區,並聯系銷售,說明你的用途以及上述檢查中你關心的專案。
如果按以上步驟操作後問題仍未解決,請提交工單聯絡 IMIDC 7×24 技術支援,並附上 IP 段、計劃用途以及上述各項檢查的結果,方便工程師快速定位。