DHCP Reservierung per Powershell ändern
Hallo,
ich habe einen Win2016 Server mit DHCP laufen.
Ich möchte für 3 DHCP Reservierungen gerne die Option 3 (Router) zeitgesteuert ändern und wollte das per Powershell automatisch erledigen.
Ich habe schon die Funktion gefunden.
finde aber nicht das passende damit in der Doku.
Ich könnte mir auch denken, dass man die Reservierung auch erst löscht und dann neu anlegt.
Gruß
ich habe einen Win2016 Server mit DHCP laufen.
Ich möchte für 3 DHCP Reservierungen gerne die Option 3 (Router) zeitgesteuert ändern und wollte das per Powershell automatisch erledigen.
Ich habe schon die Funktion gefunden.
Set-DhcpServerv4Reservation
Ich könnte mir auch denken, dass man die Reservierung auch erst löscht und dann neu anlegt.
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 1336366348
Url: https://administrator.de/forum/dhcp-reservierung-per-powershell-aendern-1336366348.html
Ausgedruckt am: 02.04.2025 um 09:04 Uhr
9 Kommentare
Neuester Kommentar
Moin,
schau doch mal in die Doku sämtlicher Set-DhcpServerv4... Kommandos: https://docs.microsoft.com/en-us/powershell/module/dhcpserver/?view=wind ...
Mit dürfte Dir schon geholfen sein.
Das ändert das allerdings global. Ich kann mir nicht vorstellen, dass man für einzelne Reservierungen die Options ändern kann. Das gilt für den kompletten DHCP-Server.
Darf man noch den Hintergrund der Frage erfahren, mir will so gar kein Anwendungsfall einfallen
Gruß
cykes
schau doch mal in die Doku sämtlicher Set-DhcpServerv4... Kommandos: https://docs.microsoft.com/en-us/powershell/module/dhcpserver/?view=wind ...
Mit
Set-DhcpServerv4OptionValue
Das ändert das allerdings global. Ich kann mir nicht vorstellen, dass man für einzelne Reservierungen die Options ändern kann. Das gilt für den kompletten DHCP-Server.
Darf man noch den Hintergrund der Frage erfahren, mir will so gar kein Anwendungsfall einfallen
Gruß
cykes

Zitat von @cykes:
Das ändert das allerdings global. Ich kann mir nicht vorstellen, dass man für einzelne Reservierungen die Options ändern kann.
Jepp, das geht über die Reservierungen nicht.Das ändert das allerdings global. Ich kann mir nicht vorstellen, dass man für einzelne Reservierungen die Options ändern kann.
Darf man noch den Hintergrund der Frage erfahren, mir will so gar kein Anwendungsfall einfallen 
Ich schätze mal sowas wie PolicyRouting.Sowas fackelt man dann aber in der Regel über den selben Router mittels PolicyRouting ab indem man mit Routing-Tags bzw. MangleRules im Router selbst das Routing ändert so das die Pakete der jeweiligen Client's dann über das andere GW fließen.
Sowas bietet inzwischen jeder halbwegs vernünftige Router auch zeitgesteuert an. pFSense, Mikrotik, Cisco, ... die können das alle schon per Default.
Das ändert das allerdings global. Ich kann mir nicht vorstellen, dass man für einzelne Reservierungen die Options ändern kann. Das gilt für den kompletten DHCP-Server.
Hmm, mein Gedankengang gerade dazu ... - dann könnte man unterschiedliche Bereichsoptionen für eine Gruppe Clients doch sicher mit dem Unterteilen des Gesamtbereiches in unterschiedliche Teilbereiche erreichen .. ?
Ich möchte für 3 DHCP Reservierungen gerne die Option 3 (Router) zeitgesteuert ändern und wollte das per Powershell automatisch erledigen. <
... Was ja auch beim Client, der gerade online ist, getriggert werden muss, sich den neuen Wert abzuholen...
Da ist die Router-Lösung sicherer und besser, schätze ich...

