Netzwerke und Automatisierung 16 Min. Lesezeit

Statische Route per DHCP mit MikroTik RouterOS verteilen

Geben Sie eine IPv4-Route an die Clients über die DHCP-Option 121 aus, kodieren Sie das Präfix und das Next Hop korrekt, bewahren Sie die Standardroute bei und testen Sie Windows, Linux und macOS.

Ein Client im lokalen Netzwerk muss manchmal ein zweites Subnetz über einen Router erreichen, der nicht sein Internet-Gateway ist. Das manuelle Hinzufügen der Route auf jedem Computer funktioniert, aber die Konfiguration wird schnell inkonsistent : vergessener neuer Rechner, neu installierter Laptop, beibehaltene alte Route oder geändertes Gateway, ohne dass alle Clients korrigiert wurden.

DHCPv4 kann diese Information gleichzeitig mit der IP-Adresse, dem DNS und dem Gateway verteilen. Die Option 121, genannt Classless Static Route, transportiert ein oder mehrere CIDR-Ziele mit ihrem Next Hop. RouterOS 7 ermöglicht es, den binären Wert zu konstruieren, ihn einem DHCP-Netzwerk zuzuordnen und, falls erforderlich, auch die Microsoft-Option 249 bereitzustellen.

In diesem Leitfaden verwendetes Szenario

Das Hauptnetzwerk ist 192.168.88.0/24. Der MikroTik 192.168.88.1 bietet Internetzugriff und DHCP. Ein zweiter Router, direkt unter der Adresse 192.168.88.254 erreichbar, bedient den entfernten Standort 10.20.30.0/24.

Schema eines Clients, der per DHCP seine Standardroute und eine direkte Route zu einem entfernten Standort erhält
Option 121 fügt den Pfad 10.20.30.0/24 via 192.168.88.254 hinzu, während die Standardroute auf 192.168.88.1 gerichtet bleibt.

Ziel ist es, den Umweg über das Haupt-Gateway für standortübergreifenden Datenverkehr zu vermeiden. DHCP macht jedoch kein Gerät zum Router : der Next Hop muss sich in einem für den Client direkt erreichbaren Subnetz befinden, das IP-Routing muss auf diesem Next Hop aktiv sein und der Rückweg muss 192.168.88.0/24 kennen.

1. Routing prüfen, bevor DHCP geändert wird

Arbeiten Sie aus dem LAN heraus, aktivieren Sie den Safe Mode mit Strg+X und exportieren Sie die Konfiguration. Die folgenden Befehle ermöglichen es, das DHCP-Netzwerk zu identifizieren und die Erreichbarkeit des zweiten Routers zu überprüfen.

/export file=avant-route-dhcp
/system backup save name=avant-route-dhcp
/ip address print
/ip dhcp-server print detail
/ip dhcp-server network print detail
/ping 192.168.88.254 count=4

Fügen Sie die Route vorübergehend nur auf dem MikroTik hinzu, um den Hin- und Rückweg zu testen. Wenn die Route bereits existiert, erstellen Sie kein Duplikat.

/ip route add dst-address=10.20.30.0/24 \
    gateway=192.168.88.254 \
    comment="Test entfernter Standort"
/ping 10.20.30.1 count=4
/tool traceroute 10.20.30.1

Eine Antwort vom Next Hop, aber keine Antwort vom entfernten Standort, weist in der Regel auf ein Weiterleitungs-, Firewall- oder Rückweg-Routing-Problem hin. Beheben Sie dies, bevor Sie die Route an die Workstations verteilen. Andernfalls automatisieren Sie nur eine unvollständige Konfiguration.

2. Das Encoding der Option 121 verstehen

Jede Route enthält drei aufeinanderfolgende Elemente :

  1. die Präfixlänge in einem Oktett ;
  2. nur die signifikanten Oktette des Ziels ;
  3. die vier Oktette der IPv4-Adresse des Next Hop.

Für 10.20.30.0/24 via 192.168.88.254 :

FeldWertHexadezimal
Präfixlänge/2418
Signifikantes Ziel10.20.300A 14 1E
Next Hop192.168.88.254C0 A8 58 FE

