quarta-feira, 12 de maio de 2010

EIGRP - Básico


1        Teoria EIGRP

O EIGRP é um protocolo de roteamento de convergência rápida de fácil configuração que usa o protocolo DUAL. Tem uso de largura de banda reduzido, pois não envia updates periódicos. O EIGRP é considerado um Advanced distance Vector e usa o máximo de 255 hops e 100 de default.
Possui suporte a VLSM e classless routing com sumarização automática ou manual sendo compatível com IGRP se usar o mesmo AS. Capaz de fazer balanceamento de carga em 4 links por default ou 6 configuráveis.
Suporta todas as redes multiaccess, point-to-point e NBMA (Frame-Relay). A Métrica é composta por Bandwidth e Delay como default, mas pode usar: MTU, Loading e Reliability. É a métrica do IGRP x 256. Redes com muitos caminhos alternativos geralmente gera problemas na convergência EIGRP.
Comunicação multicast no 224.0.0.10, Hello de 5s para links maiores que 1.544MB e 60s para menor. Dead time de 3 vezes o hello. Utiliza o RTP (cisco) como protocolo de transporte confiável para envio de update;

1.1           Terminologia

·         Neightbor table: Cada router tem uma tabela com seus routers adjacentes;
·         Neighbor Address: Endereço de rede do vizinho (IP);
·         Q (Queue): Fila de pacotes esperando para serem enviados (0 é normal);
·         SRTT (Smooth Round Trip Timer): O tempo mais rápido que enviou e recebeu um pacote;
·         Hold Time: Tempo máximo até colocar o vizinho em OFF, geralmente 3x o tempo do Hello;
·         Topology table: Cada router tem uma tabela de topologia que inclui todos os caminhos aprendidos para cada protocolo;
·         Routing table: EIGRP escolhe o melhor router (successor) para um caminho e coloca na tabela de rotas;
·         Successor: O successor é o router escolhido como primeira opção para um caminho;
·         Feasible successor: Router de backup é escolhido junto com o successor (principal);
·         FD (feasible distance): Distância Possível, é a soma dos custos de todos os links até o destino;
·         AD (advertised distance): Distancia anunciada, é a soma dos custos do vizinho até o destino.

1.2           Tipos de Mensagens

·         Hello: Usados para descobrir vizinhos por multicast no 224.0.0.10 não confiável de 5 em 5s  para links maiores que 1.544MB ou de 60 em 60s para menores. Envia também o dead time (3x o tempo de hello);
·         Update: Pacotes update requer confirmação (confiável RTP) e são enviados para comunicar que um router especifico sofreu convergência. São enviados por multicast quando um novo router é descoberto;
·         Query: Pacotes que requerem confirmação (confiável RTP) e perguntam se existe um router de backup para um determinado caminho
·         Reply: Pacotes de resposta a um Query que requerem confirmação (confiável RTP), enviado por Unicast somente a quem perguntou;
·         Acknowledgment (ACK): Pacotes de confirmação enviado por unicast. Pacotes como: Update, query e reply precisam de confirmação.
·         Obs: Pacotes de confiança só são retransmitidos 16 vezes, caso contrário o vizinho é considerado Dead.

1.3           Relacionamento com Vizinhos

EIGRP envia multicasts periódicos (hello) pela interface (com IP primário, pois o secundário não forma adjacências) para descobrir vizinhos, quando outro router pertence ao mesmo AS ele recebe o hello e estabelece uma relação de vizinhos mantendo assim as informações de seus vizinhos na sua Neighbor Table.
Quando o vizinho para de responder os pacotes hello e o hold time acaba (3 vezes o tempo do hello), ele considera o vizinho não operacional, assim toda a tabela de topologia aprendida pelo vizinho é deletada e é feita uma convergência.
Os pacotes Hello são enviados de 60 em 60 segundos nos circuitos de largura de banda menor ou igual a T1 como: ISDN BRI, SMDS, etc.
O EIGRP não informa ao vizinho se as suas métricas estiverem mal combinadas, não informa a vizinhos de diferente AS e o pacote Hello é enviado com o endereço primário da interface.
Query (perguntas) são enviadas quando um router é perdido e não existe um sucessor confiável (feasible sucessor) para procurar um caminho alternativo. O router entra em modo ativo e envia queries para todos os routers vizinhos que por sua vez enviam queries para outros vizinhos menos o que lhe enviou inicialmente. Uma solução para reduzir essa propagação é a sumarização de rotas, pois raramente um router remoto precisa saber todas as rotas que são divulgadas em toda rede.
Dual envia a informação de atualização apenas aos routers que precisam, diferente do link-state que envia para todos os vizinhos.

