Funktionen des EIGRP-Routing-Protokolls

Hallo! In diesem Artikel werde ich über interessante Funktionen des EIGRP-Routing-Protokolls sprechen.
Die Grundlagen von EIGRP sind in einem der Artikel des SDSM-Zyklus gut beschrieben: 6. Netzwerke für die Kleinsten. Teil Sechs Dynamisches Routing .
Die erste Hälfte des Artikels beschreibt kurz einige Fakten zu diesem Protokoll, und die zweite Hälfte enthält einige interessante Beispiele mit Topologie und Befehlen.

Fakten über EIGRP

  • Im Februar 2013 beschloss Cisco, EIGRP zu eröffnen. Es ist anzumerken, dass nicht der Quellcode geöffnet wurde, sondern nur die Informationen, die für die Implementierung des Protokolls erforderlich sind. Infolgedessen wurde der RFC-Entwurf angezeigt . Letzte Aktualisierung 04.10.2014. Dieses Dokument enthüllte kein Schlüsselmerkmal - Stub, ohne das es praktisch nutzlos ist, das Protokoll zu verwenden. Die Reaktion anderer Anbieter ist interessant: Bisher hat niemand außer Cisco Unterstützung für dieses Protokoll in seine Geräte implementiert.
  • EIGRP verwendet 5 K-Werte, die nur Modifikatoren (Koeffizienten) sind, und 4 Metrikwerte zur Berechnung der Metrik. Zuverlässigkeit und Verbindungsbelastung sind dynamische Parameter, daher werden diese Werte nur bei Änderungen im Netzwerk neu berechnet. K5 ist ein zusätzlicher Zuverlässigkeitsfaktor und hat nichts mit MTU zu tun! Lassen Sie mich an die allgemeine Formel zur Berechnung der Metrik erinnern:



    Und wenn K5 = 0 ist, sieht die Formel folgendermaßen aus:







    wobei min_bandwidth die Bandbreite des schlechtesten Links in kbps
    und total_delay die Summe der Verzögerungen aller Links in Mikrosekunden (Mikrosekunden) ist.

    Um die Metrik zu ändern, wird die Verzögerung normalerweise geändert , da die Bandbreite die QoS beeinflusstAußerdem ändert das Ändern der Bandbreite nicht immer die Metrik (wenn sich die schlechteste Verbindung nicht geändert hat).
    Der minimale MTU-Wert wird zwar berechnet, spielt jedoch keine Rolle bei der Bestimmung des besten Pfades. In meiner Topologie in GNS3 habe ich mehrere Dutzend Tests mit den Befehlen redistribute connected metric und maximum-arrows 1 durchgeführt . Trotz der unterschiedlichen Bedeutungen von MTU ist der beste eingeschlagene Weg derjenige, der zuvor untersucht wurde. Interessant ist auch, dass der RFC-Entwurf einen zusätzlichen Koeffizienten K6 und zwei zusätzliche metrische Werte nennt: Jitter und Energie.
  • Machbarkeitsbedingung ist nicht immer leicht zu verstehen. Aber die Logik ist sehr einfach: Wenn Sie mir sagen, dass Sie eine Metrik haben, die über der Metrik meines besten Pfades liegt, besteht die Möglichkeit, dass Ihr Pfad durch mich verläuft, was wiederum eine Schleife bedeutet. Aus diesem Grund werden häufig „schleifenfreie“ Pfade, die für den Techniker offensichtlich sind, vom Protokoll möglicherweise nicht als mögliche Nachfolger angesehen . Denken Sie daran, dass EIGRP nicht das gesamte Netzwerk sieht - nur das, was die Nachbarn sagen.
  • EIGRP - Distance Vector-Protokoll, es gibt keine Hybridität.
  • Mit show ip eigrp neighbors detail können Sie sehen, ob der Nachbar ein Stub-Router ist.
  • Denken Sie daran, dass mit dem Befehl show ip eigrp topology nur Nachfolger und mögliche Nachfolger sichtbar sind. Um alle möglichen Pfade anzuzeigen , müssen Sie das Schlüsselwort all-links hinzufügen: show ip eigrp topology all-links .
  • IOS 15 hat die automatische Zusammenfassung standardmäßig deaktiviert, hurra! Auf Wiedersehen, kein Team mit automatischer Zusammenfassung !
  • Die Timer-Werte (Hallo und Halten) können unterschiedlich sein. Der Wert des Halte-Timers wird übrigens an den Nachbarn weitergegeben und bedeutet: "Wenn Sie nicht innerhalb von X Sekunden eine Nachricht von mir erhalten, bin ich nicht mehr verfügbar."
  • EIGRP verwendet ein eigenes Transportprotokoll (IP-Protokollnummer: 88) - RTP (Reliable Transport Protocol). Verwechseln Sie es nicht mit einem anderen bekannten Real-Time-Transport-Protokoll (auch RTP), mit dem Echtzeit-Streams wie VoIP (in Verbindung mit SIP) übertragen werden. EIGRP verwendet auch die Multicast-Adresse: 224.0.0.10. Vergessen Sie nicht, EIGRP-Verkehr in der eingehenden ACL zuzulassen, indem Sie beispielsweise den Eintrag: allow eigrp any any verwenden .
  • Aufgrund der unterschiedlichen administrativen Entfernungswerte (AD) für die internen (90) und externen (170) Routen vermeidet EIGRP einige Probleme bei der Umverteilung.
  • Denken Sie daran, dass 2 Router Nachbarn sein können und gleichzeitig möglicherweise keine Nachbarschaft haben. Mit dem Befehl show ip eigrp neighbors werden nur Nachbarn angezeigt. Bei der Ausgabe dieses Befehls sollten Sie auf das Q Cnt- Feld achten : Wenn es nicht Null ist, liegt möglicherweise ein Problem im Netzwerk vor (z. B. eine unbestimmte Nachbarschaft).
  • EIGRP kann zusätzlich zur Gesamtroute eine bestimmte Route senden. Diese Funktion wird als EIGRP Leak Map bezeichnet . Dies ist nützlich, wenn wir Verkehrstechnik betreiben möchten. Die Idee ist der bgp unsuppress-map sehr ähnlich . Verwenden Sie dazu den folgenden Befehl: ip übersichtsadresse eigrp as-number übersichtsadresse übersichtsmaske leak-map leak-map-route-map .
  • Wie alk0v richtig hinzufügt , unterstützt EIGRP im Gegensatz zu OSPF den Lastausgleich mit unterschiedlichen Metriken ( ungleicher Kosten-Lastausgleich ). Verwenden Sie dazu den Befehl varance . Es sei daran erinnert , zwei Dinge: das funktioniert nur für Nachfolger / machbar Nachfolger und wird standardmäßig die CEF führt balancieren Das pro-Ziel . Letzteres bedeutet, dass 2 Pakete, für die die entsprechenden IP-Adressen von Absender und Empfänger identisch sind, immer dieselbe Schnittstelle verlassen, was die Überprüfung erheblich verkompliziert. Wenn Sie dies dennoch überprüfen möchten, können Sie CEF in den Paketmodus umschalten (verwenden Sie im Schnittstellenkonfigurationsmodus den BefehlIP-Lastverteilung pro Paket ) oder deaktivieren Sie sie insgesamt (der Befehl no ip cef im globalen Konfigurationsmodus wird nicht empfohlen).