Das letzte Oktett von 10.20.30.0 wird für ein Präfix /24 nicht übertragen. Die erste Route wird somit zu :

18 0A 14 1E C0 A8 58 FE

Die Standardroute 0.0.0.0/0 via 192.168.88.1 enthält keine Ziel-Oktette : Sie beginnt mit 00, gefolgt unmittelbar von den vier Oktetten des Gateways.

00 C0 A8 58 01

Durch die Verkettung der beiden Routen ohne Leerzeichen oder Doppelpunkte ergibt sich der vollständige Wert :

0x180A141EC0A858FE00C0A85801

3. Die Standard-Option 121 erstellen

RouterOS akzeptiert direkt eine rohe Zeichenkette, der 0x vorangestellt ist. Der Parameter force=yes, verfügbar in RouterOS 7 seit Branch 7.1, sendet die Option, auch wenn der Client sie nicht in seine Liste der angeforderten Parameter aufgenommen hat.

/ip dhcp-server option
add name=route-site-distant-121 code=121 force=yes \
    value=0x180A141EC0A858FE00C0A85801

Beginnen Sie für eine homogene und aktuelle Geräteflotte nur mit Option 121. Sie ist standardisiert und ersetzt die alte klassenbasierte Option 33, die nicht alle CIDR-Präfixe sauber darstellen kann.

4. Microsoft-Option 249 hinzufügen, falls die Geräteflotte dies erfordert

Microsoft dokumentiert Option 249 mit genau demselben Format wie Option 121. Sie existiert weiterhin für die Kompatibilität von Windows-Clients und historischen Umgebungen. Sie ist kein zweites Encoding : Es wird dieselbe binäre Sequenz verwendet.

/ip dhcp-server option
add name=route-site-distant-249 code=249 force=yes \
    value=0x180A141EC0A858FE00C0A85801

Setzen Sie sie nicht blindlings in allen Netzwerken ein. Microsoft spezifiziert, dass ein Server, der eine Anfrage für die Optionen 121 und 249 erhält, nur mit 121 antworten sollte. RouterOS kann so konfiguriert werden, dass es beide erzwingt ; diese Strategie muss daher an den tatsächlich vorhandenen Windows-Versionen validiert werden. Wenn alle Workstations die Route mit 121 korrekt installieren, bringt 249 keinen Mehrwert.

5. Die Optionen dem DHCP-Netzwerk zuordnen

Wenn Sie nur die Standard-Option verwenden, ordnen Sie diese direkt dem betreffenden Netzwerk zu.

/ip dhcp-server network
set [find where address="192.168.88.0/24"] \
    dhcp-option=route-site-distant-121
/ip dhcp-server network print detail \
    where address="192.168.88.0/24"

Wenn die Test-Flotte tatsächlich beide Codes benötigt, gruppieren Sie diese in einem Optionssatz. Stellen Sie zunächst sicher, dass nicht bereits ein anderer Satz dem Netzwerk zugeordnet ist : Ein unbedachtes Ersetzen könnte PXE-, VoIP- oder WLAN-Controller-Parameter verschwinden lassen.

/ip dhcp-server option sets
add name=routes-lan \
    options=route-site-distant-121,route-site-distant-249

/ip dhcp-server network
set [find where address="192.168.88.0/24"] \
    dhcp-option="" dhcp-option-set=routes-lan

Die Optionen können auch auf Server-Ebene oder für einen spezifischen Lease zugewiesen werden. RouterOS wendet eine Priorität an, die von RADIUS zum Lease, dann zum Server und schließlich zum Netzwerk reicht. Für eine gemeinsame Route in einem ganzen Subnetz ist die Ebene network am übersichtlichsten.

6. Lease erneuern, ohne den Administrationszugriff zu verlieren

Eine auf dem Server hinzugefügte Option wird nicht sofort an alle Geräte gepusht. Der Client empfängt sie beim nächsten DHCP-Austausch. Deaktivieren Sie auf einer lokalen Workstation die Schnittstelle und aktivieren Sie sie erneut, oder erneuern Sie deren Lease.

