計算機網路之隧道技術

2023-11-14 06:01:18

一.什麼是隧道技術

在IPv6出現以後,市面上就有兩種網路,一種是基於IPv4搭建起來的網路,一種是基於IPv6搭建起來的網路

IPv6的出現主要是解決IPv4地址不夠用的問題,IPv6雖然解決了IPv4地址短缺的問題,同時也帶來了它自己的問題

  1. IPv6出現太晚了,市面上絕大部分網路基礎裝置都是基於IPv4來搭建的,重構開銷大
  2. IPv6地址普遍長度偏長,記憶不方便
  3. 相容性問題,和市面上的大部分軟體和網路裝置都不相容
  4. 實現複雜,由於更長的地址,使得儲存和處理開銷更大

當然,最大的問題還是怎麼儘快的讓IPv6投入使用,由於市面上已經有成熟的IPv4架構,所以想把IPv4推翻,然後構建IPv6,開銷無異於把網路推翻重建,三大運營商肯定第一個不答應

所以,我們在處理IPv6商用時,更多的是考慮相容性的問題,也就是「 6/4共存」問題

處理IPv6和IPv4相容的問題有三個主要的方式:

  • NAT技術:在介面上將IPv6和IPv4互轉,然後通訊
  • 雙協定棧:在介面同時建立兩個IP地址,一個v4,一個v6
  • 隧道技術:利用一個通道,將v6或v4封裝資料中,當作資料來傳輸

 二.隧道技術的實現(ENSP)

隧道技術實現是處理IPv4和IPv6的相容性的問題,

所以環境要麼是IPv6中間夾雜IPv4區域,要通過在IPv4上新建隧道來貫通IPv6的傳輸

又或是IPv4中夾雜IPv6區域,要通過IPv6上建隧道來貫通IPv4的傳輸

由於IPv4占主導地位,所以實驗案例使用IPv4中夾雜IPv6,IPv6區域新建隧道

 網路拓撲圖如上,實驗的目的是PC5能夠Ping通PC4

仔細觀察上圖就可以發現在IPv4的通訊中,必須要通過IPv6的區域,所以隧道一定是開在IPv6的區域

在構建隧道前,一定要保證兩個IPv4區域內部是通的,IPv6區域是通的

程式碼如下:

AR8

interface GigabitEthernet0/0/0
 ip address 137.100.37.254 255.255.255.0 
interface GigabitEthernet0/0/1
 ip address 137.100.38.1 255.255.255.0 
interface GigabitEthernet0/0/2
ospf 1 
 area 0.0.0.0 
  network 137.100.37.0 0.0.0.255 
  network 137.100.38.0 0.0.0.255 

 

AR10

ripng 1
q
ipv6 
interface GigabitEthernet0/0/0
 ip address 137.100.38.2 255.255.255.0 
interface GigabitEthernet0/0/1
 ipv6 enable 
 ipv6 address 6001:200::1/64 
 ripng 1 enable
q
ospf 1 
area 0.0.0.0 
network 137.100.38.0 0.0.0.255 

 

AR11

ripng 1
q
ipv6
int g0/0/0
ipv6 enable
ipv6 add 6001:200::2 64
ripng 1 enable
int g0/0/1
ipv6 enable
ipv6 add 6001:300::1 64
ripng 1 enable
q

 

AR12

ripng 1
q
ipv6 
interface GigabitEthernet0/0/1
 ip address 137.100.39.1 255.255.255.0 
interface GigabitEthernet0/0/0
 ipv6 enable 
 ipv6 address 6001:300::2/64 
 ripng 1 enable
q
ospf 1 
 area 0.0.0.0 
  network 137.100.39.0 0.0.0.255 

 

AR13

interface GigabitEthernet0/0/0
 ip address 137.100.39.2 255.255.255.0 
interface GigabitEthernet0/0/1
 ip address 137.100.40.254 255.255.255.0 
interface GigabitEthernet0/0/2
ospf 1 
 area 0.0.0.0 
  network 137.100.39.0 0.0.0.255 
  network 137.100.40.0 0.0.0.255 

 

設定了這些程式碼後,內部的網路是通了的

現在就需要來建立隧道了,隧道是建立在AR10和AR12之間

建立隧道的前提是IPv6的資料段是Ping通的

隧道技術的原理是把另外一種IP封裝成資料傳輸,現在IPv6就需要承載傳輸,所以IPv4的就會被封裝到IPv6的封包中

 在正常的IPv4區域傳輸時,到那個路由器取決於mac地址,如果下一跳不是目的IP,則繼續封裝mac地址,到了目的IP後拆掉IP地址層,然後讀取資料

