Especifique um Endereço IP de Próximo Lúpulo para Rotas Estáticas
Introdução
Este documento descreve o conceito básico de rotas estáticas. É utilizado um cenário problemático para demonstrar as circunstâncias em que se torna desejável especificar a interface através da qual o próximo endereço IP de lúpulo pode ser alcançado quando se configura uma rota estática. Não o fazer pode levar a um comportamento indesejado e a um estado de rede quebrado.
Informação de fundo
Rotas estáticas são usadas por uma variedade de razões e são frequentemente usadas quando não existe uma rota dinâmica para o endereço IP de destino, ou quando se pretende anular a rota aprendida dinamicamente.
Por defeito, as rotas estáticas têm uma distância administrativa de uma, o que lhes dá precedência sobre as rotas de qualquer protocolo de roteamento dinâmico. Quando se aumenta a distância administrativa para um valor superior ao de um protocolo de encaminhamento dinâmico, a rota estática pode ser uma rede de segurança no caso de o encaminhamento dinâmico falhar. Por exemplo, as rotas derivadas do Protocolo de Roteamento de Passagens Interiores Melhoradas (EIGRP) têm uma distância administrativa padrão de 90 para rotas internas e 170 para rotas externas. A fim de configurar uma rota estática que é substituída por uma rota EIGRP, especificar uma distância administrativa superior a 170 para a rota estática.
Este tipo de rota estática com uma distância administrativa elevada é chamada rota estática flutuante. É instalada na tabela de rotas apenas quando a rota aprendida dinamicamente desaparece. Um exemplo de uma rota estática flutuante é a rota ip 172.31.10.0 255.255.255.0 10.10.10.2 101.
Nota: Uma distância administrativa de 255 é considerada inalcançável, e as rotas estáticas com uma distância administrativa de 255 nunca são introduzidas na tabela de roteamento.
Rota Estática para Interface sem Endereço IP do Próximo Salto
Se apontar uma rota estática para uma interface e não especificar o endereço IP do próximo salto, a rota é inserida na tabela de roteamento apenas quando a interface está activa. Esta configuração não é recomendada porque quando a rota estática aponta para uma interface e não tem informações sobre o próximo salto, o router considera cada um dos hosts dentro do intervalo da rota a ser directamente ligado através dessa interface. Um exemplo de tal rota estática é a rota ip 0.0.0.0 0.0 0.0 Ethernet0.
Com este tipo de configuração, um router executa o Protocolo de Resolução de Endereços (ARP) na Ethernet para cada destino que o router encontra através da rota padrão porque o router considera todos estes destinos como directamente ligados à Ethernet 0. Este tipo de rota estática, especialmente se for utilizada por muitos pacotes para muitas sub-redes de destinos diferentes, pode causar uma alta utilização do processador e uma cache ARP muito grande (juntamente com falhas de alocação de memória). Portanto, este tipo de rota estática não é recomendado.
Quando se especifica o próximo endereço de salto numa interface directamente ligada, o router não executa ARP para cada endereço de destino. Um exemplo é a rota ip 0.0.0.0 0.0.0 0.0 Ethernet0 192.168.1.1. Pode especificar apenas o endereço de salto seguinte directamente ligado, mas isto não é recomendado por razões que são descritas neste documento. Não é necessário especificar o próximo endereço de salto directamente ligado. Pode especificar o endereço do próximo salto remoto e a interface para a qual o próximo salto remoto se repete.
Se houver a possibilidade de a interface com o próximo salto descer e o próximo salto se tornar acessível através de uma rota recursiva, então deve especificar tanto o endereço IP do próximo salto como a interface alternativa através da qual o próximo salto deve ser encontrado. Por exemplo, rota ip 10.0.0.1 255.255.255.255 Serial 3/3 192.168.20.1. A adição da interface alternativa permite que a instalação da rota estática se torne mais determinista.
Floating Static Route Example
Este exemplo descreve a utilização de rotas estáticas flutuantes e ilustra a necessidade de especificar tanto a interface de saída como o próximo endereço de salto com o comando de rota estática.
Problem
Com a configuração de rede ilustrada na imagem seguinte, um host 172.31.10.1 tem conectividade com a Internet. Neste exemplo, o anfitrião faz uma ligação com o anfitrião remoto da Internet 10.100.1.1:
Com esta configuração, a ligação primária é a ligação entre a porta série 1/0 em R1 à porta série 1/0 em R2 para tráfego de e para o anfitrião 172.31.10.1 para a Internet. O anfitrião 10.100.1.1 é aqui utilizado como exemplo de um anfitrião de Internet. A ligação entre a porta série 2/0 em R1 para a porta série 2/0 em R2 é a ligação de reserva. A ligação de reserva só deve ser usada se a ligação primária falhar. Isto é implementado com a utilização de rotas estáticas que apontam para a ligação primária e a utilização de rotas estáticas flutuantes que apontam para a ligação de backup.
Existem duas rotas estáticas para o mesmo destino (172.31.10.0/24) em R1. Uma rota é a rota estática regular e outra rota é uma rota estática flutuante, que é o caminho de backup, ou caminho redundante para a rede de destino na LAN. O problema neste cenário é que a rota estática flutuante nunca é instalada na tabela de rotas quando a ligação primária está em baixo.
Esta é a configuração em R1:
hostname R1
!
interface Serial1/0
ip address 10.10.10.1 255.255.255.252
!
interface Serial2/0
ip address 10.10.20.1 255.255.255.252
!
ip route 10.0.0.0 255.0.0.0 192.168.10.2
! This is the primary route to get to hosts on the Internet.
ip route 172.31.10.0 255.255.255.0 10.10.10.2
! This is the preferred route to the LAN.
ip route 172.31.10.0 255.255.255.0 10.10.20.2 250
! This is the floating static route to the LAN.
Esta é a configuração em R2:
hostname R2
!
interface Serial1/0
ip address 10.10.10.2 255.255.255.252
!
interface Serial2/0
ip address 10.10.20.2 255.255.255.252
!
ip route 0.0.0.0 0.0.0.0 10.10.10.1
ip route 0.0.0.0 0.0.0.0 10.10.20.1 250
!
Esta é a tabela de encaminhamento para R1:
R1#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 5 subnets, 3 masks
S 10.0.0.0/8 via 192.168.10.2
C 10.10.10.0/30 is directly connected, Serial1/0
L 10.10.10.1/32 is directly connected, Serial1/0
C 10.10.20.0/30 is directly connected, Serial2/0
L 10.10.20.1/32 is directly connected, Serial2/0
172.31.0.0/24 is subnetted, 1 subnets
S 172.31.10.0 via 10.10.10.2
192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.10.0/30 is directly connected, Serial3/0
L 192.168.10.1/32 is directly connected, Serial3/0
Quando um ping é executado do anfitrião para o anfitrião da Internet 10.100.1.1, funciona como esperado:
host#ping 10.100.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.100.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 73/78/80 ms
Um traceroute do anfitrião para o anfitrião da Internet 10.100.1.1 mostra isto:
host#traceroute 10.100.1.1
Type escape sequence to abort.
Tracing the route to 10.100.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 172.31.10.2 1 msec 1 msec 1 msec
2 10.10.10.1 31 msec 39 msec 39 msec
3 192.168.10.2 80 msec * 80 msec
É utilizada a ligação principal 10.10.10.0/30.
Se desligar a porta série 1/0 em R1 para testar a falha, deve esperar que R1 instale a rota estática flutuante para a LAN local 172.31.10.0, e que R2 instale a rota estática flutuante de 0.0.0.0 até 10.10.20.1. Deve-se esperar que o tráfego flua através da ligação de backup.
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#interface serial1/0
R1(config-if)#shutdown
R1(config-if)#end
R1#
No entanto, a rota estática para a LAN 172.31.10.0/24 permanece na tabela de rotas para R1:
R1#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 3 subnets, 3 masks
S 10.0.0.0/8 via 192.168.10.2
C 10.10.20.0/30 is directly connected, Serial2/0
L 10.10.20.1/32 is directly connected, Serial2/0
172.31.0.0/24 is subnetted, 1 subnets
S 172.31.10.0 via 10.10.10.2
192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.10.0/30 is directly connected, Serial3/0
L 192.168.10.1/32 is directly connected, Serial3/0
R1#show ip route 172.31.10.0
Routing entry for 172.31.10.0/24
Known via "static", distance 1, metric 0
Routing Descriptor Blocks:
* 10.10.10.2
Route metric is 0, traffic share count is 1
R1#show ip route 10.10.10.2
Routing entry for 10.0.0.0/8
Known via "static", distance 1, metric 0
Routing Descriptor Blocks:
* 192.168.10.2
Route metric is 0, traffic share count is 1
O ping e traceroute do hospedeiro já não funcionam:
host#ping 10.100.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.100.1.1, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
host#traceroute 10.100.1.1
Type escape sequence to abort.
Tracing the route to 10.100.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 172.31.10.2 1 msec 1 msec 1 msec
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
…
A rota estática flutuante não está instalada em R1 e a rota estática primária ainda está na tabela de encaminhamento para R1, mesmo que a ligação da porta série 1/0 esteja desligada. Isto ocorre porque as rotas estáticas são de natureza recursiva. Mantém sempre a rota estática na tabela de roteamento desde que tenha uma rota para o próximo salto.
Neste cenário de problema, é de esperar que, uma vez que a ligação primária está desligada, a rota estática flutuante com distância administrativa 250 deve ser instalada na tabela de roteamento em R1. No entanto, a rota estática flutuante não está instalada na tabela de roteamento, uma vez que a rota estática regular permanece na tabela de roteamento. O próximo endereço de salto 10.10.10.2 é recursado com sucesso para (para 192.168.10.2) através da rota estática 10.0.0.0/8, que está presente na tabela de roteamento.
Solução
Configurar uma rota estática em R1 onde o próximo salto não pode ser recursivo para outra rota estática. A Cisco recomenda que se configure tanto a interface de saída como o próximo endereço de salto para uma rota estática. No caso de uma interface de série, a especificação da interface de saída é suficiente porque uma interface de série é uma interface ponto-a-ponto. Se a interface de saída for uma interface Ethernet, então deve configurar tanto a interface de saída como o próximo endereço de salto.
Aqui, uma rota estática para a LAN é configurada com a especificação da interface de saída:
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#no ip route 172.31.10.0 255.255.255.0 10.10.10.2
R1(config)#ip route 172.31.10.0 255.255.255.0 Serial1/0
R1(config)#end
R1#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 3 subnets, 3 masks
S 10.0.0.0/8 via 192.168.10.2
C 10.10.20.0/30 is directly connected, Serial2/0
L 10.10.20.1/32 is directly connected, Serial2/0
172.31.0.0/24 is subnetted, 1 subnets
S 172.31.10.0 via 10.10.20.2
192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.10.0/30 is directly connected, Serial3/0
L 192.168.10.1/32 is directly connected, Serial3/0
O ping e o traceroute do anfitrião para o anfitrião da Internet agora funcionam e é utilizado o link de backup:
R1#show ip route 172.31.10.0
Routing entry for 172.31.10.0/24
Known via "static", distance 250, metric 0 (connected)
Routing Descriptor Blocks:
* 10.10.20.2
Route metric is 0, traffic share count is 1
host#ping 10.100.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.100.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 76/79/80 ms
host#traceroute 10.100.1.1
Type escape sequence to abort.
Tracing the route to 10.100.1.1
VRF info: (vrf in name/id, vrf out name/id)
1 172.31.10.2 1 msec 1 msec 1 msec
2 10.10.20.1 38 msec 39 msec 40 msec
3 192.168.10.2 80 msec * 80 msec
Conclusion
Cisco recomenda vivamente que se especifique a interface de saída e o próximo endereço IP de salto quando se configuram rotas estáticas. Quando a interface de saída é um tipo de ligação ponto-a-ponto (por exemplo, uma ligação em série), a especificação do próximo endereço de salto não é necessária.