IP : Cisco Express Forwarding (CEF)

Pesquisando defeitos loop de roteamento do Cisco Express Forwarding

19 Setembro 2015 - Tradução por Computador
Outras Versões: Versão em PDFpdf | Inglês (22 Agosto 2015) | Feedback


Índice


Introdução

Este documento ajuda a resolver o problema de loops de roteamento e roteamento subotimizado do Cisco Express Forwarding (CEF) causados por uma adjacência em cache válida do Cisco Express Forwarding que indica a interface incorreta. Uma adjacência com uma interface incorreta é criada pelas seguintes razões:

Pré-requisitos

Requisitos

Use estes recursos a fim compreender melhor alguns dos conceitos usos deste documento:

Componentes Utilizados

Este documento não se restringe a versões de software e hardware específicas.

Convenções

Para obter mais informações sobre convenções de documento, consulte as Convenções de dicas técnicas Cisco.

Diagrama de Rede

O r1 do roteador conecta ao R3 através da série 8/0, e o roteador R2 conecta ao R4 através da série 8/0. O r1 e o R2 são conectados através do Ethernet0/0, porque esta figura mostra.

/image/gif/paws/26083/trouble_cef_01.gif

  • O R2 recebe atualizações de prefixo de protocolo de gateway de bordo externo (eBGP) para 10.10.34.0/24 do R4. O R2 propaga este prefixo ao r1 através do Internal BGP (iBGP).

  • O R2 tem uma rota padrão estática (0.0.0.0/0) esses pontos ao endereço IP 10.10.24.4 da série 8/0 do R4.

  • O R2 igualmente tem uma rota padrão flutuante alternativa (Ethernet0/0 10 de 0.0.0.0 0.0.0.0 da rota IP) esses pontos aos Ethernet de interface 0/0 aos pacotes de rota se a conexão serial entre o R2 e o R4 falha.

  • O r1 tem uma rota padrão esses pontos à série 8/0 do R3 com o endereço IP 10.10.13.3.

Problema

O tráfego IP destinado para 10.10.34.0/24 obtém dado laços entre o r1 e o R2. Observe o comando traceroute output no r1.

R1#traceroute 10.10.34.4 
 
Type escape sequence to abort. 
Tracing the route to 10.10.34.4 
 
  1 192.168.12.2 20 msec 20 msec 20 msec 
  2 192.168.12.1 8 msec 12 msec 8 msec 
  3 192.168.12.2 8 msec 8 msec 12 msec 
  4 192.168.12.1 12 msec ...

Observe que o tráfego destinado ao 10.10.34.4 salta entre o a Ethernet 0/0 do R1 (endereço IP 192.168.12.1) e a Ethernet 0/0 do R2 (endereço IP 192.168.12.2). Idealmente, o tráfego do r1 destinado para que 10.10.34.0/24 necessidades vão ao R2 devido ao iBGP aprendeu o prefixo 10.10.34.0/24. Então, do R2, o tráfego deve distribuir ao R4. Contudo, a saída do comando traceroute confirma um loop de roteamento entre o r1 e o R2.

R1
hostname R1 
! 
ip subnet-zero 
! 
ip cef 
! 
interface Ethernet0/0 
 ip address 192.168.12.1 255.255.255.0 
! 
interface Serial8/0 
 ip address 10.10.13.1 255.255.255.0 
! 
router bgp 11 
 no synchronization 
 bgp log-neighbor-changes 
 neighbor 10.10.13.3 remote-as 12
 neighbor 192.168.12.2 remote-as 11 
 no auto-summary 
!  
ip route 0.0.0.0 0.0.0.0 10.10.13.3

R2
hostname  R2 
! 
ip cef 
! 
interface Ethernet0/0 
  ip address 192.168.12.2 255.255.255.0 
! 
interface Serial8/0 
 ip address 10.10.24.2 255.255.255.0 
! 
router bgp 11 
 no synchronization 
bgp log-neighbor-changes 
 network 192.168.12.0 
 neighbor 10.10.24.4 remote-as 10 
 neighbor 192.168.12.1 remote-as 11 
 neighbor 192.168.12.1 next-hop-self 
 no auto-summary 
! 
ip route 0.0.0.0 0.0.0.0 10.10.24.4 
ip route 0.0.0.0 0.0.0.0 Ethernet0/0 10 
!

Troubleshooting

Desde que os pacotes destinados para 10.10.34.4 obtêm dados laços entre o r1 e o R2, comece pesquisar defeitos. Primeira verificação Roteamento IP no r1. A saída do comando de 10.10.34.0 da rota da mostra IP confirma o salto seguinte de 192.168.12.2 para os pacotes destinados a 10.10.34.0/24. Isto combina com o salto do comando traceroute primeiramente, onde os pacotes são enviados ao salto seguinte 192.168.12.2, que confirma que os pacotes estão ligados corretamente o r1.