Nun, ist es Zeit zu üben?

EIGRP Split Horizon

Fast jedes Buch beschreibt dieses Problem in Netzwerken der Form Hub-and-Spoke (Frame Relay, DMVPN) + EIGRP. Warum also nochmal darüber reden und mit einem Beispiel fragen Sie? Und lasst uns genau hinschauen, es ist sehr einfach, hier in eine Falle zu tappen. Berücksichtigen Sie die folgende Frame-Relay-Netzwerktopologie:



Laden Sie die Topologie mit Startkonfigurationsdateien für GNS3 hier herunter . Verwendetes IOS-Image: c3640-jk9s-mz.124-16.bin

Nichts Besonderes? 2 virtuelle Verbindungen (PVC), ein gemeinsames Netzwerk 192.168.123.0/24, alles funktioniert auf physischen Schnittstellen und nicht auf Subschnittstellen. Jeder Router hat auch eine konfigurierte Loopback-Adresse. EIGRP ist auf allen Schnittstellen aktiviert.
Sehen wir uns die Routing-Tabelle auf dem Hub R1 an:



R1 hat Routen in alle Netze. Und jetzt auf dem Höhepunkt von R2:



Aus irgendeinem Grund hat R2 keine Route zum 3.3.3.0/24-Netzwerk.
Sie schreien wahrscheinlich schon im Geiste: "Ja, was ist das? Offensichtlich müssen Sie den geteilten Horizont auf der s0 / 0-Schnittstelle von R1 deaktivieren! ”
Lassen Sie uns mit dem Befehl show ip interface s0 / 0 nachsehen :



???
Und in diesem Moment können Sie leicht verwirrt werden. Es war eine großartige Vermutung!
Aber ich versuche immer noch, den Befehl no ip split-horizon eigrp 100 auszuführen :



Nun schauen wir uns die Routing-Tabelle an:



Oh! Eine Route ist erschienen.
Überprüfen Sie Ping:



Ping, alles ist in Ordnung.
Also, was ist los? Warum den Befehl ip interface s0 / 0 anzeigen?hat gezeigt, dass der geteilte Horizont deaktiviert ist, wenn er tatsächlich aktiviert wurde? Die Antwort ist einfach. Diese Zeile besagt nur, dass der geteilte Horizont für RIP deaktiviert ist.
Und wie sucht man dann nach EIGRP? Im Allgemeinen nichts als das Vorhandensein einer Zeile in der aktuellen Konfiguration:



Übrigens wurde es in iOS 15 möglich, dies mit dem Befehl show ip eigrp interfaces detail s0 / 0 zu überprüfen .
Hier ist so ein interessantes Feature.

Aber wahrscheinlich war der ganze Artikel nur für das folgende Beispiel gedacht.

EIGRP Router-ID

Überlegen Sie sorgfältig Topologie:



