Top Ad unit 728 × 90

Dê uma olhada

random

Erro de roteamento recursivo no túnel GRE

Durante a configuração de tunelamento GRE podemos nos deparar com o seguinte erro:

%TUN-5-RECURDOWN: Tunnel1 temporarily disabled due to recursive routing

A razão disso é que o roteador aprendeu o endereço IP de destino da interface Tunnel através do próprio túnel. Como resultado, o roteador removeu da tabela de roteamento a entrada anterior referente ao endereço IP de destino do túnel. Em outras palavras, o roteador está tentando fazer o roteamento para o endereço de destino do túnel usando a interface virtual do túnel, e não a interface física. Quando isso ocorre, o túnel entra em colapso e o seu destino torna-se inalcançável.

Vamos usar a topologia abaixo para deixar isso mais claro:


Temos três roteadores e a intenção é estabelecer um túnel GRE entre R1 e R3. Em primeiro lugar, precisamos configurar os endereços IP nas interfaces:

R1(config)#interface FastEthernet0/0
R1(config-if)#ip address 192.168.10.1 255.255.255.0
R1(config-if)#no shutdown
%LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R1(config-if)#
R1(config-if)#interface Loopback0
%LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up
R1(config-if)#ip address 10.10.0.1 255.255.255.0
R1(config-if)#exit
R2(config)#interface FastEthernet0/0
R2(config-if)#ip address 192.168.10.2 255.255.255.0
R2(config-if)#no shutdown
%LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R2(config-if)#
R2(config-if)#interface FastEthernet0/1
R2(config-if)#ip address 192.168.20.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#
%LINK-3-UPDOWN: Interface FastEthernet0/1, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up
R3(config)#interface FastEthernet0/0
R3(config-if)#ip address 192.168.20.1 255.255.255.0
R3(config-if)#no shutdown
%LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R3(config-if)#
R3(config-if)#interface Loopback0
%LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up
R3(config-if)#ip address 10.20.0.1 255.255.255.0

Vamos usar o RIP para que R1 e R3 consigam se comunicar:

R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#no auto-summary
R1(config-router)#network 10.10.0.0
R1(config-router)#network 192.168.10.0
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#no auto-summary
R2(config-router)#network 192.168.10.0
R2(config-router)#network 192.168.20.0
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#no auto-summary
R3(config-router)#network 10.20.0.0
R3(config-router)#network 192.168.20.0

Agora podemos criar uma interface Tunnel entre as interfaces Loopback dos dois roteadores:

R1(config)#interface Tunnel 1
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to down
R1(config-if)#
R1(config-if)#tunnel source Loopback0
R1(config-if)#tunnel destination 10.20.0.1
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to up
R1(config-if)#
R1(config-if)#ip address 192.168.30.10 255.255.255.0
R3(config)#interface Tunnel 1
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to down
R3(config-if)#
R3(config-if)#tunnel source Loopback0
R3(config-if)#tunnel destination 10.10.0.1
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to up
R3(config-if)#
R3(config-if)#ip address 192.168.30.20 255.255.255.0

Criamos um túnel entre as interfaces Loopback de R1 e R3. Configuramos a rede 192.168.30.0/24 nas interfaces do túnel. Antes de continuarmos, vamos dar uma olhada nas tabelas de roteamento de R1 e R3:

R1#show ip route rip | include 10.20.0.0
R        10.20.0.0/24 [120/2] via 192.168.10.2, 00:00:15, FastEthernet0/0
R3#show ip route rip | include 10.10.0.0
R        10.10.0.0/24 [120/2] via 192.168.20.2, 00:00:05, FastEthernet0/0

Preste bastante atenção nos outputs acima. Cada roteador tem 2 saltos para alcançar a interface Loopback do outro. Agora vamos habilitar o RIP na interface Tunnel:

R1(config)#router rip
R1(config-router)#network 192.168.30.0
R3(config)#router rip
R3(config-router)#network 192.168.30.0

Assim que habilitamos o RIP na interface Tunnel, o roteador nos mostrou a mensagem de erro:

%TUN-5-RECURDOWN: Tunnel1 temporarily disabled due to recursive routing
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to down

O que está acontecendo? Antes de termos habilitado o RIP na interface Tunnel, R1 e R3 sabiam que era possível alcançar a interface Loopback um do outro através de R2 com uma contagem de 2 saltos.