R1#show ip route 10.10.34.0 
Routing entry for 10.10.34.0/24
  Known via "bgp 11", distance 200, metric 0
  Tag 10, type internal
  Last update from 192.168.12.2 00:22:59 ago
  Routing Descriptor Blocks:
  * 192.168.12.2, from 192.168.12.2, 00:22:59 ago
      Route metric is 0, traffic share count is 1
      AS Hops 1

A próxima etapa é verificar a tabela de roteamento de IP do R2. Enquanto esta saída do comando de 10.10.34.0 da rota da mostra IP mostra, os pacotes destinados a 10.10.34.0 devem ser distribuídos para fora ao salto seguinte 10.10.24.4 na série 8/0. Contudo, o comando traceroute mostra os pacotes comutados de volta ao r1 ao endereço IP 192.168.12.1. As investigações adicionais são precisadas em porque os pacotes destinados a 10.10.34.0 são ligados o R2 ao salto seguinte 192.168.12.1 (como na saída do comando traceroute) em vez a 10.10.24.4.

R2#show ip route 10.10.34.0
Routing entry for 10.10.34.0/24
  Known via "bgp 11", distance 20, metric 0
  Tag 10, type external
  Last update from 10.10.24.4 00:42:32 ago
  Routing Descriptor Blocks:
  * 10.10.24.4, from 10.10.24.4, 00:42:32 ago
      Route metric is 0, traffic share count is 1
      AS Hops 1

Neste momento é importante compreender que em uma rede comutado por Cisco Express Forwarding, uma decisão de encaminhamento de pacote de informação consiste:

  • Uma pesquisa de tabela de roteamento para a correspondência de prefixo mais longa.

  • Uma consulta do banco de informação de encaminhamento (FIB).

Desde que a tabela de roteamento é verificada, o olhar no Cisco Express Forwarding MENTE. Nos resultados do comando detail de 10.10.34.4 do cef da mostra IP, note que o Cisco Express Forwarding comuta o Ethernet0/0 de 10.10.34.4 para fora em vez da série 8/0 de 10.10.24.4 do salto seguinte para fora (segundo as indicações do comando de 10.10.34.0 da rota da mostra IP output). Esta discrepância cria laços na rede.

R2#show ip cef 10.10.34.4 detail
10.10.34.4/32, version 19, cached adjacency 10.10.34.4
0 packets, 0 bytes
  via 10.10.34.4, Ethernet0/0, 0 dependencies
    next hop 10.10.34.4, Ethernet0/0
    valid cached adjacency

A próxima etapa é olhar a tabela de adjacência do Cisco Express Forwarding e considerar como o Cisco Express Forwarding aprende comutar para fora o Ethernet0/0 dos pacotes. Observe que a adjacência está construída devido ao ARP.

R2#show adjacency ethernet 0/0 detail | begin  10.10.34.4 
IP       Ethernet0/0               10.10.34.4(5)
                                   50 packets, 2100 bytes
                                   AABBCC006500AABBCC0066000800
                                   ARP        03:02:00

Esta saída do comando show ip arp é confirmação.

R2#show ip arp 10.10.34.4
Protocol  Address          Age (min)  Hardware Addr   Type   Interface
Internet  10.10.34.4             60   aabb.cc00.6500  ARPA   Ethernet0/0

Em seguida, encontre porque esta entrada de ARP foi criada quando há uma rota IP na tabela de roteamento. Olhe a tabela de roteamento outra vez.

R2#show run | include ip route 0.0.0.0
ip route 0.0.0.0 0.0.0.0 10.10.24.4
ip route 0.0.0.0 0.0.0.0 Ethernet0/0 10

Se a conexão serial falha entre o R2 e o R4, todo o tráfego está distribuído com o uso de um Ethernet0/0 da Rota estática flutuante para fora porque o R2 tem uma Rota estática flutuante que aponte aos Ethernet de interface 0/0 do multi-acesso, e não ao endereço IP de Ethernet 192.168.12.1 do r1. Consequentemente, para todos os destinos desconhecidos, o roteador R2 manda uma requisição ARP através da relação do Ethernet0/0. Neste caso, o R2 perdeu a rota mais específica à rede de 10.10.34.0. Consequentemente, quando o pacote de dados chega para os anfitriões nesta rede, gera uma requisição ARP através da interface Ethernet. Desde que o proxy ARP é permitido à revelia na interface Ethernet R1 e tem uma rota padrão que aponte ao R3, responde para trás com uma resposta do proxy ARP com seu próprio MAC address. Daqui, o R2 envia todo o tráfego ao r1, e r1 para a frente todo o tráfego com o uso de sua rota padrão (0.0.0.0/0) para fora COMO a 12, e consequentemente a 10.10.34.4 através do Internet.