# Windows — in einem lokalen Administrator-Terminal
ipconfig /release
ipconfig /renew

# Linux mit NetworkManager
nmcli connection down "LAN"
nmcli connection up "LAN"

# macOS — en0 bei Bedarf ersetzen
sudo ipconfig set en0 DHCP

Führen Sie keine DHCP-Freigabe über die Remote-Verbindung durch, die Sie zur Verwaltung der Workstation nutzen : Die Sitzung wird unterbrochen. Warten Sie auf einem kritischen Server auf die normale Erneuerung oder planen Sie eine unabhängige Konsole ein.

7. Die Route auf jeder Client-Familie überprüfen

Das Vorhandensein eines Leases beweist nicht, dass das System die Option akzeptiert hat. Überprüfen Sie die Routing-Tabelle und den tatsächlich gewählten Next Hop.

# Windows
route print 10.20.30.0
tracert -d 10.20.30.10

# Linux
ip route show
ip route get 10.20.30.10
traceroute -n 10.20.30.10

# macOS
netstat -rn -f inet
route -n get 10.20.30.10
traceroute -n 10.20.30.10

Das erwartete Ergebnis ist 192.168.88.254 für ein Ziel 10.20.30.x und 192.168.88.1 für das Internet. Testen Sie beide Pfade. Eine korrekte entfernte Route in Kombination mit einem Internet-Ausfall zeigt fast immer, dass die Standardroute in Option 121 vergessen wurde.

Überprüfen Sie auf RouterOS die Leases und erfassen Sie den Austausch, falls eine Workstation die Konfiguration ignoriert.

/ip dhcp-server lease print detail
/tool sniffer quick interface=bridge \
    ip-protocol=udp port=67,68
/log print where topics~"dhcp"

Öffnen Sie in Wireshark das DHCP ACK und erweitern Sie die Optionen 121 oder 249. Der Mitschnitt ermöglicht es, einen falsch codierten Wert, eine nicht gesendete Option und einen Client, der sie empfängt, aber die Installation verweigert, zu unterscheiden.

8. NAT, Firewall und Rückweg

Für eine geroutete Kommunikation zwischen den beiden Netzwerken sollte der zweite Router den Datenverkehr aus 192.168.88.0/24 normalerweise nicht maskieren. Er muss dieses Netzwerk als direkt verbunden kennen oder über eine Rückroute dorthin verfügen. Die Firewalls beider Router müssen anschließend nur die notwendigen Datenflüsse zulassen.

Überprüfen Sie insbesondere :

  • die IPv4-Weiterleitung auf dem Router 192.168.88.254 ;
  • eine Rückroute von 10.20.30.0/24 nach 192.168.88.0/24 ;
  • das Fehlen einer zu allgemeinen Regel srcnat masquerade zwischen den beiden LANs ;
  • die Regeln forward in beide Richtungen und die lokalen Richtlinien der Hosts ;
  • eine konsistente MTU, falls der entfernte Standort einen Tunnel durchquert.

Behalten Sie das NAT an der Internet-Grenze bei, vermeiden Sie es aber zwischen internen Netzwerken, wenn echtes Routing möglich ist. Das Routing bewahrt die Quelladressen, vereinfacht die Protokolle und ermöglicht präzise Sicherheitsregeln.

9. Sicherheit und Grenzen

Eine per DHCP bezogene Route ist eine Netzwerk-Kontrollanweisung. Ein rogue DHCP-Server kann den Datenverkehr zu einem bösartigen Next Hop umleiten. Isolieren Sie nicht vertrauenswürdige Ports, aktivieren Sie DHCP Snooping auf administrierbaren Switches, beschränken Sie autorisierte Server und überwachen Sie unerwartete DHCP-Angebote.

Option 121 betrifft nur IPv4. IPv6 verwendet andere Mechanismen, hauptsächlich Router Advertisements und, je nach Architektur, ein Routing-Protokoll oder eine verwaltete Konfiguration. Übertragen Sie die hexadezimale Zeichenkette nicht auf DHCPv6.

