Generelle Frage zu DHCP Relay



  • Hallo zusammen,
    ich hoffe Sie können mir weiterhelfen. Ich habe bisher im Netz recherchiert aber keine genaue Vorgehensweise gefunden.

    Ich habe in einem Testszenario 2x Pfsense mittels OpenVPN angebunden.
    Auf der LAN-Seite des OpenVPN Clients befindet sich ein DDR-WRT Router und auf der LAN Seite des Servers ein Win2008R2 als Radius + DHCP Server.

    Ich habe auf dem DDR-WRT die DHCP Weiterleitung auf den Windows Server konfiguriert.
    Eine Regel für DHCP in beiden PFsense erstellt
    Den DHCP Server auf den PFsense deaktiviert.
    Die DHCP Weiterleitung auf der PFSense für beide Interfaces aktiviert.

    Auf der LAN Seite des Radius habe ich Wireshark installiert und mit den entsprechenden Filterregeln geprüft. Der DHCP Broadcast vom DDR-WRT AP erreicht dieses Netz nicht.
    Radius Auth, Ping etc. funktioniert durch den Tunnel.

    Können Sie mir grundlegenden Einstellungen für DHCP Weiterleitung in ein anderes Netz durch einen Open VPN Tunnel nennen? Muss auf jeder PFSense jeweils der nächste Abschnitt eingestellt werden? Fehlen evtl. Regeln oder muss für diesen Fall Portforwarding gemacht werden?

    Falls die Fragestellung doch nicht allgemein beantwortet werden kann würde ich noch einen Netzplan nachreichen.

    MfG


  • LAYER 8 Moderator

    Hi,

    ich würde einen Segmentfehler vermuten. Die pfSenseC (Client, an der der WiFi-AP hängt) sollte den DHCP Request zu ihrem Gegenstück weiterleiten (pfSenseS) und diese ggf. dann zum W2k8 Server. Andere Alternative - das hängt davon ab, was die pfSenseC als lokal interpretiert, wäre den Relay auf der pfSenseS ganz zu deaktivieren und nur auf der Client pfSense den Relay direkt auf den Server zu konfigurieren. Einen tcpdump können dann auch die beiden pfSensen machen. Sprich: Sie können nach der Einrichtung auf beiden pfs via Diagnostic Menu einen tcpdump machen lassen und sehen, wo die DHCP Pakete dann nicht korrekt entlanglaufen.

    Generell habe ich es eher selten gehört, dass man freiwillig DHCP über einen VPN Tunnel macht, da der Tunnel aus Unwägbarkeiten auch einmal nicht verfügbar sein kann und damit dann komplett alle Clients der Gegenstelle tot sind (Mitarbeiter kommen morgens in die Zweigstelle, keiner kann arbeiten). Im Normalfall werden solche Remote-Scenarien über ein weiteres/neues IP Netz abgedeckt, schon allein um den Standort des Rechners klar definiert zu haben.

    Grüße



  • Hi,
    erstmal vielen Dank für die Hilfe.

    Ich habe testweise tcpdump auf beiden Interfaces laufen lassen.

    Folgenden Befehl habe ich auf der Shell genutzt.

    tcpdump -i em1 -vvv -s 1500 '(port 67 or port 68)'

    An em0 werden die Pakete gesehen.
    Auf der WAN Seite passiert einfach nix.

    Ich habe alle möglichen Varianten mit DHCP Relay auf dem AP und den Weiterleitungen auf den beiden pfsense durch. Ich habe quasi testweise alles erlaubt, explizit Regeln für UDP 67/68 erstellt, das Blocken privater Netze deaktiviert etc. pp.

    Ist es evtl. keine falsche Einstellung sondern ein Fehler. Oder wo könnte ich noch etwas übersehen haben? Wie gesagt Ping, Radius Auth. etc. Geroutete Pakete funktionieren.

    MfG


  • LAYER 8 Moderator

    Auf der WAN Seite wird es schwierig etwas zu sehen, denn die Pakete sollten ja, sofern sie richtig weitergeleitet werden nicht über WAN, sondern tun0 - den OpenVPN Tunnel laufen. Und dort wird es schwer in SSL eingepackt Pakete auf udp/67 oder 68 zu sehen. Man könnte lediglich durch eine loggende Regel prüfen, ob die Pakete überhaupt gesendet werden und dann auf der Server pfSense ebenfalls den Traffic eingehend erstmal loggend erlauben und nachsehen, ob 67/68 ankommt) und anschließend auf dessen LAN Seite weiter dumpen.

    Grüße



  • hi,
    den Gedanken bzgl. des Tunnels hatte ich auch.
    ich habe den Gegentest mal mit tcpdump für Ping auf em1 gemacht.
    Hier habe ich Ergebnisse bekommen.

    Testen möchte ich es natürlich.
    Können Sie Beispiele für eine loggende Regel nennen?
    Hier werde ich bisher nicht wirklich fündig.

    Von meinem Verständnis her wird doch ab dem Zeitpunkt, an dem das Relay greift, geroutet (statt Broadcast).

    Vielen Dank für die Vorschläge.

    MfG


  • LAYER 8 Moderator

    Eine loggende Regel meint lediglich, dass das Logging für die Pass/Block Rule aktiviert wurde. Da Pass Regeln per default nicht geloggt werden, erscheinen damit dann Passes (grün) im Log, was im normalen roten Wald der Blocks eben heraussticht ;) Wenn man auf die Regel auf dem Tunnel Interface ankommend ein Log legt, müsste es DHCP Traffic zeigen, sollte er am Ziel ankommen.

    Gruß



  • Hallo,
    leider bin ich hier auch nicht fündig geworden.

    Bringt es evtl. etwas eine Regel zu setzen die den Traffic explizit erlaubt?
    Es wird ja alles geblockt bis es explizit erlaubt wird. Habe hier schon diverse Tests und Einstellungen gemacht, leider bisher ohne Ergebnis.

    Ich habe in einem älteren Foreneintrag einen Hinweis auf einen Bug gefunden und dies nachrecherchiert.
    Der Eintrag in der services.inc ?! wurde aber scheinbar schon mit einem neueren Release korrigiert.

    MfG


Log in to reply