tft每日頭條

 > 生活

 > 兩個相同的ip地址

兩個相同的ip地址

生活 更新时间:2024-11-26 17:45:14

​​隻想到兩種可能:

  • 一台主機,兩個QQ之間的通信。
  • 一個公網IP,兩個QQ共同使用,相互通信。

第一種情況,已經在詳細讨論過了,所以接下來重點讨論第二種情況。一個公網IP,兩個QQ共同使用,相互通信即使兩個QQ同時使用一個公網IP,要能看到這壯麗奇迹的一幕,也是非常不容易的。

讀者會很疑惑,既然兩個QQ都使用了一個公網IP,為何說卻很難看到這一幕?稍安勿躁,羅馬不是一天建成的,讓我們一步一步詳細分析。

2個QQ的聯系信息分别如下:

Alice

私網IP= 10.1.1.1 端口号= 1000

公網IP =1.1.1.1 端口号= 1111

Bob

私網IP= 192.168.1.1 端口号= 2000

公網IP =1.1.1.1 端口号= 2222

QQ中心服務器将兩者的聯系信息分别推送給彼此。Alice使用Bob公網IP、端口号與其通信,以下是在Alice主機上抓包的結果:

兩個相同的ip地址(2個QQ為何IP地址相同)1

很顯然,這裡源IP ≠目的IP,源IP = 目的IP的神奇一幕并沒有出現。

Bob使用Alice公網IP、端口号與其通信,以下是在Bob主機上抓包的結果:

兩個相同的ip地址(2個QQ為何IP地址相同)2

同樣這裡源IP ≠目的IP,源IP = 目的IP的神奇一幕也沒有出現。繼續讓這些報文朝着互聯網的放心繼續流淌,到達網關處。網關不能袖手旁觀,網關需要強勢介入,将報文中源IP、源端口替換成公網IP、公網端口。

Alice的被修改後的報文:

兩個相同的ip地址(2個QQ為何IP地址相同)3

Bob的被修改後的報文:

兩個相同的ip地址(2個QQ為何IP地址相同)4

哇,源IP = 目的IP的神奇一幕同時出現了,不是很容易出現的嗎?

通常,網關上的抓包并沒有那麼容易,要麼用戶沒有權限,要麼網關不提供抓包的接口。Alice被修改過的報文,需要重新進入路由引擎處理,查表可得這是網關的WAN口的IP,于是将修改後的IP報文從WAN口流出,并流入互聯網。Alice在互聯網裡遊啊遊,穿過了N個交換機,終于碰到了網關。網關查表發現,目的IP的路由指向與Alice報文的流動方向相反,于是網關對Alice、Bob的報文說,親愛的老司機們請掉頭。于是兩位老司機掉頭往回走,繼續遊啊遊,穿過N個交換機,又回到出發的起點網關。

網關查表将Alice、Bob的報文的目的IP、目的端口做了一次替換。Alice報文替換結果為:

兩個相同的ip地址(2個QQ為何IP地址相同)5

Bob報文替換結果為:

兩個相同的ip地址(2個QQ為何IP地址相同)6

從上文的描述可知,源IP = 目的IP出現的時間周期,從網關第一次替換完成始,到網關第二次替換前。在這個時間周期内,并在報文途徑的設備上抓包都是可以看到這神奇的一幕。

上文Alice、Bob的報文其實走了一段冤枉路,如果做IP替換的網關不是将替換後的IP報文,從WAN口發出,而是将其從LAN口流出,流出LAN口前,做第二次替換,IP報文就不會跑冤枉路了。簡而言之,就是在本地做一個環路(Loop)。這項技術就是NAT Hairpin技術。

兩個相同的ip地址(2個QQ為何IP地址相同)7

由于NAT Hairpin技術打破了路由器的水平分割(Split Horizon )限制,即從一個接口收到的報文,絕不允許從同一個接口再次發出,避免形成環路。

使用NAT Hairpin技術的場景下,源IP = 目的IP 出現的時間僅僅是一霎那間,如果中間的流水線工序不提供抓包點,這個瞬間也是無法捕獲到的!

注:本文轉載自車小胖談網絡微信公衆号;文内觀點僅供參考。​​​​

埃文科技——IP定位技術領域專家,最全面、最精準的網絡空間地圖服務提供商。

公司成立于2012年,專注于網絡空間、地理空間和社會空間的相互映射,繪制三位一體的網絡空間地圖,對網絡空間資源的靜态屬性和動态變化情況進行探測。擁有27項軟件著作權及13項發明專利。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved