Auf dieser Seite
Beispiel: Konfigurieren eines DHCP-Firewallfilters zum Schutz der Routing-Engine
In diesem Beispiel wird gezeigt, wie ein Firewallfilter konfiguriert wird, um sicherzustellen, dass die richtigen DHCP-Pakete die Routing-Engine auf Routern der MX-Serie erreichen können.
Anforderungen
Dieses Konfigurationsbeispiel gilt nur für Router, bei denen die Dienste des lokalen DHCP-Servers und des DHCP-Relay-Agenten vom jdhcpd-Prozess und nicht vom Legacy-dhcpd-Prozess oder fud-Prozess (UDP-Weiterleitung) bereitgestellt werden. Router der MX-Serie, M120-Router und M320-Router verwenden jdhcpd. Für DHCP-Relay bedeutet dies, dass die Konfiguration nur auf Hierarchieebene [edit forwarding-options dhcp-relay]
und nicht auf Hierarchieebene [edit forwarding-options helpers bootp]
erforderlich ist.
Über die Geräteinitialisierung hinaus ist keine spezielle Konfiguration erforderlich, bevor Sie diese Funktion konfigurieren können.
Überblick
Firewallfilter, die eine Aktion für DHCP-Pakete an der Routing-Engine ausführen, z. B. einen Filter zum Schutz der Routing-Engine, indem nur ordnungsgemäße DHCP-Pakete zugelassen werden, erfordern, dass sowohl Port 67 (bootps) als auch Port 68 (bootpc) sowohl als Quell- als auch als Zielports konfiguriert sind.
DHCP-Pakete, die auf den Linecards empfangen werden, werden von jdhcpd mit einem neuen UDP-Header gekapselt, wobei ihre Quell- und Zieladressen auf Port 68 gesetzt werden, bevor sie an die Routing-Engine weitergeleitet werden. Bei DHCP-Relay und DHCP-Proxy sind bei Paketen, die vom Router an den DHCP-Server gesendet werden, sowohl der Quell- als auch der Ziel-UDP-Port auf 67 festgelegt. Der DHCP-Server antwortet über dieselben Ports. Wenn die Linecard jedoch diese DHCP-Antwortpakete empfängt, ändert sie beide Portnummern von 67 in 68, bevor die Pakete an die Routing-Engine übergeben werden. Folglich muss der Filter Port 67 für Pakete akzeptieren, die vom Client an den Server weitergeleitet werden, und Port 68 für Pakete, die vom Server an den Client weitergeleitet werden.
In diesem Beispiel konfigurieren Sie zwei Filterbegriffe dhcp-client-accept
und dhcp-server-accept
. Die Übereinstimmungsbedingungen für dhcp-client-accept
geben eine Quell- und Zieladresse für Broadcast-Pakete, das UDP-Protokoll für DHCP-Pakete und den Bootpc-(68)-Quellport an. Pakete, die diese Bedingungen erfüllen, werden gezählt und akzeptiert. Dieser Begriff muss keine Übereinstimmungsbedingung für den Zielport boot ps (67) angeben. Wie unten konfiguriert, kann dieser Begriff sowohl das eigentliche Paket (Port 68) verarbeiten, das an die Packet Forwarding Engine übergeben wird, als auch das gekapselte Paket (Port 67 von jdhcpd in 68 konvertiert), das den DHCP-Daemon erreicht.
Die Übereinstimmungsbedingungen für dhcp-server-accept
geben das UDP-Protokoll an, das für DHCP-Pakete verwendet wird, und sowohl Port 67 als auch 68 für Quellport und Zielport. Pakete, die diese Bedingungen erfüllen, werden gezählt und akzeptiert.
In diesem Beispiel werden weder alle möglichen Konfigurationsoptionen angezeigt, noch wird gezeigt, wie der Filter in Ihrer Konfiguration angewendet wird. Dieses Beispiel gilt sowohl für die statische Anwendung des Filters als auch für die dynamische Anwendung mit einem dynamischen Profil.
Konfiguration
Verfahren
CLI-Schnellkonfiguration
Um den DHCP-Beispielfilter der Routing-Engine schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI ein.
[edit] edit firewall family inet filter RE-protect edit term dhcp-client-accept set from source-address 0.0.0.0/32 set from destination-address 255.255.255.255/32 set from protocol udp set from source-port 68 set then count dhcp-client-accept set then accept up edit term dhcp-server-accept set from protocol udp set from source-port 67 set from source-port 68 set from destination-port 67 set from destination-port 68 set then count dhcp-server-accept set then accept top
Schritt-für-Schritt-Anleitung
Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Anweisungen hierzu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus.
So konfigurieren Sie einen DHCP-Firewallfilter zum Schutz der Routing-Engine:
Erstellen Sie einen Firewallfilter, oder geben Sie einen an.
[edit firewall] user@host# edit family inet filter RE-protect
Erstellen Sie einen Filterbegriff für den Kunden.
[edit firewall family inet filter RE-protect] user@host# edit term dhcp-client-accept
Geben Sie die Übereinstimmungsbedingungen für DHCP-Pakete an.
[edit firewall family inet filter RE-protect term dhcp-client-accept] user@host# set from source-address 0.0.0.0/32 user@host# set from destination-address 255.255.255.255/32 user@host# set from protocol udp user@host# set from source-port 68 user@host# set from destination-port 67
Geben Sie die Aktion an, die für übereinstimmende Pakete ausgeführt werden soll.
[edit firewall family inet filter RE-protect term dhcp-client-accept] user@host# set then count dhcp-client-accept user@host# set then accept
Erstellen Sie einen Filterbegriff für den Server.
[edit firewall family inet filter RE-protect] user@host# edit term dhcp-server-accept
Geben Sie die Übereinstimmungsbedingungen für DHCP-Pakete an.
[edit firewall family inet filter RE-protect term dhcp-server-accept] user@host# set from protocol udp user@host# set from source-port [67 68] user@host# set from destination-port [67 68]
Geben Sie die Aktion an, die für übereinstimmende Pakete ausgeführt werden soll.
[edit firewall family inet filter RE-protect term dhcp-server-accept] user@host# set then count dhcp-client-accept user@host# set then accept
Ergebnisse
Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie den show firewall
Befehl eingeben. Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren.
[edit] user@host# show firewall family inet { filter RE-protect { term dhcp-client-accept { from { source-address { 0.0.0.0/32; } destination-address { 255.255.255.255/32; } protocol udp; source-port 68; destination-port 67; } then { count dhcp-client-accept; accept; } } term dhcp-server-accept { from { protocol udp; source-port [ 67 68 ]; destination-port [ 67 68 ]; } then { count dhcp-server-accept; accept; } } } }
Wenn Sie mit der Konfiguration des Geräts fertig sind, rufen Sie den Konfigurationsmodus auf commit
.
Verifizierung
Führen Sie die folgenden Aufgaben aus, um zu bestätigen, dass der DHCP-Schutzfilter der Routing-Engine DHCP-Pakete ordnungsgemäß weiterleitet:
Überprüfen des DHCP-Filtervorgangs
Zweck
Stellen Sie sicher, dass beide Leistungsindikatoren inkrementiert werden, wenn DHCP-Datenverkehr an die Routing-Engine übergeben wird.
Action!
Geben Sie im Betriebsmodus den show firewall family inet filter RE-protect
Befehl ein.
user@host> show firewall family inet filter RE-protect Filter: RE-protect Counters: Name Bytes Packets dhcp-client-accept 328 1 dhcp-server-accept 574 1 user@host> show firewall family inet filter RE-protect Filter: RE-protect Counters: Name Bytes Packets dhcp-client-accept 660 2 dhcp-server-accept 1152 2
Bedeutung
Die Ausgabe listet die beiden konfigurierten Zähler dhcp-client-accept und dhcp-server-accept auf. Wenn Sie den Befehl mehr als einmal eingeben, können Sie sehen, dass sowohl das Byte- als auch das Paketfeld anzeigen, dass Datenverkehr akzeptiert und gezählt wird.