gre-通用路由封裝協(xié)議

gre 協(xié)議介紹

通用路由封裝協(xié)議gre(Generic Routing Encapsulation)可以對某些網(wǎng)絡層協(xié)議(如ipx、ipv6、appleTalk等)的數(shù)據(jù)報文進行封裝,使這些被封裝的數(shù)據(jù)報文能夠在另一個網(wǎng)絡層協(xié)議(如ipv4)中傳輸。
gre提供了將一種協(xié)議的報文封裝在另一種協(xié)議報文中的機制,是一種三層隧道封裝技術,使報文可以通過gre隧道透明的傳輸,本質(zhì)上解決異種網(wǎng)絡的傳輸問題。

gre 實現(xiàn)過程

51.jpg
  • AR1 接口0 處收到pc1 發(fā)來的報文,由自己的ipv6 協(xié)議棧處理;
  • AR1 根據(jù)收到的報文頭中的目的地址,查找路由表,確定如何到達對端,如果發(fā)現(xiàn)出接口是tunnel 接口,那么協(xié)議棧需要對報文進行gre 頭的封裝;
  • 根據(jù)網(wǎng)絡中傳輸協(xié)議為ip,給報文加上ip頭。ip頭的源地址就是隧道源物理接口地址,目的地址就是隧道物理接口的目的地址。
  • 報文封裝完畢后,沿著公網(wǎng)物理線路傳輸,到達對端tunnel 接口后,于是去掉里面ip 頭的封裝交給gre 協(xié)議處理,gre 協(xié)議去掉之前封裝的gre 頭,獲取原始報文中的ipv6協(xié)議,然后交由自己的ipv6 協(xié)議進行后續(xù)報文處理;
  • AR2發(fā)現(xiàn)目的地址就在自己的右手邊,直接將數(shù)據(jù)包從接口0發(fā)出去;

gre 報文格式及gre 頭字段含義

報文格式

49.jpg
  • 乘客協(xié)議:封裝前的原始報文;
  • 封裝協(xié)議:gre 協(xié)議封裝的header;
  • 傳輸協(xié)議:對封裝后的報文進行轉(zhuǎn)發(fā)的協(xié)議;

gre 頭字段含義

  • C:校驗和驗證位, 1:gre頭插入了校驗和(Checksum)字段 2:gre 頭不包含校驗和字段;
  • K:關鍵字位, 1:gre頭插入了關鍵字(Key)字段,0:gre 頭不包含關鍵字字段;
  • Recursion:表示報文gre被封裝的層數(shù),完成一次gre封裝后將該字段加1,如果封裝層數(shù)大于3,則丟棄該報文;
  • Flags:預留字段,當前必須置為0;
  • Version:版本字段,必須置為0;
  • Protocol Type:標識乘客協(xié)議的協(xié)議類型;
  • Checksum:對gre頭及其負載的校驗和字段;
  • Key:關鍵字字段,隧道接收端用于對收到的報文進行驗證;

隧道接口

  • gre隧道是通過隧道兩端的tunnel接口建立的,所以需要在隧道兩端的設備上分別配置tunnel接口。對于gre的tunnel接口,需要指定其協(xié)議類型為gre、源地址或源接口、目的地址和tunnel接口ip地址;
  • tunnel
    1.tunnel 接口:邏輯的虛擬接口;
    2.tunnel接口源地址: 依賴的源物理接口地址;
    3.tunnel接口目的地址:依賴的目的物理接口地址;

keepalive檢測

  • keepalive機制用于檢測鏈路狀態(tài),當遠端端口不可達,隧道需要及時關閉該tunnel連接,避免報文的丟失;
  • 探測機制實現(xiàn)過程
    源端會周期性發(fā)送keepalive探測報文給對端。若對端可達,則源端會收到對端的回應報文;否則,如果源端的計數(shù)器值到達預先設置的重試次數(shù)(Retry Times)時,還沒收到回送報文,就認為對端不可達。此時,源端將關閉隧道連接;

gre實驗

ipv4 之間隧道

實驗拓撲

46.jpg

實驗配置