1.4           Descobrindo um Vizinho e Definindo Melhores Rotas

1.            Um novo router A entra na rede e envia um pacote Hello pelas interfaces;
2.            Router B da rede recebe esse hello e responde com pacote update com todos as rotas que ele tem em sua tabela de rotas menos as rotas aprendidas pelo novo router A (split horizon);
3.            Router A responde com um ACK confirmando o recebimento das informações;
4.            Router A ajusta todos os pacotes de update na sua tabela de topologia associando a métrica para alcançar cada destino;
5.            Router A troca pacotes update com cada vizinho;
6.            Cada router envia um ACK de confirmação para o Router A;
7.            Quando todos os routers têm todas as rotas eles estão prontos para escolher as rotas primarias e rotas de backup para manter na Topology Table;
8.            Pelo Dual ele define melhor rota baseado no bandwidth, Delay, Reliability, Loading e MTU;
9.            Se uma rota é perdida o router entra em “Active” procurando por um feasible Sucessor, passado 3min ele volta ao normal;
10.        Se um router está muito ocupado (alto uso de memória) para responder a query e enviar reply de outros routers ou o link estiver funcionando apenas em um sentido ele se encontra em SIA - Stuck in Active.

1.5           DUAL

·         FD (Feasible distance) – Distância confiável é a soma dos custos dos enlaces para alcançar a rede de destino;
·         AD (Advertised Distance) – Distância anunciada é a soma dos custos dos enlaces para a rede de destino anunciado pelos vizinhos;
·         Sucessor – Caminho escolhido para a rede de destino;
·         FS (Feasible Sucessor) – Sucessor confiável para um caminho alternativo para a rede.

1.6           Configuração de EIGRP

·         Ative o EIGRP definindo o AS que deve coincidir com todos da rede;
·         Divulgar as redes que fazem parte do EIGRP. As redes determinam as interfaces que farão parte do EIGRP;
·         O bandwidth default da interface serial é T1 (1.544MB), para mudar use o comando bandwidth na interface;
·         Quando se configura interfaces point-to-multipoint, principalmente em Frame Relay, é importante entender que todos os vizinhos compartilham uma banda igualmente em que a soma dos links de cada vizinho é o bandwidth da serial do router, por isso é importante que a velocidade da serial seja a menor velocidade de todos os links multiplicada pelo número de sub-interfaces;
·         Na topologia point-to-point com 10 links, todos os circuitos virtuais (subinterfaces) usam o bandwidth de 1/10 da interface, isto é, se o link da interface s0 for 256, cada VC (subinterface, s0.1... s0.10) terá um BW de 25;
·         Quando uma rota é aprendida pela sub-interface de uma interface, essa mesma rota não é replicada para outra sub-interface dessa mesma interface devido ao split-horizon.

1.7           Balanceamento de Carga

·         Carga balanceada em 4 links de custos iguais por default, máximo de 6 links;
·         O balanceamento de links de custos diferentes é de acordo com a métrica da rota, e é default;
·         Quando o balanceamento é feito por links de custos diferentes os pacotes são enviados por turnos, o numero de pacotes é inversamente proporcional a métrica da rota;
·         O comando “variance” é usado para adicionar outros links de custos diferentes criando uma margem a ser considerada como load-balance;

2        Cenário

2.1           Objetivo

