Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Beispiel: Weiterleiten von Paketen an die Discard-Schnittstelle

In diesem Beispiel wird gezeigt, wie Sie mithilfe von Discard-Routing Denial-of-Service-Angriffe (DoS) abwehren, wichtige Netzwerkressourcen vor Angriffen von außen schützen, Schutzdienste für Kunden bereitstellen, sodass jeder Kunde seinen eigenen Schutz initiieren kann, und DoS-Versuche protokollieren und nachverfolgen können.

Anforderungen

Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.

Überblick

Beim Discard-Routing werden Router mit Regeln konfiguriert, die verhindern, dass Millionen von Anfragen in kurzer Zeit an dieselbe Adresse gesendet werden. Wenn zu viele Anfragen in kurzer Zeit eingehen, verwirft der Router die Anfragen einfach, ohne sie weiterzuleiten. Die Anfragen werden an einen Router gesendet, der die Pakete nicht weiterleitet. Die problematischen Routen werden manchmal als Verwerfungsrouten oder Black-Holed-Routen bezeichnet. Die Arten von Routen, die verworfen werden sollten, sind als Angriffe auf Kunden von Peers oder anderen Kunden, Angriffe von Kunden auf Peers oder andere Kunden, Angriffscontroller, bei denen es sich um Hosts handelt, die Angriffsanweisungen bereitstellen, und nicht zugewiesene Adressräume, die als Bogons oder ungültige IP-Adressen bezeichnet werden.

Nachdem der Angriffsversuch identifiziert wurde, können die Betreiber eine Konfiguration einrichten, um den Angriff abzuschwächen. Eine Möglichkeit, das Verwerfungsrouting in Junos OS zu konfigurieren, besteht darin, für jeden nächsten Hop, der für Verwerfungsrouten verwendet wird, eine statische Verwerfungsroute zu erstellen. Eine statische Route zum Verwerfen verwendet diese discard Option.

Beispiele:

Eine weitere Strategie, die in diesem Beispiel im Vordergrund steht, ist die Verwendung von Routingrichtlinien und der Discard-Schnittstelle. Bei diesem Ansatz enthält die Verwerfungsschnittstelle den nächsten Hop, den Sie den NULL-Routenrouten zuweisen. Eine Verwerfungsschnittstelle kann nur eine logische Einheit (Einheit 0) haben, aber Sie können mehrere IP-Adressen auf Einheit 0 konfigurieren.

Beispiele:

Der Vorteil der Verwendung einer Verwerfungsschnittstelle anstelle der Verwendung von statischen Verwerfungsrouten besteht darin, dass Sie mit der Verwerfungsschnittstelle Filter für das Zählen, Protokollieren und Sampling des Datenverkehrs konfigurieren und der Schnittstelle zuweisen können. Dies wird in diesem Beispiel veranschaulicht.

Um Pakete tatsächlich zu verwerfen, ist eine Routing-Richtlinie erforderlich, die an die BGP-Sitzungen angehängt ist. Um verworfene Routen zu finden, können Sie einen Routenfilter, eine Zugriffsliste oder einen BGP-Community-Wert verwenden.

So würden Sie z. B. einen Routenfilter verwenden:

Routen-Filter

Abbildung 1 zeigt das Beispielnetzwerk an.

Abbildung 1: Verwerfen des SchnittstellenbeispielnetzwerksVerwerfen des Schnittstellenbeispielnetzwerks

Das Beispiel umfasst drei Router mit eingerichteten externen BGP-Sitzungen (EBGP).

Gerät R1 stellt das angreifende Gerät dar. Gerät R3 stellt den Router dar, der dem angegriffenen Gerät am nächsten ist. Gerät R2 entschärft den Angriff, indem es Pakete an die Discard-Schnittstelle weiterleitet.

Das Beispiel zeigt einen ausgehenden Filter, der auf die Verwerfungsschnittstelle angewendet wird.

HINWEIS:

Ein Problem bei der Verwendung eines einzelnen NULL-Routenfilters ist die Sichtbarkeit. Alle verworfenen Pakete erhöhen den gleichen Zähler. Um zu sehen, welche Kategorien von Paketen verworfen werden, verwenden Sie die Zielklassenverwendung (Destination Class Usage, DCU), und ordnen Sie jeder Nullrouten-Community eine benutzerdefinierte Klasse zu. Verweisen Sie dann in einem Firewallfilter auf die DCU-Klassen. Verwandte Beispiele finden Sie unter Beispiel: Gruppieren von Quell- und Zielpräfixen in einer Weiterleitungsklasse und Beispiel: Konfigurieren eines Filters zur Ratenbegrenzung basierend auf der Zielklasse.

