目錄

簡介

背景資訊

四種不同的隧道狀態

P2P GRE通道狀態

路由器上的線路協定本地關閉

GRE通道Keepalive

具有通道保護的GRE通道

多點GRE(mGRE)通道介面

冗餘狀態的依賴關係

疑難排解

相關資訊

簡介

本文件說明可能會影響通用路由封裝 (GRE) 通道介面狀態的不同條件。

背景資訊

GRE通道設計為完全無狀態。這表示每個通道端點不保留有關遠端通道端點的狀態或可用性的任何資訊。其後果是，預設情況下，如果通道的遠端無法連線，本地通道端點路由器無法使GRE通道介面的線路通訊協定關閉。當鏈路的遠端不可用時將介面標籤為關閉的功能可用於刪除路由表中使用該介面作為出站介面的任何路由（特別是靜態路由）。具體來說，如果介面的線路協定更改為關閉，則任何指出該介面的靜態路由將從路由表中刪除。這樣可安裝備用（浮動）靜態路由或基於策略的路由(PBR)，以便選擇備用下一跳或介面。此外，還有其它應用程式在介面更改狀態時觸發；例如，「backup interface <b-interface>」。

四種不同的隧道狀態

GRE通道介面有四種可能的狀態：

1. Up/up — 這表示通道已完全正常工作並傳遞流量。它處於管理性開啟狀態且其通訊協定也處於開啟狀態。

2. 管理性關閉/關閉 — 表示介面已被管理性關閉。

3. Up/down — 這表示即使通道處於管理性開啟狀態，仍然有某種原因導致介面上的線路通訊協定關閉。

4. 重設/關閉 — 這通常是在軟體重設通道時的瞬態狀態。當通道使用本身的IP位址的下一躍點伺服器(NHS)設定錯誤時，通常會發生這種情況。

當首次建立通道介面並且沒有對其應用其他配置時，預設情況下不會關閉該介面：

Router#show run interface tunnel 1

Building configuration...

Current configuration : 40 bytes

!

interface Tunnel1

no ip address

end

在此狀態下，介面一律開啟/關閉：

Router(config-if)#do show ip interface brief

Interface                  IP-Address      OK? Method Status                Protocol

GigabitEthernet0/0         172.16.52.1     YES NVRAM  administratively down down

GigabitEthernet0/1         10.36.128.49    YES NVRAM  down                  down

GigabitEthernet0/2         unassigned      YES NVRAM  down                  down

GigabitEthernet0/3         unassigned      YES NVRAM  down                  down

Loopback1                  192.168.2.1     YES NVRAM  up                    up

Tunnel1                    unassigned      YES unset  up                    down

這是因為介面處於管理性啟用狀態，但由於它沒有通道來源或通道目的地，因此線路通訊協定關閉。

若要使此介面開啟/開啟，必須設定有效的通道來源和通道目的地：

Router#show run interface tunnel  1

Building configuration...

Current configuration : 113 bytes

!

interface Tunnel1

ip address 10.1.1.1 255.255.255.0

tunnel source Loopback1

tunnel destination 10.0.0.1

end

Router#show ip interface brief

Interface                  IP-Address      OK? Method Status                Protocol

GigabitEthernet0/0         172.16.52.1     YES NVRAM  up                    up

GigabitEthernet0/1         10.36.128.49    YES NVRAM  down                  down

GigabitEthernet0/2         unassigned      YES NVRAM  down                  down

GigabitEthernet0/3         unassigned      YES NVRAM  down                  down

Loopback0                  unassigned      YES unset  up                    up

Loopback1                  192.168.2.1     YES manual up                    up

Tunnel1                    10.1.1.1         YES manual up                    up

上一個序列顯示：

- 有效的通道來源包含本身處於up/up狀態且其上配置有IP位址的任何介面。例如，如果通道來源變更為Loopback0，即使Loopback0處於up/up狀態，通道介面也會關閉：

Router(config)#interface tunnel 1

Router(config-if)#tunnel source loopback 0

Router(config-if)#

*Sep  6 19:51:31.043: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to down

- 有效的通道目的地是可路由的。但是它不必可達，可從以下ping測試中看到：

Router#show ip route 10.0.0.1

% Network not in table

Router#show ip route | inc 0.0.0.0

Gateway of last resort is 172.16.52.100 to network 0.0.0.0

S*    0.0.0.0/0 [1/0] via 172.16.52.100

Router#ping 10.0.0.1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.0.0.1, timeout is 2 seconds:

.....

Success rate is 0 percent (0/5)

到目前為止，通道已配置為點對點(P2P)GRE通道，這是預設設定。如果要將此通道變更為多點GRE(mGRE)通道，則通道進入執行狀態所需的全部都是有效通道來源（mGRE通道可以有多個通道目的地，因此不能用來控制通道介面狀態）：

Router#show run interface tunnel 1

Building configuration...

Current configuration : 129 bytes

!

interface Tunnel1

ip address 10.1.1.1 255.255.255.0

no ip redirects

tunnel source Loopback1

tunnel mode gre multipoint

end

Router#show ip interface brief | include Tunnel

Tunnel1                    10.1.1.1         YES manual up                    up

在任何時候，如果通道介面處於管理性關閉狀態，通道都會立即進入管理性關閉/關閉狀態：

Router#show run interface tunnel 1

Building configuration...

Current configuration : 50 bytes

!

interface Tunnel1

no ip address

shutdown

end

Router#show ip interface brief | include Tunnel

Tunnel1                    unassigned      YES unset  administratively down down

P2P GRE通道狀態

P2P GRE通道介面通常會在設定有有效的通道來源位址或介面開啟且通道目的地IP位址可路由(如上一節所示)後立即啟用。

