简介
本文档介绍如何对SD-WAN环境中的通用路由封装(GRE)接口问题进行故障排除。
背景信息
在Cisco Viptela解决方案中,GRE接口的使用案例包括:
- 通过vSmart Data-Policy或本地将流量发送到ZScaler(HTTP-Proxy)。
- 主服务GRE接口,默认备份到数据中心。
- 服务链
有时,GRE接口可能未打开和/或无法工作。
在这些情况下,检查
- GRE接口通过:show interface gre*处于up/up状态
- GRE Keepalive通过:show tunnel gre-keepalives
方法
如果存在问题,请配置访问控制列表(ACL或访问列表),以查看GRE(47)数据包是否传出/传入。
您无法通过TCP转储看到GRE数据包,因为数据包是由快速路径生成的。
有时,由于网络地址转换(NAT),GRE Keepalive可能会被丢弃。在这种情况下,请禁用keepalive并查看隧道是否启动。
此外,如果GRE隧道持续摆动并禁用keepalive,这会使接口保持打开/打开状态。
但是,这有一个缺点,即如果存在合法问题,则很难发现GRE不起作用。
请参阅此处的文档,其中显示了一个示例。
这是工作GRE接口配置
在VPN0中
vpn 0
interface gre1
ip address 192.0.2.1/30
tunnel-source
tunnel-destination
tcp-mss-adjust 1300
no shutdown
!
interface gre2
ip address 192.0.2.5/30
tunnel-source
tunnel-destination
tcp-mss-adjust 1300
no shutdown
!
!
IN服务端
vpn
service FW interface gre1 gre2
在基于vEdge路由的思科SD-WAN解决方案中,GRE接口作为主用 — 备用接口而非主用 — 主用接口工作。
在任何给定时间,只有GRE接口处于Up/Up状态。
实践
为访问列表创建策略
vEdge# show running-config policy access-list
policy
access-list GRE-In
sequence 10
match
protocol 47
!
action accept
count gre-in
!
!
default-action accept
!
access-list GRE-Out
sequence 10
match
protocol 47
!
action accept
count gre-out
!
!
default-action accept
!
!
vEdge#
创建计数器gre-in和gre-out,然后您需要将ACL应用到接口(我们的隧道在ge0/0上运行)。
上述ACL可以与物理接口的源地址和GRE终端的目的地址一起应用。
vEdge# show running-config vpn 0 interface ge0/0
vpn 0
interface ge0/0
ip address 198.51.100.1/24
tunnel-interface
encapsulation ipsec
max-control-connections 1
allow-service all
no allow-service bgp
allow-service dhcp
allow-service dns
allow-service icmp
no allow-service sshd
no allow-service netconf
no allow-service ntp
no allow-service ospf
no allow-service stun
!
no shutdown
access-list GRE-In in
access-list GRE-Out out
!
!
vEdge#
现在,您可以看到GRE数据包的进出计数器,因为这些计数器在快速路径中,无法通过tcpdump实用程序看到。
vEdge# show policy access-list-counters
COUNTER
NAME NAME PACKETS BYTES
----------------------------------
GRE-In gre-in 176 10736
GRE-Out gre-out 88 2112
vEdge#
这是我们的GRE隧道。
vEdge# show interface gre1
IF IF IF TCP
AF ADMIN OPER TRACKER ENCAP PORT SPEED MSS RX TX
VPN INTERFACE TYPE IP ADDRESS STATUS STATUS STATUS TYPE TYPE MTU HWADDR MBPS DUPLEX ADJUST UPTIME PACKETS PACKETS
---------------------------------------------------------------------------------------------------------------------------------------------------------
0 gre1 ipv4 192.0.2.1/30 Up Up NA null service 1500 05:05:05:05:00:00 1000 full 1420 0:07:10:28 2968 2968
vEdge#
vEdge# show running-config vpn 0 interface gre1
vpn 0
interface gre1
ip address 192.0.2.1/30/30
tunnel-source-interface ge0/0
tunnel-destination 192.0.2.5/30
no shutdown
!
!
vEdge#
您可以通过show app cflowd flows命令验证流量是否在GRE接口上。
以下示例显示双向流量(来自入口和出口):
vEdge# show app cflowd flows
TCP TIME EGRESS INGRESS
SRC DEST IP CNTRL ICMP TOTAL TOTAL MIN MAX TO INTF INTF
VPN SRC IP DEST IP PORT PORT DSCP PROTO BITS OPCODE NHOP IP PKTS BYTES LEN LEN START TIME EXPIRE NAME NAME
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
10 203.0.113.1 203.0.113.11 61478 443 0 6 16 0 203.0.113.254 3399 286304 60 1339 Sun Apr 8 10:23:05 2018 599 gre1 ge0/6
10 203.0.113.11 203.0.113.1 443 61478 0 6 24 0 203.0.113.1262556 192965 40 1340 Sun Apr 8 10:23:05 2018 592 ge0/6 gre1
在GRE接口上禁用keepalive(KA)的示例:
默认KA为10(hello间隔)和3(容差)
0的KA会禁用GRE接口上的KA。
vEdge# show running-config vpn 0 interface gre* | details
vpn 0
interface gre1
description "Primary ZEN"
ip address <ip/mask>
keepalive 0 0
tunnel-source
tunnel-destination
no clear-dont-fragment
mtu 1500
tcp-mss-adjust 1300
no shutdown
!
UP/Down的GRE接口显示为UP/UP(通过KA检查)。
请参阅,当KA关闭时TX计数器增加时。 这意味着,vEdge是发送数据包,但您看不到RX计数器的增加,这指向远程问题。
vEdge# show interface gre*
IF IF TCP
ADMIN OPER ENCAP PORT SPEED MSS RX TX
VPN INTERFACE IP ADDRESS STATUS STATUS TYPE TYPE MTU HWADDR MBPS DUPLEX ADJUST UPTIME PACKETS PACKETS
---------------------------------------------------------------------------------------------------------------------------------------------------
### With KA ON
0 gre1 192.0.2.1/30 Up Down null service 1500 cb:eb:98:02:00:00 - - 1300 - 413218129 319299248
### With KA OFF
0 gre1 192.0.2.1/30 Up Up null service 1500 cb:eb:98:02:00:00 100 half 1300 0:00:01:19 413218129 319299280