Im Vergleich zur Verwendung von Routenfiltern und Zugriffslisten ist die Verwendung eines Community-Werts der am wenigsten administrative Aufwand und der am besten skalierbare Ansatz. Daher ist dies der in diesem Beispiel gezeigte Ansatz.

Standardmäßig muss der nächste Hop mit der externen BGP-Peeradresse (EBGP) übereinstimmen. Um den nächsten Hop für NULL-Routing-Services zu ändern, muss die Multihop-Funktion für die EBGP-Sitzungen konfiguriert werden.

CLI-Schnellkonfiguration Zeigt die Konfiguration für alle Geräte in Abbildung 1an.

In diesem Abschnitt #configuration756__policy-discard-st werden die Schritte auf Gerät R2 beschrieben.

Konfiguration

Verfahren

CLI-Schnellkonfiguration

Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene [edit] ein.

Gerät R1

Gerät R2

Gerät R3

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Anweisungen hierzu finden Sie Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.

So konfigurieren Sie Gerät R2:

  1. Erstellen Sie die Routerschnittstellen.

  2. Konfigurieren Sie einen Firewallfilter, der mit allen Paketen übereinstimmt und die Pakete zählt und protokolliert.

  3. Erstellen Sie eine verworfene Schnittstelle, und wenden Sie den Ausgabe-Firewall-Filter an.

    Eingabe-Firewall-Filter haben in diesem Zusammenhang keine Auswirkungen.

  4. Konfigurieren Sie eine statische Route, die den nächsten Hop an die Zieladresse sendet, die in der discard-Schnittstelle angegeben ist.

  5. Konfigurieren Sie BGP-Peering.

  6. Konfigurieren Sie die Routing-Richtlinien.

  7. Wenden Sie die Routing-Richtlinien an.

  8. Konfigurieren Sie die AS-Nummer (Autonomous System).

Ergebnisse

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie die show interfacesBefehle , show protocols , show policy-options, show routing-optionsund show firewall eingeben. Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, wiederholen Sie die Anweisungen in diesem Beispiel, um die Konfiguration zu korrigieren.

Wenn Sie mit der Konfiguration des Geräts fertig sind, rufen Sie den Konfigurationsmodus auf commit .

Verifizierung

Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.

Löschen der Firewall-Zähler

Zweck

Löschen Sie die Zähler, um sicherzustellen, dass Sie von einem bekannten Nullzustand (0) ausgehen.

Action!

  1. Führen Sie auf Gerät R2 den clear firewall Befehl aus.

  2. Führen Sie auf Gerät R2 den show firewall Befehl aus.

Pingen der Adresse 192.0.2.101

Zweck

Senden Sie Pakete an die Zieladresse.

Action!

Führen Sie den ping Befehl auf Gerät R1 aus.

Bedeutung

Wie erwartet schlägt die Ping-Anforderung fehl, und es wird keine Antwort gesendet. Die Pakete werden verworfen.

Überprüfen des Ausgabefilters

Zweck

Vergewissern Sie sich, dass der Firewall-Filter von Gerät R2 ordnungsgemäß funktioniert.

Action!

Geben Sie auf Gerät R2 den show firewall filter log-discard Befehl ein.

Bedeutung

Wie erwartet wird der Zähler inkrementiert.

HINWEIS:

Das Ping-Paket trägt zusätzlich 20 Byte IP-Overhead sowie 8 Byte ICMP-Header.

Überprüfen des Community-Attributs

Zweck

Vergewissern Sie sich, dass die Route mit dem Attribut community gekennzeichnet wird.

Action!

Geben Sie unter Gerät R1 den show route extensive Befehl ein, indem Sie die Nachbaradresse für Gerät R2, 192.0.2.101, verwenden.

Bedeutung

Wenn Gerät R2 die Route 192.0.2.101 für Gerät R1 ankündigt, fügt Gerät R2 erwartungsgemäß das Community-Tag 100:5555 hinzu.