天天看點

GRE的主要作用是什麼?

                              GRE的主要作用是什麼?

通用路由封裝(GRE)最初由Cisco開發,現在是一個RFC 1701、RFC 1702和RFC 2784定義的标準。GRE是一個在網絡之間傳輸資料包的通道協定。

  如果對你而言它聽起來像一個虛拟專用網絡(×××),這是因為理論上确實是這樣:技術上,GRE是一種×××,但它并不是一種安全的通道方法。不過,你可以用IPSec這樣的加密方法對GRE進行加密,建構一個安全的×××。

  實際上,點對點通道協定(PPTP)就使用GRE來建立×××通道。例如,如果你應用微軟×××通道,在預設情況下,你使用PPTP,它使用GRE。

  我為什麼要使用GRE?

  下面列出了一些使用GRE為流量建立通道的原因:

  你需要加密多點傳送流量。GRE通道能夠傳送多點傳送資料包——就像真實的網絡接口一樣——這與使用IPSec不同,它不能加密多點傳送流量。OSPF、EIGRP和RIPV2都屬于多點傳送。而且,許多視訊、VoIP和音樂流應用程式都使用多點傳送。

  你隻有一個不能路由的協定,如NetBIOS或非IP網絡上的非IP流量。例如,你可以通過一個IP網絡使用GRE為IPX或AppleTalk建立通道。

  你需要用不同的IP位址連接配接兩個由一個不同網絡連接配接的相似網絡。

  我如何配置GRE通道?

  在Cisco路由器上配置GRE通道相當容易——隻需要執行幾條簡單的指令即可。下面是一個簡單的配置執行個體:

  路由器A:

  interface Ethernet0/1

  ip address 10.2.2.1 255.255.255.0

  interface Serial0/0

  ip address 192.168.4.1 255.255.255.0

  interface Tunnel0

  ip address 1.1.1.2 255.255.255.0

  tunnel source Serial0/0

  tunnel destination 192.168.4.2

  路由器B:

  interface FastEthernet0/1

  ip address 10.1.1.1 255.255.255.0

  ip address 192.168.4.2 255.255.255.0

  ip address 1.1.1.1 255.255.255.0

  tunnel destination 192.168.4.1

  在這個例子中,兩個路由器各有一個虛拟接口——通道接口。這個接口像一個點對點T1電路一樣,有它自己的網絡。經過通道網絡的流量也流經串行網絡。

  對每個路由器而言,很明顯它們有兩條遠端路徑——串行接口和通道接口(流經通道)。然後這個通道就能傳送非路由流量,如NetBIOS或AppleTalk。如果它通過網際網路,你可以使用IPSec進行加密。

  如下面的輸出所見,路由器B上的通道接口和其它接口一樣:

  RouterB# sh ip int brie

  InterfaceIP-AddressOK?MethodStatusProtocol

  Ethernet010.1.1.1YESmanualupdown

  Serial0192.168.4.2YESmanualupup

  Serial1unassignedYESunsetadministratively downdown

  Tunnel01.1.1.1YESmanual upup

  RouterB#

  GRE通道故障修複

  由于GRE把一個資料包封裝到另一個資料包中,是以你可能會遇到以下情形:你發送的資料包超出你的接口所允許的大小。在通道接口上配置ip tcp adjust-mss 1436,就可以解決這個問題。

  雖然GRE不提供加密功能,但你可以使用tunnel key指令在通道的兩端激活一個密鑰,它就像一個沒有加密的簡單明文密碼。

  因為GRE通道沒有狀态,那麼可能出現這樣的情況:通道的一端關閉,而另一端仍然開放。在解決這個問題,可以在通道的兩端啟動keepalive資料包。這樣設定後,通道的兩端定期向另一端發送一個keepalive資料包。如果一端沒有在指定的時間收到keepalive資料包,兩端的通道就會關閉。

繼續閱讀