Besseres Multihoming für Unternehmen

33

Ich möchte einige Meinungen dazu erhalten, wie ich ein BGP-Design mit zwei Providern und zwei Routern verbessern kann. Jeder Provider versorgt ein / 24 öffentliches Subnetz. Ich werde die Router, Circuits, Subnetze, HSRP-Gruppen und Provider als A bzw. B bezeichnen. Die Bandbreite auf jedem Stromkreis ist für die gesamte Last ausreichend.

Aktuelles Design

Das aktuelle Design versucht, eine anbieterspezifische Symmetrie zu erreichen. In einem eingeschwungenen Zustand besteht die beabsichtigte Routing-Logik darin, dass der Verkehr zum / vom Subnetz A nur die Leitung A und der Verkehr zum / vom Subnetz B nur die Leitung B überträgt. Die Schaltungen würden sich in einem ausgefallenen Zustand gegenseitig sichern.

Die Anbieter machen nur Werbung für die Standardroute. Outbound Routing beinhaltet eine Mischung aus PBR und HSRP. Die Router haben kein Routing zwischen sich: Kein iBGP, kein OSPF, kein statisches Routing. Stattdessen gibt es zwei HSRP-Gruppen, die die Standardroute verfolgen. Router A ist primär für HSRP-Gruppe A und Router B ist primär für HSRP-Gruppe B. Downstream-Geräte verfügen über eine Standardroute, die auf HSRP-Gruppe A und PBR verweist und den Datenverkehr von Subnetz B an HSRP-Gruppe B weiterleitet. Das eingehende Routing wird mit und beeinflusst Gemeinschaften. Subnetz A wird auf Leitung B vorangestellt und kommuniziert, und Subnetz B wird auf Leitung A vorangestellt und kommuniziert.

Ich sehe viel Raum für Verbesserungen in diesem Design. Die mangelnde Kenntnis der Internet-Topologie in Verbindung mit der Schaltungsaffinität eliminiert die Auswahl der besten Pfade vollständig. Es bestehen Bedenken hinsichtlich der Einstufung der Anbieter in verschiedene Ebenen, und das Design wurde dahingehend rationalisiert, dass es eine „akzeptable Leistung“ bietet und einfacher zu beheben ist. Tatsächlich könnte das Design unmöglich einfacher sein. Ich habe gezeigt, dass das Transitieren eines zusätzlichen AS dem RTT 6 Hops und 63 ms (+ 421%) hinzufügt. Ich würde es vorziehen, nicht akzeptabel zu sein.

Besseres Design

Durch das bessere Design werden die Router so gut wie möglich über die Internet-Topologie informiert. Der beste Pfadalgorithmus bestimmt die Routing-Logik für eingehende und ausgehende Nachrichten. Die Schaltkreise würden sich in einem fehlerhaften Zustand gegenseitig sichern.

Die Anbieter werben für die Vollansicht. Auf den Routern werden iBGP und OSPF ausgeführt. HSRP wird eliminiert. Das ausgehende Routing wäre ein rein zielbasierter bester Pfad, und das eingehende Routing würde dem Algorithmus für den besten Pfad und den Launen der Transitanbieter überlassen.

Jetzt, wo ich es abtippe, scheint es einfacher zu sein. Zumindest brauchte man weniger Worte, um es zu erklären. Es gibt Bedenken hinsichtlich der Asymmetrie, aber ich habe im aktuellen Design viel Asymmetrie gesehen. Ich würde denken, sie sind wahrscheinlich gleichermaßen anfällig für Asymmetrien und es macht mir wirklich keine Sorgen. Wir haben nie Probleme damit gesehen. Gegenwärtig wird es in den Bereich von ifs verbannt: "Was wäre, wenn wir eine Fehlerbehebung durchführen müssten?"

Bin ich hier weit weg von der Basis oder habe ich den Nagel auf den Kopf getroffen? Wie haben andere dieses Problem gelöst? Was würde Google tun?

Dennis Olvany
quelle
Tolles Detail und Erklärung. Herzlich willkommen!
Pandom
Traditionell sind "Ich möchte ein paar Meinungen zu meinem Design haben" -Fragen keine wirklich guten SE-Fragen ... Aber dies kann auf meta diskutiert werden
Aaron,

Antworten:

16

Ja, Sie haben den Nagel auf den Kopf getroffen.