在隧道中的傳輸到路由器時拆掉mac地址層後,需要判斷是否時目的IPv6地址,如果不是,就根據目的IPv6地址封裝IPv6,到了目的IPv6地址時,再拆掉IPv6地址層,根據IPv4地址繼續封裝mac地址,直到到達目的IPv4,然後讀取資料

弄清楚原理以後,就來搭建隧道了

先搭建AR10到AR12的隧道:

interface Tunnel0/0/0
 ip address 192.168.1.1 255.255.255.0 
 tunnel-protocol ipv4-ipv6
 source 6001:200::1
 destination 6001:300::2

 

建立隧道也是一個虛擬的介面Tunel

新增虛擬介面的IPv4地址,隧道是貫通IPv4網路的,所以IPv4之間通訊就需要給隧道設定IPv4地址,反之就是IPv6

選擇隧道協定IPv4-IPv6,意思是將IPv4資料框封裝到IPv6中去

soure是源地址的意思,也可以理解為隧道的起點路由器介面地址

destination是目的地址,也可以理解為隧道的終點路由器介面地址

然後就是要注意隧道地址在網路上通訊,也需要使用相關的設定保證隧道地址也是可以在區域內除了直連與其它路由器通訊的

主流的方式就兩種:

  • 靜態路由
IP route-static  源地址/地址池  匹配位  目的地址
  • 動態路由
  1. RIP:基於路由跳數
  2. OSPF:基於鏈路開銷

看上面AR10和AR12的設定,IPv4的通訊我使用的是OSPF協定,所以隧道也需要OSPF協定宣告後通訊

隧道是雙向的,所以需要在AR12上也新建隧道

程式碼:

interface Tunnel0/0/0
 ip address 192.168.1.1 255.255.255.0 
 tunnel-protocol ipv4-ipv6
 source 6001:200::1
 destination 6001:300::2

 

三.抓包分析

正常的IPv4區域傳輸:

 

如上

這是正常的IPv4的傳輸,可以看到抓的的協定一共有4個部分,分別對應TCP/IP的四層模型

然後我們看看隧道中抓到的IPv4通訊:

 綜上:

正常的IPv4傳輸一共有四個部分,分別對應TCP/IP的四層模型

而隧道傳輸有五個部分,但是也是對應TCP/IP四層模型,只不過隧道中轉也是處於第三層傳輸層,及IPv4和IPv6部分

總結

百度百科:

IPv4和IPv6是網際網路協定(IP)的兩種版本,它們各自具有一些優點和缺點。

IPv4的優點:

  1. 廣泛的應用:IPv4已經在全球範圍內得到了廣泛的應用,幾乎所有現有的網路裝置和系統都支援IPv4協定。這使得IPv4在互操作性方面具有很大的優勢。
  2. 豐富的地址資源:IPv4使用32位元地址,理論上可以提供約43億個唯一地址。雖然這個地址空間已經相當大,但隨著網際網路的發展,IPv4仍然面臨著地址耗盡的問題。
  3. 廣泛的路由支援:IPv4的路由協定被廣泛部署在各種網路裝置上,包括路由器、交換機、伺服器等。這使得IPv4在網路規劃和路由方面具有很大的優勢。

IPv4的缺點:

  1. 地址空間不足:IPv4的地址空間已經接近枯竭,這限制了網際網路的發展和新的應用部署。
  2. 不適應新的需求:隨著網際網路的發展,人們對網路的需求也在不斷變化。IPv4的一些特性,如不支援無狀態地址自動設定(SLAAC)、不支援服務質量(QoS)等,已經無法滿足新的需求。

IPv6的優點:

  1. 充足的地址空間:IPv6使用128位元地址,理論上可以提供約3.4 x 10^38個唯一地址。這個地址空間非常充足,可以滿足未來數十年的需求。
  2. 支援無狀態地址自動設定:IPv6支援無狀態地址自動設定(SLAAC),使得主機可以自動獲取IP地址,無需手動設定。
  3. 支援服務質量(QoS):IPv6支援QoS,可以更好地滿足不同型別的資料傳輸需求。
  4. 更好的安全性:IPv6在設計時考慮了安全問題,加入了一些新的特性,如IPSec,使得網路通訊更加安全。

IPv6的缺點:

  1. 相容性問題:IPv6與IPv4不相容,需要進行升級和改造,這可能會對現有的網路裝置和軟體產生影響。
  2. 路由問題:雖然IPv6的地址空間較大,但路由表的長度也相應增加,這可能會對路由效能產生影響。
  3. 實現複雜度:IPv6協定的實現比IPv4複雜,需要更多的計算和資源來支援。

以上就是隧道技術的全部,希望各位同仁斧正