路由器上的線路協定本地關閉

在正常情況下，GRE隧道處於開啟/關閉狀態的原因只有三個：

- 沒有通往通道目的地位址的路由（包括預設路由）。

- 錨定通道來源的介面已關閉。

- 通往通道目的地位址的路由是經由通道本身，這導致了遞迴。

這三個規則(missing路由、介面停止和通道目的地錯誤)是通道端點上的路由器本地問題，且不包括介入網路中的問題或其他與可設定的GRE通道相關的功能。本檔案介紹其他因素可能影響GRE通道狀態的案例。

GRE通道Keepalive

基本規則不覆蓋GRE隧道資料包成功轉發的情況，但在到達隧道的另一端之前丟失。這會導致通過GRE通道的資料包被「黑洞」，即使使用PBR的備用路由或通過其他介面的浮動靜態路由可能可用。GRE通道介面上的Keepalive的使用方式與實體介面上的Keepalive使用方式相同，目的在於解決此問題。

使用Cisco IOS®軟體版本12.2(8)T，您可以在P2P GRE通道介面上設定keepalive。透過此變更，如果keepalive在特定時段內失敗，通道介面會動態關閉。為了更好瞭解GRE通道keepalive的運作方式，請參閱GRE通道Keepalive。

附註：GRE通道keepalive僅有效且對P2P GRE通道產生影響；它們無效，且對mGRE通道沒有任何影響。

具有通道保護的GRE通道

在Cisco IOS軟體版本15.4(3)M/15.4(3)S和更新版本中，GRE通道線路通訊協定狀態可以遵循IPsec安全關聯(SA)狀態，因此線路通訊協定可以保持關閉，直到IPsec作業階段完全建立。這是使用Cisco錯誤ID CSCum34057(使用Cisco錯誤ID CSCuj2996進行初始嘗試，然後使用Cisco錯誤ID CSCuj99287退出的)。

多點GRE(mGRE)通道介面

對於mGRE通道介面，由於沒有固定通道目的地，因此之前的一些針對P2P通道的檢查不適用。以下是mGRE通道線路通訊協定可以處於關閉狀態的原因：

- 通道來源介面處於關閉狀態。

- 如果為動態多點VPN(DMVPN)啟用介面狀態控制功能，並且沒有任何NHS響應，則線路協定將進入關閉狀態。有關介面狀態控制功能的詳細資訊，請參閱DMVPN隧道運行狀況監控和恢復配置指南。

冗餘狀態的依賴關係

當通道來源IP位址設定為備援IP位址(例如熱待命路由器通訊協定虛擬IP(HSRP VIP)位址)時，通道介面狀態會追蹤備援狀態。

這新增了額外的檢查，使此類通道介面一直處於線路協定關閉狀態，直到冗餘狀態更改為ACTIVE。在本示例中，配置錯誤的ipc區域預設配置會導致冗餘處於協商狀態，並使此類隧道介面處於關閉狀態：

Router#show redundancy state

my state = 3  -NEGOTIATION

peer state = 1  -DISABLED

Mode = Simplex

Unit ID = 0

Maintenance Mode = Disabled

Manual Swact = disabled (system is simplex (no peer unit))

Communications = Down      Reason: Simplex mode

client count = 16

client_notification_TMR = 60000 milliseconds

RF debug mask = 0x0

Router#show interface tunnel100

Tunnel100 is up, line protocol is down

Hardware is Tunnel

Internet address is 172.16.1.100/24

MTU 17912 bytes, BW 100 Kbit/sec, DLY 50000 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation TUNNEL, loopback not set

Keepalive not set

Tunnel source 10.122.162.254 (GigabitEthernet0/1)

Tunnel Subblocks:

src-track:

Tunnel100 source tracking subblock associated with GigabitEthernet0/1

Set of tunnels with source GigabitEthernet0/1, 2 members (includes

iterators), on interface <OK>

Tunnel protocol/transport multi-GRE/IP

<SNIP>

疑難排解

除上述原因外，還可以使用show tunnel interface tunnel x hidden命令檢視隧道關閉原因的隧道線路狀態評估，如下所示：

Router#show tunnel interface tunnel 100

Tunnel100

Mode:multi-GRE/IP, Destination UNKNOWN, Source GigabitEthernet0/1

Application ID 1: unspecified

Tunnel Subblocks:

src-track:

Tunnel100 source tracking subblock associated with GigabitEthernet0/1

Set of tunnels with source GigabitEthernet0/1, 2 members (includes

iterators), on interface <OK>

Linestate - current down

Internal linestate - current down, evaluated down - interface not up

Tunnel Source Flags: Local

Transport IPv4 Header DF bit cleared

OCE: IP tunnel decap

Provider: interface Tu100, prot 47

Performs protocol check [47]

Performs Address save check

Protocol Handler: GRE: key 0x64, opt 0x2000

ptype: ipv4 [ipv4 dispatcher: drop]

ptype: ipv6 [ipv6 dispatcher: drop]

ptype: mpls [mpls dispatcher: drop]

ptype: otv [mpls dispatcher: drop]

ptype: generic [mpls dispatcher: drop]

附註：有一個開放增強功能，可讓通道關閉的原因更為明確，以表示由於處於非作用中狀態，通道關閉是由於備援狀態。此問題由思科錯誤ID CSCuq31060追蹤。

相關資訊

- RFC 1701，通用路由器封裝(GRE)

- RFC 2890,GRE的金鑰和序列號擴展

- 通用路由封裝(GRE)通道存留

- IP分段和PMTUD

- 技術支援與文件 - Cisco Systems