IP 情資與地理定位 API 的差異
IP 地理定位 API 回傳 IP 位址看似所在的位置,通常是國家、地區、城市與座標;而 IP 情資 API 除此之外,還會回傳關於網路及其信譽的資訊:誰在營運它、它是否為資料中心,以及它是否為已知的 VPN、Tor 或濫用位址。前者回答「在哪裡」,後者還能回答「這是什麼連線,我該信任它嗎」。
兩者之間的界線並非固定,供應商對這些術語的使用也很隨興。有些「地理定位」產品已經包含 ASN 資料,有些「情資」產品則大多是相同的位置資料,外加幾個旗標。比較兩者的有用方式,是問自己需要根據位址做出哪些決定,以及哪些欄位能支援這些決定。
純地理定位 API 能提供什麼
位置欄位可服務一組廣為人知的任務:顯示當地語言或幣別、選擇附近的內容區域、套用國家層級的法律規則,以及填寫表單的國家欄位。對這些任務而言,國家通常可靠,城市則有用但屬近似值。資料描述的是位址區塊登記或路由的地點,而不是某個裝置,在將其用於任何敏感用途之前,你應該先閱讀為何 IP 位置反映的是網路,而不是人。
單靠位置無法告訴你的是,訪客是否就是該位置所暗示的那個人。法蘭克福的位址,可能是一位身在法蘭克福的人,也可能是別處的人租用的雲端伺服器,或是一個 VPN 出口。在這三種情況下,座標完全相同。
情資訊號增加了什麼
情資資料回答的就是第二個問題。在 ipto 上,主要的查詢(GET /v1/ip)除了位置之外,還會回傳:
- 網路擁有權:
asn與組織名稱,讓你能區分消費性 ISP 與主機代管公司。ASN 查詢會將其擴展為擁有者、國家與所宣告的範圍,而這份 ASN 指南則說明了其重要性。 - 連線旗標:
is_vpn、is_tor、is_abuser和is_datacenter,源自威脅情資來源資料與網路歸屬。 - 位址有效性:
bogon與bogon_type標示不應出現為公開用戶端的私有、迴路及其他保留空間。bogon IP 檢查工具會顯示相符的範圍。 - 幣別:已解析國家的
currency_code,方便用於定價。
每項決策都能清楚對應到一個欄位。決定註冊時是否要套用更嚴格的檢查,要用到旗標。決定某行日誌是否值得調查,要用到 bogon 欄位。決定要顯示哪個價格,要用到位置與幣別。純位置資料來源只能協助最後這一項。
需要記住的限制
欄位更多並不代表更確定。ipto 上的威脅情資旗標每 6 小時更新一次,IP 與 ASN 資料集每日更新,因此全新的 VPN 端點可能有一段時間未被標記。VPN、Tor 與濫用旗標目前僅涵蓋 IPv4,所以 IPv6 位址在這些旗標上會回傳 false 而非猜測,不過只要範圍有涵蓋,IPv6 位址仍會回傳 ASN、組織與城市層級的位置。住宅 Proxy 無法被偵測,而負面旗標最好解讀為「未知有進行匿名化」。關於信譽評分的概念,請見 IP 信譽評分的運作方式。
旗標也是訊號而非判決。許多合法使用者位於 VPN 或企業資料中心出口之後,因此旗標通常應增加摩擦,例如第二重驗證步驟,而不是直接封鎖。若想了解多個訊號如何結合,詐欺分數檢查工具會把 IP、電子郵件、電話與 User-Agent 整合成 0 到 100 的分數,並顯示其組成。
如何在兩者之間選擇
如果你唯一的需求是顯示在地內容,僅有位置的資料來源就已足夠,也能讓整合保持精簡。如果流程中有任何部分涉及帳號、付款、免費試用、內容存取或濫用處理,你可能也會需要網路情境,而在同一個回應中取得,會比把兩個服務拼接起來更簡單。自行架設資料庫是另一條路,有不同的取捨,詳見自行架設與 API IP 資料庫的比較。
你可以直接看出其中的差異。curl https://ipto.to/v1/ip 會回傳你自己的位址,並帶有上述所有欄位;此服務免費、無需註冊,每天允許 1,000 次請求。完整欄位清單請見 API 文件。試著查詢幾個你已經熟悉的位址,例如家用連線、雲端伺服器與 VPN 端點,並比較哪些欄位有變化。位置可能幾乎沒什麼變動,而 ASN、資料中心旗標與 VPN 旗標則會承擔大部分的工作。