Das verbesserte Design führt zu einer Asymmetrie, aber Asymmetrie ist eine Tatsache im Internet, und es gibt wirklich keinen guten Grund, eine symmetrische Weiterleitung des Datenverkehrs zu / von zu erwarten. Shoot, das gesamte Konzept der Paketweiterleitung besteht darin, dass separate Pakete unabhängig voneinander weitergeleitet werden und unterschiedliche Pfade nehmen können, selbst Pakete, die in die gleiche Richtung gehen.

Persönlich hasse ich PBR. Eine dieser Technologien ist, dass ich, wenn ich feststelle, dass es die beste Lösung für das Problem ist, innehalte und einen Schritt zurück mache, um zu sehen, ob ich die wahre Natur des Problems wirklich verstehe, und sogar um herauszufinden, was für ein Geschäftsproblem gelöst werden muss ist. Dabei stelle ich fast immer fest, dass es einen Weg gibt, das Problem zu lösen, ohne eine solche Technologie einzusetzen.

Das Vorhandensein vollständiger Internetrouten in Ihren Routern ist gewöhnungsbedürftig, aber sobald Sie sich daran gewöhnt haben, ist es in der Tat sehr einfach zu verstehen und Fehler zu beheben. Sicherlich gibt es weniger "bewegliche Teile" verschiedener Protokolle, über die man sich Sorgen machen muss.

Sie möchten keine vollständigen Internetrouten in Ihrer OSPF-Datenbank haben, also möchten Sie einen Standard über OSPF in Ihrem Netzwerk bekannt machen (oder vielleicht einen statischen Standard ... persönlich bevorzuge ich einen Standard in OSPF). Dadurch wird der Verkehr zu den BGP-sprechenden Internet-Routern geleitet, die eine fundiertere Entscheidung über die vollständigen Internet-Routen treffen können.

Dies gibt Ihnen die Möglichkeit, den besten Weg auf der Basis von Zielen zu finden. Es wird immer noch Fälle geben, in denen der Verkehr Dinge tut, die Sie nicht wirklich erwarten. Machen Sie sich daher mit dem BGP-Routenauswahlverfahren vertraut.

Jeff McAdams
quelle
Danke, Jeff. Ich stimme Ihrer Einstellung zu Züchterrechten zu. Ich habe gesehen, wie es auf albtraumhafte Weise umgesetzt wurde. Ich habe mehr PBR aus Netzwerken herausgerissen, als ich mir merken möchte. Ich habe einmal eine abgestufte Umgebung verwaltet, in der PBR als virtueller Routing-Mechanismus mit einer eindeutigen Route-Map pro SVI (100er) bereitgestellt wurde. Die Züchterrechtsverordnung enthielt auch Genehmigungs- / Nichtfestlegungsklauseln, die zu einem Prozesswechsel führten. In Hardcopy waren es ungefähr 60 Seiten Config. Unnötig zu erwähnen, dass ich die Abrissbirne mitgenommen habe. ersetzte es mit VRF.
Dennis Olvany
6

Den bereits gegebenen anderen eine andere Herangehensweise zu bieten, die besser oder schlechter sein kann als die vorhandenen Ideen, aber in erster Linie durch einige zusätzliche Ideen da draußen;

Ich würde sagen, dass Sie zwei einfache Schritte unternehmen können, um Ihre aktuelle Situation zu verbessern:

Schritt 1 ;

Erhalten Sie vollständige BGP-Tabellen von beiden Providern - Jetzt haben Sie ein optimaleres Outbound-Routing, da Sie über den Transit-Provider mit dem kleinsten AS-Pfad zu Ihrem Ziel routen. Wie Sie sagten, können Sie HSRP entfernen und einfach eine Standardroute in OSPF ankündigen und iBGP zwischen Ihren beiden Edge-Routern ausführen.

Schritt 2 ;

Richten Sie auf Ihren zwei Edge-Routern AS-Prepends und -Communitys usw. ein, um den ausgehenden Datenverkehr nach Bedarf detailliert zu steuern. ISP B hat also möglicherweise eine bessere Route zu einem Teilnetz, aber Sie kaufen möglicherweise mehr Transit von ISP A, und zwar über diese und so weiter.