Seis roteadores (C1, C2, C3, R1, R3 e R6) são conectados conforme a topologia abaixo e devem ser configurados seguindo os seguintes critérios.
Todos os roteadores deverão pertencer a uma rede EIGRP com AS = 1.
Os roteadores R1 e R6 deverão redistribuir as rotas estáticas configuradas.
Os roteadores C1 deverá sumarizar as rotas vindas dos roteadores R1, porém o R6 deverá divulgar as rotas sem sumariza-las.
O roteador R3 deverá gerar uma rota default para a rede EIGRP.
Todos os roteadores deverão usar suas interfaces loopbacks como Router-ID.

2.2           Topologia

Figure-01:              Topologia

2.3           IOS utilizados

·         C1, C2, C3, R1, R3 e R6 – c7200-js-mz.123-7.T.bin

2.4           Configuração dos Roteadores

Em todos os roteadores configura-se o roteamento EIGRP pelo comando “router eigrp ” onde o “AS” é o Autonomous System que deverá ser igual em todos os roteadores do mesmo domínio. O roteador também possui um router ID único que é configurado pelo comando “eigrp router-id ” dentro das configurações de roteamento.
Uma interface fica habilitada a fazer vizinhança quando a rede pertencente aquela interface está no comando “network ” está configurado no routeamento EIGRP. Caso seja necessário divulgar a rede da interface mas não habilita-la para fazer vizinhança EIGRP, usa-se o “passive-interface ” dentro das configurações de roteamento EIGRP.
Por padrão o EIGRP sumariza automaticamente as rotas para o seu vizinho. Pode-se cancelar essa sumarização automática com o comando “no auto-summary”. Desabilitar essa auto sumarização é comum para evitar loops em redes não planejadas, porém a tabela fica maior.
No EIGRP a rota default é gerada para um vizinho configurando um endereço sumarizado 0/0 na interface com o vizinho com o comando “ip summary-address eigrp 0.0.0.0 0.0.0.0”.

2.5           Observações e Bugs

Documentação:
http://www.cisco.com/en/US/partner/docs/ios/12_2/ip/configuration/guide/1cfeigrp.html#wp1001004

2.6           Comandos Importantes de Verificação

C2#sh ip route

Gateway of last resort is 30.30.30.2 to network 0.0.0.0

D    1.0.0.0/8 [90/2681856] via 12.12.12.1, 00:19:17, Serial1/6
     6.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
D       6.6.6.6/32 [90/2809856] via 23.23.23.1, 00:05:27, Serial1/7
D EX    6.2.0.0/24 [170/2681856] via 23.23.23.1, 00:05:27, Serial1/7
D EX    6.3.0.0/24 [170/2681856] via 23.23.23.1, 00:05:27, Serial1/7
D EX    6.0.0.0/24 [170/2681856] via 23.23.23.1, 00:05:27, Serial1/7
D EX    6.1.0.0/24 [170/2681856] via 23.23.23.1, 00:05:27, Serial1/7
     23.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C       23.23.23.0/30 is directly connected, Serial1/7
D       23.0.0.0/8 is a summary, 00:19:16, Null0
     10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
D       10.0.0.0/8 is a summary, 00:19:16, Null0
C       10.10.10.102/32 is directly connected, Loopback0
     12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C       12.12.12.0/30 is directly connected, Serial1/6
D       12.0.0.0/8 is a summary, 00:19:17, Null0
D    13.0.0.0/8 [90/2681856] via 12.12.12.1, 00:07:17, Serial1/6
D    60.0.0.0/8 [90/2681856] via 23.23.23.1, 00:19:17, Serial1/7
     30.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C       30.30.30.0/30 is directly connected, Serial1/0
D       30.0.0.0/8 is a summary, 00:23:04, Null0
D*   0.0.0.0/0 [90/2297856] via 30.30.30.2, 00:06:51, Serial1/0

C2#show ip eigrp neighbors
IP-EIGRP neighbors for process 1
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
2   30.30.30.2              Se1/0             12 00:08:07  184  1104  0  40
1   23.23.23.1              Se1/7             11 00:21:21   83   498  0  32
0   12.12.12.1              Se1/6             13 00:23:42  106   636  0  62

C1#show ip eigrp topology
IP-EIGRP Topology Table for AS(1)/ID(10.10.10.101)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status

P 6.6.6.6/32, 1 successors, FD is 3321856
        via 12.12.12.2 (3321856/2809856), Serial1/7