Das ist der falsche Weg.
Welchen primären Router setzt ihr ein? Dann könnte man ja dazu eine bessere Lösung für dein Problem geben.
Wenn du warum auch immer dabei bleiben willst nimm halt NETSH zum Ändern der Optionen für eine bestimmte Reservierung
Dieses Beispiel ändert im Scope 192.168.50.0 für die Reservierte IP 192.168.50.102 die Option Router(003) auf 192.168.50.2:
Schönen Sonntag/Feiertag
Hintergrund ist einfach nur, dass bestimmte Geräte zu einer bestimmten Zeit nicht über das normale Gateway gehen sollen. Mir ist klar das das nicht während der Laufzeit geht.
Genau sowas regelt man eben in der Regel mittels Policy-Routing auf dem existierenden Gateway, indem man dort per Routing-Tag die Pakete der gewünschten Clients auf das zweite Gateway umleitet und das geht auch zeitgesteuert wenn man will und das wirkt eben sofort und nicht erst wenn der Client meint sich mal dazu zu bemühen.Welchen primären Router setzt ihr ein? Dann könnte man ja dazu eine bessere Lösung für dein Problem geben.
Wenn du warum auch immer dabei bleiben willst nimm halt NETSH zum Ändern der Optionen für eine bestimmte Reservierung
Dieses Beispiel ändert im Scope 192.168.50.0 für die Reservierte IP 192.168.50.102 die Option Router(003) auf 192.168.50.2:
netsh dhcp server v4 scope 192.168.50.0 set reservedoptionvalue 192.168.50.102 003 IPADDRESS 192.168.50.2
Schönen Sonntag/Feiertag
Servus @killtec ,
ich würde auch bevorzugt den Policy-Routing Weg gehen den @149569 schon angesprochen hat, das ist damit in der Regel schmerzloser und zuverlässiger.
Um einen Mikrotik-Router mal als Beispiel zu nehmen sieht das im einfachsten Fall für einen Client 192.168.50.102 so aus um dessen Traffic von Samstag 00:00 Uhr bis Sonntag 00:00 Uhr über das Gateway 192.168.50.2 umzuleiten.
Das richtet man einmalig ein und braucht dann auch keinen Task der regelmäßig laufen müsste.
Um aber trotzdem noch eine Antwort auf die eigentliche Frage des Threads zu geben:
Das Ändern der Optionen für eine bestimmte Reservierung via Powershell geht dann so
Um eine bestimmte Option (in dem Fall die Option 003 (Router)) wieder zu löschen bemüht man dann
Die andere Variante via netsh hat @149569 ja oben auch schon gepostet, ich führe sie hier nur nochmal als Referenz zusammen mit der Powershell Variante auf
Grüße Uwe
ich würde auch bevorzugt den Policy-Routing Weg gehen den @149569 schon angesprochen hat, das ist damit in der Regel schmerzloser und zuverlässiger.
Um einen Mikrotik-Router mal als Beispiel zu nehmen sieht das im einfachsten Fall für einen Client 192.168.50.102 so aus um dessen Traffic von Samstag 00:00 Uhr bis Sonntag 00:00 Uhr über das Gateway 192.168.50.2 umzuleiten.
/ip route add gateway=192.168.50.2 routing-mark=GW2
/ip firewall mangle add chain=prerouting action=mark-routing new-routing-mark=GW2 passthrough=yes src-address=192.168.50.102 time=0s-1d,sun,sat
Um aber trotzdem noch eine Antwort auf die eigentliche Frage des Threads zu geben:
Zitat von @cykes:
Mit dürfte Dir schon geholfen sein.
Das ändert das allerdings global. Ich kann mir nicht vorstellen, dass man für einzelne Reservierungen die Options ändern kann. Das gilt für den kompletten DHCP-Server.
@cykes : Doch das Ändern von Optionen ist auch für Reservierungen einzeln möglich man muss nur den Parameter -ReservedIP dazu nutzen anstatt eine ScopeID anzugeben.Mit
Set-DhcpServerv4OptionValue
Das ändert das allerdings global. Ich kann mir nicht vorstellen, dass man für einzelne Reservierungen die Options ändern kann. Das gilt für den kompletten DHCP-Server.
Das Ändern der Optionen für eine bestimmte Reservierung via Powershell geht dann so
Set-DhcpServerv4OptionValue -ReservedIP 192.168.50.102 -Router 192.168.50.2
Remove-DhcpServerv4OptionValue -ReservedIP 192.168.50.102 -OptionId 3
netsh dhcp server v4 scope 192.168.50.0 set reservedoptionvalue 192.168.50.102 003 IPADDRESS 192.168.50.2
Grüße Uwe
Immer gerne.
https://help.endian.com/hc/en-us/articles/218144228-Policy-Routes-Basic- ...
Der alternative Uplink ist dann halt nur dein anderes Gateway.
Zitat von @killtec:
Die Variante per Router wäre eine endian Community Firewall (ist nen Linux im Unterbau).
Damit ist das auch problemlos machbar:Die Variante per Router wäre eine endian Community Firewall (ist nen Linux im Unterbau).
https://help.endian.com/hc/en-us/articles/218144228-Policy-Routes-Basic- ...
Der alternative Uplink ist dann halt nur dein anderes Gateway.