Angenommen, die beiden von Ihnen genannten / 24-Adressen sind PI-unabhängige Adressräume, so dass Sie sie über beide Anbieter bekannt geben, oder beide Anbieter sind damit einverstanden, den gleichen IP-Adressraum für Sie bekannt zu geben, können Sie nun beide Präfixe von beiden Routern an beide ISPs weitergeben Ohne Präfixe oder Communitys und mit besserem Inbound-Routing (natürlich, es sei denn, Sie haben einige CDRs, die Sie einhalten müssen, oder ähnliches. In diesem Fall können Sie die Einstellungen nach Bedarf vornehmen).

jwbensley
quelle
Danke, Javano. Ich denke, wir sind uns einig, dass die Richtlinien für eingehendes und ausgehendes Routing nachteilig sind. Ich möchte PBR, Prepending und Communities unbedingt beseitigen!
Dennis Olvany
3

Fangen Sie einfach an und fügen Sie erst dann Komplexität hinzu, wenn dies erforderlich ist. Ich würde fragen, ob es überhaupt notwendig ist, OSPF auf Ihren Internet-Edge-Routern auszuführen. Starten Sie PBR am Straßenrand und verwenden Sie es nur in Ihrem internen Netzwerk.

  1. Nehmen Sie vollständige Internetrouten, wenn Ihr Router über den Speicher verfügt, aber filtern Sie! Werfen Sie alles, was Sie brauchen.
  2. Nehmen Sie eine Standardroute von A und B.
  3. Muss iBGP ausführen, damit Ihre Router unter Berücksichtigung aller von A und B empfangenen Präfixe die besten Pfadentscheidungen treffen können.
  4. Wenn Sie vorhaben, sowohl A als auch B / 24 mit beiden Anbietern zu verwenden, können Sie den eingehenden Datenverkehr besser beeinflussen, indem Sie A / 24 im Netzwerk von B voranstellen und umgekehrt. Beide / 24s müssen beworben werden! Erkundigen Sie sich bei Ihrem ISP nach deren Communitys, um die Präpends für Sie festzulegen.
  5. Verwenden Sie zwei verschiedene HSRP-Gruppen für den ausgehenden Datenverkehr von Ihrer Firewall. Sie können die ECLB so einrichten, dass sie die Last auf Ihre beiden Router verteilt. Gleicher Kostenlastenausgleich .

All dies kann vereinfacht werden, wenn Sie nur ein einzelnes / 24 verwenden, das sowohl für A als auch für B beworben wird.

Sehen Sie sich später die Komplexität an, um die Verkehrstechnik und den Schutz zu verbessern:

  1. Machen Sie sich mit den Communitys von A und B vertraut, da Sie möglicherweise Peer-Routenkarten bevorzugen, um localpref festzulegen, um festzustellen, welche Routen A vs. B verwenden.
  2. Legen Sie auf beiden Routern eine statische Standardroute als Notfallsicherung für alle anderen Ereignisse fest, falls der Hintergrundmusik-Effekt ausfällt.

    ip route 0.0.0.0 0.0.0.0 a.b.c.d 254
    
  3. Sehen Sie sich komplexere Werbemethoden an, um Ihre eingehenden Richtlinien zu steuern, z. B. die Hälfte Ihres IP-Speicherplatzes durch A und die andere Hälfte durch B. Für eine gegebene / 24 könnten Sie die / 24 sowohl für A als auch für B werben, teilen Sie diese jedoch in zwei / 25 und werben die unteren / 25 bis A und die oberen / 25 bis B.

  4. Verwenden Sie die Soft-Rekonfiguration, damit Sie Ihre Richtlinien optimieren und in der BGP-Sitzung einen Soft-Reset ausführen können, damit die Präfixe auf der anderen Seite nicht gedämpft werden, wenn Sie die Sitzung vollständig zurücksetzen (oder löschen). Richtlinienänderungen erfordern ein Zurücksetzen.

generalnetworkerror
quelle
1

Ich verstehe aus dem Bericht, dass Sie keine Entscheidung auf der Grundlage von AS-Pfaden treffen müssen, um externe Subnetze zu erreichen. Der einzige Zweck des Dual Homing mit zwei Internetdienstanbietern besteht darin, Redundanz zu erwerben, um das Internet zu erreichen. Wenn dies der Fall ist, müssen Sie BGP nicht unbedingt ausführen. Sie können nur dieselben Standardrouten akzeptieren, die Sie bereits von beiden Diensteanbietern erhalten. Führen Sie nun für die lokale Seite des Netzwerks einen einzelnen ospf-Bereich auf den Routern aus, die mit dem ISP auf der Schnittstelle verbunden sind, die Ihrem LAN zugewandt ist (schließen Sie die ISP-Schnittstelle nicht in den Prozess ein) und je nachdem, wie einfach der Entwurf sein muss Sie können Router in verschiedenen Bereichen hinzufügen und die Subnetze an den Netzwerkgrenzen zusammenfassen, aber für zwei Subnetze ist die Größe der OSPF-Datenbank oder die Anzahl der LSA-Überflutungen meines Erachtens kein großes Problem.