Quando habilitamos o RIP na interface Tunnel, R1 e R3 aprenderam que dava para alcançar a interface Loopback um do outro com uma contagem de apenas 1 salto. Consequentemente, ambos os roteadores inseriram essa nova aprendizagem na tabela de roteamento e excluíram as informações antigas. Se tivéssemos visto a tabela de R3 antes da interface Tunnel ficar down, teríamos nos deparado com o seguinte output:

R3#show ip route rip | include 10.10.0.0
R        10.10.0.0/24 [120/1] via 192.168.30.10, 00:00:02, Tunnel1

Podemos ver que R3 tenta alcançar a rede 10.10.0.0/24 através da interface Tunnel 1 com uma contagem de 1 salto. Tentar alcançar o destino do túnel através do próprio túnel é um problema complicado...

Como podemos solucionar isso? Precisamos garantir que o roteador não tente alcançar o destino do túnel através túnel. Existem várias opções para este caso:

  • Não divulgar o endereço IP de destino do túnel na interface Tunnel (não anunciar ou usar a filtragem de rotas).

  • Garantir que a distância administrativa do endereço IP de destino do túnel através do túnel seja maior (pior) do que a distância administrativa listada atualmente na tabela de roteamento.

  • Garantir que a métrica para o endereço IP de destino do túnel através do túnel seja pior do que a métrica listada atualmente na tabela de roteamento.

Vamos usar uma das opções acima para resolver o nosso problema:

R1(config)#router rip
R1(config-router)#offset-list 0 in 3 Tunnel 1
R3(config)#router rip
R3(config-router)#offset-list 0 in 3 Tunnel 1
%LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to up

Usamos uma offset-list para alterar a métrica. Configuramos o RIP para que todas as redes anunciadas através da interface Tunnel 1 tenham uma contagem de saltos igual a 3.

Visto que a contagem de saltos através do túnel (igual a 3) é maior (pior) do que a contagem de saltos através de R2 (igual a 2), R1 e R3 usarão agora os links FastEthernet para alcançar os endereços IP de destino do túnel.

Usamos o RIP neste exemplo, mas o mesmo problema ocorre com outros protocolos de roteamento, como OSPF ou EIGRP.

Aqui estão os comandos de configuração usados neste texto, caso você queira testar as atividades em laboratório. Tenha em mente que, dependendo da versão de IOS que você esteja usando, alguns comandos podem não estar disponíveis. Além disso, o simulador Packet Tracer, da Cisco, limita os comandos que podem ser inseridos na CLI dos dispositivos.
hostname R1
!
interface Loopback0
 ip address 10.10.0.1 255.255.255.0
!
interface Tunnel1
 ip address 192.168.30.10 255.255.255.0
 tunnel source FastEthernet0/0
 tunnel destination 192.168.20.1
!         
interface FastEthernet0/0
 ip address 192.168.10.1 255.255.255.0
 no shutdown
!
router rip
 no auto-summary
 offset-list 0 in 3 Tunnel 1
 network 10.0.0.0
 network 192.168.10.0
 network 192.168.30.0
!
end
hostname R2
!
interface FastEthernet0/0
 ip address 192.168.10.2 255.255.255.0
 no shutdown
!
interface FastEthernet0/1
 ip address 192.168.20.2 255.255.255.0
 no shutdown
!
router rip
 no auto-summary
 network 192.168.10.0
 network 192.168.20.0
!
end
hostname R3
!
interface Loopback0
 ip address 10.20.0.1 255.255.255.0
!
interface Tunnel1
 ip address 192.168.30.20 255.255.255.0
 tunnel source FastEthernet0/0
 tunnel destination 192.168.10.1
!         
interface FastEthernet0/0
 ip address 192.168.20.1 255.255.255.0
 no shutdown
!
router rip
 no auto-summary
 offset-list 0 in 3 Tunnel 1
 network 10.0.0.0
 network 192.168.20.0
 network 192.168.30.0
!
end

Hope this helps!

Erro de roteamento recursivo no túnel GRE Reviewed by Carlos Wolkartt on janeiro 02, 2019 Rating: 5
Todos os direitos reservados a Wolkartt.com © 2019
Hospedado no Blogger.

Mande sua mensagem

Nome

E-mail *

Mensagem *

Tecnologia do Blogger.