[AR1]:
[Huawei]interface Tunnel 0/0/1(創(chuàng)建tunnel端口)
[Huawei-Tunnel0/0/1]tunnel-protocol gre(設置tunnel 端口支持協(xié)議)
[Huawei-Tunnel0/0/1]source GigabitEthernet 0/0/1(tunnel 端口依賴的源端口)
[Huawei-Tunnel0/0/1]destination 192.168.200.2 (tunnel 端口目的地址)
[Huawei-Tunnel0/0/1]ip address 192.168.210.1 24 (tunnel 端口配置ip)
[Huawei-Tunnel0/0/1]keepalive period 1 retry-times 3 (配置隧道兩端鏈路探測)
[Huawei]ip route-static 10.10.10.0 24 192.168.210.2 (路由配置)
[AR2]:
[Huawei]interface Tunnel 0/0/0(創(chuàng)建tunnel端口)
[Huawei-Tunnel0/0/0]tunnel-protocol gre(設置tunnel 端口支持協(xié)議)
[Huawei-Tunnel0/0/0]source GigabitEthernet 0/0/0(tunnel 端口依賴的源端口)
[Huawei-Tunnel0/0/0]destination 192.168.200.1 (tunnel 端口目的地址)
[Huawei-Tunnel0/0/0]ip address 192.168.210.2 24 (tunnel 端口配置ip)
[Huawei-Tunnel0/0/0]keepalive period 1 retry-times 3 (配置隧道兩端鏈路探測)
[Huawei]ip route-static 192.168.100.0 24 192.168.200.1 (路由配置)

實驗結(jié)果-pc1 ping pc2

47.jpg
  • 1: 封裝前報文協(xié)議ipv4,源ip:192.168.100.2,目的ip:10.10.10.2;
  • 2: gre header,由隧道端口設置的gre 協(xié)議進行填充,稱為封裝協(xié)議;
48.jpg
  • 3: 最終負責對封裝后的報文進行轉(zhuǎn)發(fā)的協(xié)議稱為傳輸協(xié)議,依賴實際的兩個物理口進行傳輸;

ipv6 to ipv4 之間隧道

實驗拓撲

52.jpg

實驗配置

[AR1]
[Huawei]ipv6
[Huawei-GigabitEthernet0/0/0]ipv6 enable
[Huawei-GigabitEthernet0/0/0]ipv6 address fc00:1::1 64
[Huawei-GigabitEthernet0/0/1]ip address 20.1.1.1 24
[Huawei]interface Tunnel 0/0/1
[Huawei-Tunnel0/0/1]tunnel-protocol gre
[Huawei-Tunnel0/0/1]source GigabitEthernet 0/0/1
[Huawei-Tunnel0/0/1]destination 20.1.1.2
[Huawei]ipv6 route-static fc00:2::2 64 3001::2

[AR2]
[Huawei]ipv6
[Huawei]int GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1]ipv6 enable
[Huawei-GigabitEthernet0/0/1]ipv6 address fc00:2::1 64
[Huawei-GigabitEthernet0/0/0]ip address 20.1.1.2 24

[Huawei]int Tunnel 0/0/1
[Huawei-Tunnel0/0/1]tunnel-protocol gre
[Huawei-Tunnel0/0/1]source GigabitEthernet 0/0/0
[Huawei-Tunnel0/0/1]destination 20.1.1.1
[Huawei]ipv6 route-static fc00:1::2 64 3001::1

實驗結(jié)果-pc1 ping pc2

  • AR1 接口1封裝后報文:
53.jpg
  • AR2 接口1解封裝后報文:
54.jpg

通過抓包,可以看到依賴ipv4 協(xié)議網(wǎng)絡傳輸時,報文會通過實際的ipv4 傳輸協(xié)議進行封裝, 到達對端后,會進行解封裝,按照原始報文的ipv6 協(xié)議處理;

gre應用場景

  • 針對不同本地協(xié)議的網(wǎng)絡傳輸,實現(xiàn)兩邊網(wǎng)絡互相通信;
  • ip 協(xié)議有跳數(shù)的最大限制,通過設備之間建立隧道,隱藏跳數(shù)限制,擴大網(wǎng)絡工作范圍;
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容