Ein Brocade-Router mit NetIron 5.2 und eine Dynamips-Emulation mit IOS 12.4 verwenden in einer scheinbar sehr einfachen Konfiguration nicht zuverlässig die gleichen Kosten. Ich sage "zuverlässig", weil ich das erwartete Verhalten des Brocade sehr kurz beobachtet habe, aber es war nach einer längeren Zeit der Inaktivität und verschwand, sobald ich das System gestört habe.
Falls relevant, richte ich ein Anycast-Ziel für einen zustandslosen Netzwerkdienst ein. Hierbei handelt es sich um eine standortspezifische Konfiguration mit geringer oder keiner Diversität der Netzwerkpfadlänge. Der Zweck der Anycast-Funktion besteht daher hauptsächlich in der Failover-Redundanz und teilweise in der Lastverteilung. Meine Frage betrifft die Load-Sharing-Funktion.
Mein Prototyp-Netzwerk sieht so aus.
R1 <--N1--> Rcore <--N2--> R2
R1
und R2
werben Sie über OSPF für das Anycast-Ziel. Wenn Rcore
die Kosten für das Gerät N1
und die N2
Schnittstellen identisch sind und das Anycast-Ziel auf jedem der anderen Router dieselben Kosten hat, würde ich erwarten, dass die Rcore
Routingtabelle zwei Pfade mit gleichen Kosten enthält . Ich zumindest nicht immer und auch nicht vorhersehbar. Warum nicht?
Mögliche relevante Details sind unter anderem die folgenden.
Rcore
ein ABR verbindetN1
undN2
, die in separaten Bereichen NSSA ist, an das Grundgerüst (nicht gezeigt).- Die Überprüfung der
Rcore
LSDB bestätigt, dass die erwarteten LSAs vonR1
undR2
korrekt installiert sind und das Anycast-Ziel mit der richtigen Metrik enthalten.
Ich habe drei mögliche Erklärungen in Betracht gezogen.
- Ich verstehe nicht, wie ECMP auf diesen Plattformen konfiguriert und betrieben wird. Dies ist wahrscheinlich und ich hoffe, hier eine Aufklärung zu finden, die ich in den Herstellerdokumentationen nicht finden konnte.
- Ich verstehe die Interaktion zwischen OSPF-Bereichen, ECMP, Anycast usw. nicht. Ich halte dies nicht für sehr wahrscheinlich, aber ich bin trotzdem bereit, etwas zu lernen.
- Diese beiden Anbieter-Implementierungen leiden unter demselben Fehler oder derselben Fehlfunktion oder etwas anderem. Ich nehme an, es könnte passieren.
Bearbeiten Beispielkonfiguration und Ausgabe für die Dynamips / Dynagen-Implementierung hinzugefügt.
Configs
Router 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
Router 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
Router 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
Ausgabe
Router Rcore
Router LSA von 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
Router LSA von 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
Auszug aus der Routing-Tabelle
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