# OPNsense DHCP Relay: IP-Vergabe über VLAN-Grenzen hinweg

TL;DR / Management Summary DHCP-Anfragen (Broadcasts) enden normalerweise an der Grenze eines VLANs (Router). Mit DHCP Relay fungiert OPNsense als Vermittler: Sie nimmt die Anfrage im lokalen VLAN entgegen und leitet sie als Unicast an einen zentralen DHCP-Server (z.B. einen Windows Domain Controller, Artikel 494) weiter. Ein Senior Admin nutzt DHCP Relay, um die IP-Verwaltung an einer zentralen Stelle zu bündeln, anstatt auf jedem VLAN-Interface der Firewall einen eigenen DHCP-Pool zu pflegen.


# 1. Einführung & Funktionsweise

Broadcast zu Unicast.

Da Clients, die noch keine IP haben, nur via Broadcast kommunizieren können, erreichen sie den DHCP-Server nicht, wenn dieser in einem anderen Subnetz steht.

  1. Client: “Brauche IP!” (UDP Broadcast).
  2. Relay (OPNsense): Hört den Broadcast auf dem Interface LAN_VLAN10.
  3. Action: Packt die Anfrage in ein Unicast-Paket und schickt es an die IP des zentralen Servers (z.B. 10.0.0.5).
  4. Server: Erkennt anhand der Relay-Agent-IP, aus welchem Subnetz die Anfrage kommt, und schickt eine passende IP zurück.

# 2. Einrichtung in der Praxis

Der Vermittler-Dienst.

# Schritt 1: Lokalen DHCP-Server deaktivieren

Sie können DHCP Server und DHCP Relay nicht gleichzeitig auf dem gleichen Interface betreiben.

  1. Services -> DHCPv4 -> [Interface]: Deaktivieren.

# Schritt 2: Relay konfigurieren

Services -> DHCPv4 -> Relay.

  1. Interface(s): Wählen Sie alle Interfaces aus, auf denen OPNsense auf Anfragen “lauschen” soll.
  2. Destination server: Die IP Ihres zentralen DHCP-Servers (z.B. der Windows DC).
  3. Append circuit ID: Aktivieren (hilft dem Server bei der Identifizierung des Ports).

# 3. Deep Dive: DHCP Relay vs. IP Helper

Worte und Taten.

In der Cisco-Welt wird diese Funktion oft IP Helper Address genannt.


# 4. Day-2 Operations: Firewall-Regeln

Den Relay-Traffic erlauben.

Damit das Relay funktioniert, müssen Pakete fließen dürfen:

  1. VLAN Interface: Erlauben Sie UDP 67/68 von Any an Any (Broadcast).
  2. LAN/Server Interface: Erlauben Sie den Traffic von der OPNsense-IP zum zentralen DHCP-Server.

# 5. Troubleshooting & “War Stories”

Wenn die Antwort nicht ankommt.

# Top 3 Fehlerbilder

  1. Symptom: Client bekommt keine IP, Relay-Dienst läuft aber.

    • Ursache: Der zentrale DHCP-Server kennt das Subnetz des Clients nicht (Scope fehlt).
    • Lösung: Erstellen Sie am Windows DHCP Server einen neuen Bereich, der exakt zum Client-VLAN passt.
  2. Symptom: Relay sendet Anfragen, aber bekommt keine Antworten.

    • Ursache: Die Windows Firewall auf dem DHCP-Server blockiert UDP 67 von der IP der OPNsense.
    • Lösung: IP der OPNsense in die Whitelist am Windows Server aufnehmen.
  3. Symptom: “Loop” Warnungen im Log.

    • Ursache: Das Relay-Interface wurde versehentlich auch auf dem Interface aktiviert, in dem der Server selbst steht.

# “War Story”: Der “Zirkuläre” Relay

Ein Admin wollte schlau sein und konfigurierte ein DHCP-Relay von VLAN 10 zu VLAN 20 und in einem anderen Menü ein Relay von VLAN 20 zurück zu VLAN 10. Das Ergebnis: Ein einzelnes Paket eines neuen Laptops löste eine unendliche Kette von Relay-Paketen aus. Innerhalb von Sekunden war die Firewall-CPU auf 100%, und das Netzwerk war durch “DHCP-Spam” lahmgelegt. Lehre: DHCP Relay ist ein unidirektionaler Pfad von den Clients zum Server. Prüfen Sie Ihre Topologie auf Schleifen!


# 6. Monitoring & Reporting

Status-Checks.

# Relay Logs

System -> Log-Files -> General (Filter: dhcrelay).


# 7. Fazit & Empfehlung

DHCP Relay ist das Standard-Werkzeug für sauberes IP-Management im Enterprise.


# Anhang: Cheatsheet

Aufgabe Pfad / Befehl
Relay Aktivierung Services -> DHCPv4 -> Relay
Dienst neustarten pluginctl -s dhcrelay restart
Paket-Check (Shell) tcpdump -i vtnet1 port 67 or port 68
Log Pfad /var/log/system/latest.log

# Referenzen