通用路由封裝(GRE)

2022-07-18 09:15:18 字數 2163 閱讀 7155

通用路由封裝(gre: generic routing encapsulation)是通用路由封裝協議,可以對某些網路層協議的資料報進行封裝,使這些被封裝的資料報能夠在ipv4網路中傳輸。

中文名:通用路由封裝

外文名:generic routing encapsulation

作用:網路層協議封裝乙個其它網路協議

類    型:網路協議

隸    屬:通訊協議,路由協議

1 基本資訊

2 報文格式

3 封裝過程

4 解封裝過程

通用路由封裝 (gre)定義了在任意一種網路層協議上封裝任意乙個其它網路層協議的協議。

在大多數常規情況下,系統擁有乙個有效載荷(或負載)包,需要將它封裝並傳送至某個目的地。首先將有效載荷封裝在乙個gre 包中,然後將此gre 包封裝在其它某協議中並進行**。此外發協議即為傳送協議。當ipv4 被作為gre 有效載荷傳輸時,協議型別字段必須被設定為0x800。當乙個隧道終點拆封此含有 ipv4 包作為有效載荷的gre 包時,ipv4 包頭中的目的位址必須用來**包,並且需要減少有效載荷包的ttl。值得注意的是,在**這樣乙個包時,如果有效載荷包的目的位址就是包的封裝器(也就是隧道另一端),就會出現迴路現象。在此情形下,必須丟棄該包。當 gre 包被封裝在ipv4 中時,需要使用ipv4 協議47。

gre 下的網路安全與常規的ipv4 網路安全是較為相似的,gre 下的路由採用ipv4 原本使用的路由,但路由過濾保持不變。包過濾要求防火牆檢查 gre 包,或者在gre 隧道終點完成過濾過程。在那些這被看作是安全問題的環境下,可以在防火牆上終止隧道。

gre(generic routing encapsulation,通用路由封裝)協議是對某些網路層協議(如ip 和ipx)的資料報文進行封裝,使這些被封裝的資料報文能夠在另乙個網路層協議(如ip)中傳輸。gre採用了tunnel(隧道)技術,是vpn(virtual private network)的第三層隧道協議。

tunnel 是乙個虛擬的點對點的連線,提供了一條通路使封裝的資料報文能夠在這個通路上傳輸,並且在乙個tunnel 的兩端分別對資料報進行封裝及解封裝。 乙個x協議的報文要想穿越ip網路在tunnel中傳輸,必須要經過加封裝與解封裝兩個過程。

gre 封裝後的報文格式為:

delivery header

gre header 

payload packet

乙個最簡單的gre頭部只有4個位元組,即在c、k、s等標誌們都為0的情況下,gre頭部僅包含第0到31位的資訊。前4個bit位都為標誌位,分別表示了頭部後來的字段是否有效;protocoltype欄位標識payloadpacket的協議型別,一般情況下,該協議欄位與乙太網幀的型別字段值相同。

需要封裝和傳輸的資料報文,稱之為淨荷(payload),淨荷的協議型別為乘客協議(passenger protocol)。系統收到乙個淨荷後,首先使用封裝協議(encapsulation protocol)對這個淨荷進行gre 封裝,即把乘客協議報文進行了「包裝」,加上了乙個gre 頭部成為gre 報文;然後再把封裝好的原始報文和gre 頭部封裝在ip 報文中,這樣就可完全由ip 層負責此報文的前向**(forwarding)。通常把這個負責前向**的ip 協議稱為傳輸協議(delivery protocol 或者transport protocol)。根據傳輸協議的不同,可以分為gre over ipv4 和gre over ipv6 兩種隧道模式。

1、 router a 連線group 1 的介面收到x 協議報文後,首先交由x 協議處理

2、x 協議檢查報文頭中的目的位址域來確定如何路由此包

3、 若報文的目的位址要經過tunnel 才能到達,則裝置將此報文發給相應的tunnel 介面

4、 tunnel 口收到此報文後進行gre 封裝,在封裝ip 報文頭後,裝置根據此ip 包的目的位址及路由表對報文進行**,從相應的網路介面傳送出去。

解封裝過程和加封裝的過程相反。

1、 routerb 從tunnel 介面收到ip 報文,檢查目的位址

2、 如果發現目的地是本路由器,則routerb 剝掉此報文的ip 報頭,交給gre 協議處理(進行檢驗金鑰、檢查校驗和及報文的序列號等)

3、 gre 協議完成相應的處理後,剝掉gre 報頭,再交由x 協議對此資料報進行後續的**處理。

說明:gre 收發雙方的加封裝、解封裝處理,以及由於封裝造成的資料量增加,會導致使用gre 後裝置的資料**效率有一定程度的下降。

GRE 通用路由封裝

1 簡介 gre generic routing encapsulation,通用路由封裝 協議是對某些網路層協議 如ip 和ipx 的資料報文進行封裝,使這些被封裝的資料報文能夠在另乙個網路層協議 如ip 中傳輸。在大多數常規情況下,系統擁有乙個有效載荷 或負載 包,需要將它封裝並傳送至某個目的地...

GRE 通用路由封裝

一 gre 通用路由封裝 gre generic routing encapsulation 是通用路由封裝協議,可以對某些網路層協議的資料報進行封裝,使這些被封裝的資料報能夠在ipv4網路中傳輸。中文名 通用路由封裝 外文名 generic routing encapsulation 作用 網路層...

GRE通用路由封裝協議簡單例項

兩個網路穿越中間網路通訊,實現類似專線才有的效果 一種虛擬的點到點網路型別 inte ce tunnel 0 0 0 建立隧道介面 r1 tunnel0 0 0 ip address 10.1.1.1 24 r1 tunnel0 0 0 tunnel protocol gre 定義使用通用路由封裝 ...