Quando o R2 recebe a resposta do proxy ARP do r1, cria uma adjacência válida do Cisco Express Forwarding de /32 que indique os Ethernet de interface 0/0. Esta entrada do Cisco Express Forwarding não envelhece para fora até que o r1 do roteador do proxy ARP este presente no segmento de Ethernet. Assim, a entrada do Cisco Express Forwarding de /32 continua a ser usada ao Transmissão-interruptor expresso de Cisco os pacotes, mesmo depois a conexão serial entre o R2 e o R4 é o apoio e a rota padrão da tabela de roteamento indica a série 8/0 para o AS10. O resultado é um circuito de roteamento.

Por fim, analise os registros e veja se o link serial (s8/0) sincronizou. Isto faz com que uma Rota estática flutuante seja instalada na tabela de roteamento que conduz então ao proxy ARP e os resultados na instalação de uma entrada do Cisco Express Forwarding de 10.10.34.4/32 no Cisco Express Forwarding MENTEM.

R2#show log | beg Ethernet0/0
[..]
%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial8/0, changed state to down
%BGP-5-ADJCHANGE: neighbor 10.10.24.4 Down Interface flap
%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial8/0, changed state to up
%BGP-5-ADJCHANGE: neighbor 10.10.24.4 Up

Os logs confirmam a causa. Em resumo, estas etapas mostram a sequência de evento:

  1. O serial 8/0 no R2 se desconecta.

  2. O R2 tem um pacote destinado a 10.10.34.4.

  3. O R2 segue a rota padrão alternativa apontada diretamente ao Ethernet0/0.

  4. O R2 envia uma requisição ARP para 10.10.34.4.

  5. O r1 (proxy) responde à requisição ARP com seu próprio MAC address ao R2.

  6. O R2 tem agora uma entrada de ARP para 10.10.34.4 com o MAC address do r1.

  7. O R2 cria uma adjacência do Cisco Express Forwarding para 10.10.34.4, e uma entrada 10.10.34.4/32 é instalada na tabela do Cisco Express Forwarding (MENTIR) para este destino através do Ethernet0/0. Esta entrada do Cisco Express Forwarding está mantida para enquanto a entrada de ARP é válida ou até que o r1 este presente no segmento de Ethernet.

  8. Serial 8/0 em R2 aparece.

  9. O R2 aprende a rota de eBGP 10.10.34.0/24 do R4 com o próximo salto 10.10.24.4 e instala a rota na tabela de IP Routing.

  10. O r1 aprende o prefixo 10.10.34.0/24 através do iBGP do R2 e instala-o na tabela de IP Routing.

  11. O r1 tem um pacote destinado para 10.10.34.4.

  12. O r1 olha em sua tabela de roteamento, em rotas do prefixo do iBGP dos fósforos ao R2, e em rotas ao R2.

  13. O R2 recebe um pacote destinado para 10.10.34.4. Desde que já tem uma entrada do Cisco Express Forwarding para 10.10.34.4/32 que aponte ao Ethernet0/0 em sua tabela FIB com o MAC address do r1, envia o pacote de volta ao r1 sem olhar a tabela de roteamento. Isto cria um laço.

Solução

Substitua a Rota estática flutuante esses pontos diretamente ao Ethernet0/0 com o um esses pontos a um endereço de próximo salto.

R2(config)#no ip route 0.0.0.0 0.0.0.0 ethernet 0/0 10
R2(config)# ip route 0.0.0.0 0.0.0.0 192.168.12.1 10

Quando você tem uma rota estática que aponte ao endereço IP de Um ou Mais Servidores Cisco ICM NT do salto seguinte em vez de um Ethernet de interface 0/0 do multi-acesso, para o R2 de enviar requisições ARP para todos os destinos. Os pacotes são distribuídos e comutados com base no salto seguinte 192.168.12.1. Consequentemente, todas as entradas do Cisco Express Forwarding ARP e laços são evitados.

Observe a entrada do Cisco Express Forwarding no R2 esses pontos à série correta 8/0 da relação.

R2#show ip cef 10.10.34.4
10.10.34.0/24, version 32, cached adjacency to Serial8/0
0 packets, 0 bytes
  via 10.10.24.4, 0 dependencies, recursive
    next hop 10.10.24.4, Serial8/0 via 10.10.24.0/24
    valid cached adjacency

Discussões relacionadas da comunidade de suporte da Cisco

A Comunidade de Suporte da Cisco é um fórum onde você pode perguntar e responder, oferecer sugestões e colaborar com colegas.


Informações Relacionadas


Document ID: 26083