Contents

Introduction

Informações de Apoio

Metodologia

Prática

Introduction

Este documento descreve como solucionar problemas de interface GRE (Generic Routing Encapsulation) em um ambiente SD-WAN.

Informações de Apoio

Na solução Cisco Viptela, os casos de uso para interfaces GRE incluem:

- Enviar tráfego para ZScaler (HTTP-Proxy) via vSmart Data-Policy ou localmente.

- Interface GRE de serviço principal com backup padrão para o data center.

- Cadeamento de serviços

Há casos em que a interface GRE pode não aparecer e/ou não funcionar.

Nessas situações, verifique se

- A interface GRE está ativa/ativa via: show interface gre*

- GRE Keepalives via: show tunnel gre-keepalives

Metodologia

Se houver um problema, configure uma lista de controle de acesso (ACL ou lista de acesso) para ver se os pacotes GRE (47) estão saindo/entrando.

Você não consegue ver os pacotes GRE através de TCP Dump, pois os pacotes são gerados pelo caminho rápido.

Às vezes, devido à conversão de endereço de rede (NAT), as manutenções de atividade de GRE podem ser descartadas. Nesse caso, desative o keepalive e veja se o túnel aparece.

Além disso, se o túnel GRE estiver constantemente oscilando e desabilitando keepalives, isso manterá a interface ativa/ativa.

No entanto, tem uma desvantagem, em que, se há uma questão legítima, é difícil descobrir que o GRE não funciona.

Veja aqui no documento que mostra um exemplo.

Esta é uma configuração de interface GRE em funcionamento

IN 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

!

!

no lado Serviço

vpn

service FW interface gre1 gre2

Na solução Cisco SD-WAN baseada em rotas vEdge, as interfaces GRE funcionam como Ativo-em espera e não Ativo-Ativo.

A qualquer momento, há apenas a Interface GRE que está no estado Up/Up.

Prática

Criar uma política para listas de acesso

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#

Crie contadores gre-in e gre-out e então você precisa aplicar a ACL à interface (nosso túnel caminha sobre ge0/0).

A ACL acima pode ser aplicada com o endereço de origem da interface física e o endereço de destino do ponto de extremidade 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#

Agora você pode ver os contadores dos pacotes GRE para dentro e para fora porque eles estão no caminho rápido, não se pode ver com o utilitário 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#

Este é o nosso túnel 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#

Você pode verificar se o tráfego está indo na interface GRE por meio do comando show app cflowd flows.

Este exemplo mostra o tráfego bidirecional (da entrada e da saída):

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

Um exemplo de desabilitação de keepalives (KA) na interface GRE:

O KA padrão é 10 (intervalo de hello) e 3 (tolerância)

Um KA de 0 0 desativa o KA na interface GRE.

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

!

Uma interface GRE que é UP/Down é exibida como UP/UP (passando pela verificação KA).

Veja, contador de TX aqui à medida que aumenta quando o KA está DESLIGADO.  Significa que o vEdge é o TX dos pacotes, mas você não vê o aumento no contador RX, que aponta para um problema remoto.

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