P 0.0.0.0/0, 1 successors, FD is 2297856
        via 13.13.13.2 (2297856/128256), Serial1/5
P 1.0.0.0/8, 1 successors, FD is 2169856
        via 10.10.10.2 (2169856/256), Serial1/0
P 6.2.0.0/24, 1 successors, FD is 3193856
        via 12.12.12.2 (3193856/2681856), Serial1/7
P 6.3.0.0/24, 1 successors, FD is 3193856
        via 12.12.12.2 (3193856/2681856), Serial1/7
P 6.0.0.0/24, 1 successors, FD is 3193856
        via 12.12.12.2 (3193856/2681856), Serial1/7
P 6.1.0.0/24, 1 successors, FD is 3193856
        via 12.12.12.2 (3193856/2681856), Serial1/7
P 10.0.0.0/8, 1 successors, FD is 128256
        via Summary (128256/0), Null0
P 10.10.10.0/30, 1 successors, FD is 2169856
        via Connected, Serial1/0
P 12.0.0.0/8, 1 successors, FD is 2169856
        via Summary (2169856/0), Null0
P 12.12.12.0/30, 1 successors, FD is 2169856
        via Connected, Serial1/7
P 13.0.0.0/8, 1 successors, FD is 2169856
        via Summary (2169856/0), Null0
P 13.13.13.0/30, 1 successors, FD is 2169856
        via Connected, Serial1/5
P 23.0.0.0/8, 1 successors, FD is 2681856
        via 12.12.12.2 (2681856/2169856), Serial1/7
P 30.0.0.0/8, 1 successors, FD is 2681856
        via 12.12.12.2 (2681856/2169856), Serial1/7
P 60.0.0.0/8, 1 successors, FD is 3193856
        via 12.12.12.2 (3193856/2681856), Serial1/7
P 10.10.10.101/32, 1 successors, FD is 128256
        via Connected, Loopback0

Configuração

2.7           R1

router eigrp 1
 redistribute static
 network 1.1.1.1 0.0.0.0
 network 10.10.10.0 0.0.0.3
 auto-summary
 eigrp router-id 1.1.1.1
!

2.8           C1

!
router eigrp 1
 network 10.10.10.0 0.0.0.3
 network 10.10.10.101 0.0.0.0
 network 12.12.12.0 0.0.0.3
 network 13.13.13.0 0.0.0.3
 auto-summary
 eigrp router-id 10.10.10.101
!

2.9           C2

!
router eigrp 1
 network 10.10.10.102 0.0.0.0
 network 12.12.12.0 0.0.0.3
 network 23.23.23.0 0.0.0.3
 network 30.30.30.0 0.0.0.3
 auto-summary
 eigrp router-id 10.10.10.102
!

2.10     R3

!
interface Serial1/0
 ip address 30.30.30.2 255.255.255.252
 ip summary-address eigrp 1 0.0.0.0 0.0.0.0 5
!
interface Serial1/4
 ip address 33.33.33.2 255.255.255.252
 ip summary-address eigrp 1 0.0.0.0 0.0.0.0 5
!
interface Serial1/5
 ip address 13.13.13.2 255.255.255.252
 ip summary-address eigrp 1 0.0.0.0 0.0.0.0 5
!
router eigrp 1
 network 3.3.3.3 0.0.0.0
 network 13.13.13.0 0.0.0.3
 network 30.30.30.0 0.0.0.3
 network 33.33.33.0 0.0.0.3
 auto-summary
 eigrp router-id 3.3.3.3
!

2.11     C3

!
router eigrp 1
 network 10.10.10.103 0.0.0.0
 network 23.23.23.0 0.0.0.3
 network 60.60.60.0 0.0.0.3
 auto-summary
 eigrp router-id 10.10.10.103
!

2.12     R6

!
router eigrp 1
 redistribute static
 network 6.6.6.6 0.0.0.0
 network 60.60.60.0 0.0.0.3
 no auto-summary
 eigrp router-id 6.6.6.6
!

 

Um comentário:

Ghrégory disse...

Muito bom o conteúdo! Parabéns =)