Datei herunterladen Topologie mit einer Ausgangskonfiguration für GNS3 kann hier . Verwendetes IOS-Image: c3640-jk9s-mz.124-16.bin.

4 Router, 2 Domain-Routing: OSPF-Bereich 0 und EIGRP AS 100. Der R1-Router führt eine Umverteilung in beide Richtungen durch. Loopback0 R1 in der EIGRP-Domäne angekündigt, Loopback1 R1 nirgendwo angekündigt.
Schauen wir uns die Routing-Tabelle von Router R2 an:



Großartig, die Routen zu den ospf-Netzwerken 172.16.x.0 / 24 sind als D EX (EIGRP External, AD 170) sichtbar .
Und nun zur Routing-Tabelle R3:



???
Und wo sind die Routen zu ospf Netzwerken?
Werfen wir einen Blick auf die Nachbarn von R1:



Ist schon gut, oder? Und dann sieht R3 andere EIGRP-Routen: zum Beispiel 2.2.2.0/24 und 1.1.1.0/24 . Der nächste Schritt wäre logisch, die Routen-Mepas auf R1 und R2 zu sehen. Aber in diesem Beispiel habe ich sie nicht verwendet. Wenn Sie den Grund nicht kennen, ist es schwierig, dieses Problem zu entschärfen. Mal sehen, was los ist. Auf R1 und R3 verwenden wir den Befehl show ip eigrp topology :





Ja, das Problem ist dieselbe Eigrp-Router-ID. In IOS ist ein großartiger Befehl versteckt (nicht sichtbar mit "?"), Der Ihnen hilft zu verstehen, was passiert: IP-Eigrp-Ereignisse in R3 anzeigen .



[Dieser Befehl kann bei anderen Problemen mit EIGRP helfen.]

Wir sehen, dass R3 weiterhin Routen zu den Netzwerken 172.16.x.0 / 24 empfängt, verwirft sie jedoch aufgrund einer doppelten Router-ID.
Es stellt sich heraus, dass es EIGRP im Allgemeinen egal ist, welche Router-ID Sie in AS haben. Genau so lange, bis die Umverteilung auf einem der Router mit derselben Router-ID konfiguriert ist. Dann erhalten die injizierten Routen ein spezielles Etikett von der Router-ID des Routers, der die Umverteilung vorgenommen hat. Wenn der Router eine Route mit einem solchen Etikett empfängt und feststellt, dass seine Router-ID übereinstimmt, wird eine solche Route verworfen. Die Router-ID wird auf die gleiche Weise wie in OSPF definiert: mit einem speziellen Befehl, entweder der höchsten Loopback-Adresse oder der höchsten IP-Adresse, wenn kein Loopback vorhanden ist.
In diesem Fall gibt es auf Router R1 Loopback1: 11.11.11.11 , und auf R3 wurde der Befehl eigrp router-id 11.11.11.11 verwendet . Brechen Sie es mit dem Schlüsselwort no abund überprüfen Sie die Routing-Tabelle noch einmal:



Routen erschienen, das Problem ist gelöst!



In einem realen Netzwerk ist es viel wahrscheinlicher, dass die gleichen Loopback-Adressen versehentlich auf zwei Routern konfiguriert werden. Wenn Sie noch nie von diesem Problem gehört haben, kann die Fehlersuche eine faszinierende Aktivität werden und viele Nerven streicheln.
Wenn Sie der Meinung sind, dass Sie EIGRP gut genug kennen, empfehle ich Ihnen, das EIGRP Troubleshoot Lab von GNI3Vault auszuprobieren.

Bonus! Schlüsselanhänger

Dies ist für EIGRP von geringer Relevanz, aber von den drei Routing-Protokollen EIGRP, OSPF und BGP verwendet nur EIGRP die Schlüsselkette zur Authentifizierung. Mit der Schlüsselkette können Sie verschiedene Schlüssel zu verschiedenen Zeiten verwenden. Beispielsweise können Sie das EIGRP-Authentifizierungskennwort nahtlos ändern, ohne die Adjazenz zum Absturz zu bringen. Aber wir sehen ein bisschen anders aus. Dieser Mechanismus hat eine interessante Eigenschaft. Sicherlich weiß jeder, dass der Dienstkennwortverschlüsselungsbefehl einen Hacking-Algorithmus (Typ 7) verwendet. Im Internet finden Sie viele Websites, die das Kennwort von einem solchen Hash wiederherstellen. Es stellt sich jedoch heraus, dass Sie den Router dazu bringen können, das Kennwort selbst wiederherzustellen. Lass mich dir zeigen wie. Erstellen Sie zunächst einen lokalen Datenbank - Benutzer mit dem Kennwort Daten und beinhaltet Service, Passwort-Verschlüsselung :



BlickFühren Sie config aus und kopieren Sie den Hash-Wert:



Erstellen Sie nun eine Schlüsselkette , die Schlüsselnummer und geben Sie diesen Hash ein:



Verwenden Sie nun den Befehl show key chain :



Cool, oder? :)
Hoffe es hat euch gefallen!

Jetzt auch beliebt: