Um roteador Brocade executando o NetIron 5.2 e uma emulação Dynamips executando o IOS 12.4 falham ao usar de maneira confiável caminhos de custo iguais no que parece ser uma configuração muito simples. Digo "de forma confiável" porque observei muito brevemente o comportamento esperado do Brocade, mas foi após um longo período de inatividade e desapareceu assim que perturbei o sistema.
Caso seja relevante, estou configurando um destino anycast para um serviço de rede sem estado. Essa será uma configuração específica do site, com pouca ou nenhuma diversidade de tamanho de caminho de rede; portanto, o objetivo do recurso anycast é principalmente para redundância de failover e parcialmente para compartilhamento de carga. Minha pergunta diz respeito à função de compartilhamento de carga.
Minha rede de protótipos se parece com isso.
R1 <--N1--> Rcore <--N2--> R2
R1
e R2
anuncie o destino anycast via OSPF. Se Rcore
tiver um custo idêntico nas interfaces N1
e N2
, e o destino anycast tiver um custo idêntico em cada um dos outros roteadores, eu esperaria encontrar dois caminhos de custo iguais na Rcore
tabela de roteamento. Eu não, pelo menos nem sempre, e nem mesmo previsivelmente. Por que não?
Entre outros, detalhes potencialmente relevantes são os seguintes.
Rcore
é um ABR conectandoN1
eN2
, que estão em áreas NSSA separadas, ao backbone (não mostrado).- A inspeção do
Rcore
LSDB confirma que os LSAs esperadosR1
eR2
estão corretamente instalados e contêm o destino anycast com a métrica correta.
Eu considerei três explicações possíveis.
- Não entendo como configurar e operar o ECMP nessas plataformas. Provavelmente, e espero encontrar aqui uma iluminação que não consegui encontrar nos documentos do fornecedor.
- Não entendo a interação entre as áreas OSPF, ECMP, anycast etc. Não acho muito provável, mas estou preparado para aprender alguma coisa.
- Essas implementações de dois fornecedores sofrem do mesmo bug, recurso incorreto ou algo assim. Suponho que isso poderia acontecer.
Editar Exemplo de configuração e saída adicionados para implementação do Dynamips / Dynagen.
Configs
Roteador R1
!
version 12.4
!
hostname R1
!
interface Loopback0
ip address 1.1.1.1 255.255.255.255
ip ospf cost 1
!
interface FastEthernet0/0
ip address 10.1.0.2 255.255.255.252
ip ospf cost 2
!
router ospf 1
router-id 10.1.0.2
log-adjacency-changes
area 0.0.0.1 nssa no-summary
passive-interface Loopback0
network 1.1.1.1 0.0.0.0 area 0.0.0.1
network 10.1.0.0 0.0.0.3 area 0.0.0.1
!
line console 0
exec-timeout 0 0
!
end
Roteador R2
!
version 12.4
!
hostname R2
!
interface Loopback0
ip address 1.1.1.1 255.255.255.255
ip ospf cost 1
!
interface FastEthernet0/0
ip address 10.2.0.2 255.255.255.252
ip ospf cost 2
!
router ospf 1
router-id 10.2.0.2
log-adjacency-changes
area 0.0.0.2 nssa no-summary
passive-interface Loopback0
network 1.1.1.1 0.0.0.0 area 0.0.0.2
network 10.2.0.0 0.0.0.3 area 0.0.0.2
!
line console 0
exec-timeout 0 0
!
end
Roteador Rcore
!
version 12.4
!
hostname Rcore
!
interface Loopback0
ip address 10.0.0.1 255.255.255.255
ip ospf cost 4
!
interface FastEthernet0/0
ip address 10.1.0.1 255.255.255.252
ip ospf cost 2
!
interface FastEthernet0/1
ip address 10.2.0.1 255.255.255.252
ip ospf cost 2
!
router ospf 1
log-adjacency-changes
area 0.0.0.1 nssa no-summary
area 0.0.0.2 nssa no-summary
passive-interface Loopback0
network 10.0.0.1 0.0.0.0 area 0.0.0.0
network 10.1.0.0 0.0.0.3 area 0.0.0.1
network 10.2.0.0 0.0.0.3 area 0.0.0.2
!
line console 0
exec-timeout 0 0
!
end
Resultado
Roteador Rcore
Roteador LSA da R1
Rcore#sh ip ospf database router 10.1.0.2
OSPF Router with ID (10.0.0.1) (Process ID 1)
Router Link States (Area 0.0.0.1)
LS age: 1618
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 10.1.0.2
Advertising Router: 10.1.0.2
LS Seq Number: 80000002
Checksum: 0x726F
Length: 48
Number of Links: 2
Link connected to: a Stub Network
(Link ID) Network/subnet number: 1.1.1.1
(Link Data) Network Mask: 255.255.255.255
Number of TOS metrics: 0
TOS 0 Metrics: 1
Link connected to: a Transit Network
(Link ID) Designated Router address: 10.1.0.2
(Link Data) Router Interface address: 10.1.0.2
Number of TOS metrics: 0
TOS 0 Metrics: 2
Roteador LSA da R2
Rcore#sh ip ospf database router 10.2.0.2
OSPF Router with ID (10.0.0.1) (Process ID 1)
Router Link States (Area 0.0.0.2)
LS age: 1766
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 10.2.0.2
Advertising Router: 10.2.0.2
LS Seq Number: 80000002
Checksum: 0x8A53
Length: 48
Number of Links: 2
Link connected to: a Stub Network
(Link ID) Network/subnet number: 1.1.1.1
(Link Data) Network Mask: 255.255.255.255
Number of TOS metrics: 0
TOS 0 Metrics: 1
Link connected to: a Transit Network
(Link ID) Designated Router address: 10.2.0.2
(Link Data) Router Interface address: 10.2.0.2
Number of TOS metrics: 0
TOS 0 Metrics: 2
Trecho da tabela de roteamento
Rcore#sh ip route 1.1.1.1
Routing entry for 1.1.1.1/32
Known via "ospf 1", distance 110, metric 3, type intra area
Last update from 10.1.0.2 on FastEthernet0/0, 00:30:54 ago
Routing Descriptor Blocks:
* 10.1.0.2, from 10.1.0.2, 00:30:54 ago, via FastEthernet0/0
Route metric is 3, traffic share count is 1