Verteilen Sie auf jedem OSPF-Router, der eine Verbindung zum Internetdienstanbieter herstellt, die erlernten Standardrouten mithilfe der Anweisung "default-information originate" in OSPF.

Einige Vorteile:

  1. Mit diesem Design können Sie BGP beim Erweitern des Netzwerks bei den Dienstanbietern aktivieren und einfach die Standardroute akzeptieren, ohne nachgeschaltete Geräte zu berühren. Bis Sie bestätigen, dass Sie eine Standardroute von BGP erhalten, sind Sie in Ordnung.

  2. Wenn Sie Datenverkehr von einem ISP zur Wartung weiterleiten müssen, entfernen Sie einfach die "Standardinformationen" unter dem OSPF-Prozess auf diesem Router und fahren Sie mit der Wartung fort. Sonst wird nichts benötigt.

Und ich stimme der vorherigen Antwort darin zu, dass symmetrisches Routing überbewertet ist. Ich bin eher auf Skalierbarkeit und Wartungsfreundlichkeit bedacht.

Vinny
quelle
Wenn ich die Pläne von @ user161 verstehe, ist das Ziel eine intelligentere Auswahl des ausgehenden Pfades. Wie erreichen Sie das mit Ihrer OSPF-basierten Lösung?
Paul Gear
Danke, Vinny. Ein Failover des Outobund-Datenverkehrs ist kein Problem. Brauche ich BGP nicht, um ein eingehendes Failover durchzuführen? Wenn dies nur Benutzer wären, die PAT ins Internet bekommen, könnte dies möglich sein, aber dies ist eine Webhosting-Umgebung.
Dennis Olvany
@ user161: Wenn wir ein eingehendes Failover für Ihre ursprünglichen Subnetze benötigen, müssen Sie BGP ausführen. Erkundigen Sie sich bei Ihren Internetanbietern, ob diese die ORF-Fähigkeit für das BGP-Peering unterstützen. In diesem Fall können Sie Subnetze mit lokalem Ursprung über BGP mit einem Eingangsfilter auf den Grenzroutern bekannt machen, um eine Standardroute und / oder einige ausgewählte Subnetze von den ISP-Routern zu akzeptieren. Wenn der ISP ORF nicht unterstützt, gibt es wirklich keine bessere Wahl als den Kauf eines Routers mit mehr Saft.
Vinny
1

Wenn Ihnen die volle BGP-Tabelle zu viel ist, können Sie in Betracht ziehen, nur eine Portion zu erhalten. Möglicherweise geben Anbieter A und B jeweils eine Standardroute und ihre lokalen AS-Routen an. Sie müssten iBGP intern ausführen. Auf diese Weise hätten Sie die kürzeste Route für alles, was direkt mit den Anbietern verbunden ist, und würden entweder für nachgelagerte AS-Routen fahren.

Kelly McDowell
quelle
Danke, Kelly. Das bessere Design würde iBGP ausführen. Eine Hardware-Aktualisierung veranlasst die Überprüfung der Architektur, sodass ich mir keine Sorgen darüber mache, ob die Router damit umgehen können. Der Wechsel von IOS zu JUNOS ist laut Verkaufsteam ein Kinderspiel. Ich bin mir nicht sicher, ob ich damit einverstanden bin.
Dennis Olvany
Ich weiß nicht, dass ich sagen würde, es ist ein Kinderspiel ... es ist entmutigend zu lernen, nicht nur die neue Syntax, sondern auch ein neues Konzept der Syntax. Was ich jedoch sagen werde, ist, dass ich glaube, dass es sich lohnt. JunOS lässt Sie eine Weile am Kopf kratzen, aber irgendwann klickt es und alles wird Sinn machen. Natürlich müssen Sie immer noch nachsehen (die Syntax einer Sprache zu kennen ist nicht dasselbe wie das Vokabular zu kennen), aber im Großen und Ganzen wird es Sinn machen.
Jeff McAdams