為什麼在不同網站查詢到自己的本機公網 IP 不一樣?

本人使用的是長城寬頻。今天用百度,好搜和站長之家查詢本機公網ip,得到三個完全不同的ip地址,如圖所示

這到底是怎麼回事?


簡單點說,你的網路運營商有多個出口,不同出口的IP地址不同,如下圖:

出口處你的網路運營商做了NAT,甚至是動態的NAT,所以你的出口IP地址是不固定的,所以對方網路里看到的你的IP地址也是不固定的。這種情況在小的運營商里很常見,尤其是長寬、歌華、寬頻通等。


基本就是 @北極 說的這樣,你用電信聯通的試試,看還會不會這樣。

如果要細分,這裡主要還分兩種情況:
1. 你獲取到的根本就是私網地址,或許他看上去很像公網地址,但是其實根本沒有路由出去的線路,全部都是NAT的。識別方法可以把自己從ISP這裡獲取到的IP地址到一些ip138,或者更官方一點的WHOIS資料庫里查。
長寬租用基礎運營商的帶寬出口,然後他自己又沒有這麼多IP地址,於是只能在出口出做NAT,根據目標IP不同有不同的路由方向,所以訪問不同的網站是通過不同的出口出去的。這樣如果你訪問的幾個顯示IP地址的網站正好不是一個出口,就會發現有多個IP。
甚至有些網站直接在長寬內網裡有伺服器,那麼也有可能會顯示你獲取到的內網地址。

2. 你獲取到的是公網地址,但是ISP為了節約出口的費用,在某些地方做了NAT。
這種情況也是有可能的,如果ISP自己的IP地址跟基礎運營商做正規的互聯,或者通過BGP線路做路由都是很貴的。為了節約費用,他們可能會有一些正規出口線路,然後通過各種渠道弄到一些違規的便宜很多的高帶寬接入性質線路,然後做NAT以後出去。
這種情況在一些高校也會有,他們的地址是CERNET的,如果正常走需要通過CERNET和CHINANET或者聯通骨幹的互聯互通,但是學校會自己申請大帶寬的出口來做網際網路訪問戶口。


獲取的IP地址 數字地址 經過DDOS獲取一致IP公網


這個問題主要在於運營商的組網結構。比如說手機上網是一個省單位有個ip池,最終的公網是這裡的ip,你只是獲取了他的一個內網ip使用而已
目前IP定位都用的資料庫的方式,呵呵網站所採用的數據源不相同,給你個鏈接做參考
多數據源匯總結果 https://www.opengps.cn/Data/IP/IPSearch.aspx


某些地方做了透傳和NAT


推薦閱讀:

TCP連接中啟用和禁用TCP_NODELAY有什麼影響?
網路爬蟲相關畢業設計,有什麼比較合適的書籍推薦?
TCP/IP 和 HTTP 的區別和聯繫是什麼?
為什麼tcp連接的傳輸速度慢,斷開重新連接後,傳輸速度就變快了呢?
如何用Python寫一個分散式爬蟲?

TAG:計算機網路 | IP地址 |