Schließlich wenden nicht alle Clients die empfangenen Routen auf dieselbe Weise an. Ein VPN, ein Sicherheitsagent, ein MDM-Profil oder ein eingebauter Netzwerk-Stack kann eine spezifischere Route, eine andere Priorität hinzufügen oder die Option ignorieren. Setzen Sie dies zuerst auf einem repräsentativen Test-VLAN ein.

Fehlerbehebung

SymptomWahrscheinliche UrsacheÜberprüfung
Keine neue RouteAlter Lease, nicht gesendete Option oder inkompatibler ClientErneuern, DHCP ACK erfassen und force=yes testen
Internet verschwindetRoute 0.0.0.0/0 fehlt in Option 12100 C0 A8 58 01 zum Wert hinzufügen
Windows ignoriert die RouteVersion oder Richtlinie, die Code 249 verwendetDieselbe Payload in 249 auf einem Pilot-VLAN testen
Der erste Hop antwortet, der Standort nichtForwarding, Firewall oder Rückroute fehltIn beide Richtungen tracen und Zähler inspizieren
Datenverkehr läuft noch über .1Route fehlt, Metrik oder Präfix falschPräfixlängen und effektive Tabelle vergleichen
Nur einige Geräte schlagen fehlUnvollständige DHCP-Unterstützung oder priorisiertes VPNMitschnitt und Tabelle von zwei Clients vergleichen
Das entfernte Netzwerk sieht nur eine IPNAT auf dem zweiten Router noch aktivsrcnat prüfen und eine Inter-LAN-Ausnahme erstellen

Rollback

Entfernen Sie die Zuordnung zum Netzwerk, bevor Sie die Objekte löschen. Die Clients behalten die Route bis zur Erneuerung oder zum Ablauf ihres Leases ; erneuern Sie anschließend eine Pilot-Workstation und bestätigen Sie die Rückkehr zur vorherigen Tabelle.

/ip dhcp-server network
set [find where address="192.168.88.0/24"] \
    dhcp-option="" dhcp-option-set=""

/ip dhcp-server option sets
remove [find where name="routes-lan"]

/ip dhcp-server option
remove [find where name="route-site-distant-121"]
remove [find where name="route-site-distant-249"]

Stellen Sie die Optionen wieder her, die vor dem Leitfaden existierten, falls das Netzwerk bereits einen benutzerdefinierten Satz verwendete. Entfernen Sie die Test-Route vom MikroTik nur, wenn sie für dieses Verfahren erstellt wurde.

/ip route remove [find where comment="Test entfernter Standort"]

Fazit

Die DHCP-Option 121 vermeidet die manuelle Pflege derselben Route auf jeder Workstation. Eine zuverlässige Konfiguration basiert auf vier Punkten : ein direkt erreichbarer Next Hop, ein gültiger Rückweg, ein exaktes CIDR-Encoding und die Standardroute, die in der Payload enthalten ist.

Option 249 bleibt ein Kompatibilitätswerkzeug, kein systematischer Ersatz für 121. Testen Sie das tatsächliche Verhalten der Clients, beobachten Sie das DHCP ACK und die Routing-Tabelle und erweitern Sie die Bereitstellung dann schrittweise. Eine verteilte Route ist nur nützlich, wenn sie gleichzeitig empfangen, installiert und umkehrbar ist.

Technische Referenzen

Über den Autor

Jeremy Kraft betreut die Infrastruktur und die selbst gehosteten Dienste des IBCSC. Diese Anleitungen beschreiben Konfigurationen, die tatsächlich im Einsatz waren und vor der Veröffentlichung erneut geprüft wurden.

Diskussion

Kommentare

0

Noch kein Kommentar. Eröffnen Sie die Diskussion gern mit einer Frage oder Ihrem eigenen Erfahrungsbericht.

Sie haben ein Konto? Anmelden

Reiner Text, höchstens 2 000 Zeichen. Neue Kommentare werden moderiert. Ihr Name wird mit dem Kommentar angezeigt. Es wird keine E-Mail-Adresse abgefragt; gegen Spam wird nur ein nicht umkehrbarer Fingerabdruck Ihrer IP-Adresse gespeichert.