美國使用者的 IP 地址地理位置錯誤
為了向我的使用者顯示正確的內容,我根據他們的 IP 地址獲取他們的國家/地區。我收到了幾份來自美國使用者的報告,稱內容顯示不正確。我總是檢查他們的 IP 地址並且我的國家檢測 API 是正確的,出於某種原因,美國使用者被分配了來自其他國家的 IP 地址。
這是正常做法嗎?這與IPcalypse有關係嗎?有沒有更好的方法來獲取使用者的位置?
**編輯:**我正在使用一個名為 MaxMind 的 API 來獲取基於 IP 的位置,到目前為止,這個問題只發生在 IPv4 使用者身上。我遇到的最後一個問題是一位美國使用者的 IP 地址位置顯示為馬來西亞,他們的 IP 地址是 161.139.224.31,我只知道該使用者正在使用裝有 iOS 的設備。
Maxmind 是一項很好的服務,儘管偶爾會出現錯誤,因為我們現在處於 IPv4 塊稀缺的時期,並且正在灰色市場上進行交易和轉售。如果您確實發現了實際錯誤,您可以向他們報告,儘管這似乎不是錯誤。
這基本上是我確認 IP 地址位置的方式:
首先,我會看看 Maxmind 是怎麼說的。他們的線上工具告訴我它在馬來西亞並在馬來西亞工藝大學註冊。但真的是這樣嗎?
其次,我將檢查地址的 whois 記錄。APNIC 還表示它已在 UTM 註冊。對於你所謂的美國人來說看起來不太好……
inetnum: 161.139.0.0 - 161.139.255.255 netname: UTMNET descr: Universiti Teknologi Malaysia country: MY admin-c: UTM1-AP tech-c: UTM1-AP status: ALLOCATED PORTABLE mnt-by: MAINT-MY-UNITEKMY mnt-irt: IRT-UNITEKMY-NON-MY changed: hm-changed@apnic.net changed: hm-changed@apnic.net 20120907 source: APNIC irt: IRT-UNITEKMY-NON-MY address: Center for Information and Communication Technology e-mail: jeff@utm.my abuse-mailbox: jeff@utm.my admin-c: UTM1-AP tech-c: UTM1-AP auth: # Filtered mnt-by: MAINT-MY-UNITEKMY changed: hm-changed@apnic.net 20120906 source: APNIC role: Universiti Teknologi Malaysia address: Center for Information and Communication Technology country: MY phone: +607-5532470 fax-no: +607-5566164 e-mail: jeff@utm.my admin-c: UTM1-AP tech-c: UTM1-AP nic-hdl: UTM1-AP mnt-by: MAINT-MY-UNITEKMY changed: hm-changed@apnic.net 20120906 source: APNIC % This query was served by the APNIC Whois Service version 1.69.1-APNICv1r0 (UNDEFINED)
最後,我將進行跟踪路由並查看到達 IP 地址所採用的實際網路路徑。在這種情況下…
$ traceroute 161.139.224.31 traceroute to 161.139.224.31 (161.139.224.31), 30 hops max, 60 byte packets 1 172.28.5.1 (172.28.5.1) 0.181 ms 0.146 ms 0.127 ms 2 62-210-251-1.rev.poneytelecom.eu (62.210.251.1) 1.317 ms 1.480 ms 1.611 ms 3 195.154.1.170 (195.154.1.170) 1.011 ms 1.236 ms 1.300 ms 4 prs-b7-link.telia.net (62.115.40.77) 0.956 ms 0.924 ms 0.917 ms 5 prs-bb3-link.telia.net (213.155.132.192) 1.779 ms prs-bb3-link.telia.net (213.155.134.220) 1.652 ms prs-bb2-link.telia.net (213.155.134.228) 0.898 ms 6 adm-bb4-link.telia.net (213.155.137.156) 15.224 ms adm-bb3-link.telia.net (62.115.135.62) 11.010 ms adm-bb4-link.telia.net (213.155.136.24) 13.345 ms 7 adm-b2-link.telia.net (62.115.141.51) 12.709 ms adm-b2-link.telia.net (213.155.137.197) 12.043 ms adm-b2-link.telia.net (62.115.141.67) 12.702 ms 8 telekommalaysia-ic-149786-adm-b2.c.telia.net (213.248.99.146) 11.203 ms telekommalaysia-ic-301284-adm-b2.c.telia.net (62.115.8.206) 11.131 ms 12.056 ms 9 * * * 10 58.27.55.202 (58.27.55.202) 207.612 ms 202.755 ms 203.625 ms 11 * * * 12 * * * 13 * * * 14 * * * 15 *^C
在這裡,我們看到它從我在巴黎的位置開始,然後傳遞到阿姆斯特丹,然後傳遞到馬來西亞電信,之後我們沒有進一步的回報。在接受這些相同檢查時,最終響應的 IP 地址也是馬來西亞電信的 IP 地址。
在這一點上,這個 IP 地址看起來極不可能出現在之前命名的馬來西亞大學以外的任何地方。如果使用者絕對確定這是錯誤的,他們可以嘗試從他們的一端執行跟踪路由(例如,為此目的使用 iOS 應用程序),您可以檢查其結果以尋找任何可能的線索。
最後,使用者有可能連接到大學提供的 VPN。在這種情況下,無論他在世界上的位置如何,他都會被辨識為在大學裡,如果他想被辨識為他的實際位置,他應該關閉 VPN 並直接連接。