I’ve some job coming up where I’ll have to reconfigure a few DHCP servers. GUI interface is great but when you have a lot to do and you don’t want to miss anything, it’s better to have a script ready and check for all configs required. Microsoft somehow got that and moving on with a “core” version for in its 2008 server. Time to really make use of the new “black and white – non-graphical” technology!!
| netsh dhcp server | <serverip> | add scope | <scopeip> | <scopesubnet> | “<ScopeName>” | “<Scopedescription>” | |||
| netsh dhcp server | <serverip> | Scope | <scopeip> | add iprange | <start ip> | <last ip> | |||
| netsh dhcp server | <serverip> | Scope | <scopeip> | add excluderange | <startexcludeip> | <last exclude ip> | |||
| netsh dhcp server | <serverip> | Scope | <scopeip> | set optionvalue 003 | IPADDRESS | “<router IP>” | |||
| netsh dhcp server | <serverip> | Scope | <scopeip> | set optionvalue 006 | IPADDRESS | “<DnsSvr1>” | “<DnsSvr2>” | ||
| netsh dhcp server | <serverip> | Scope | <scopeip> | set optionvalue 015 | string | “Domain Name” | |||
| Netsh dhcp server | <serverip> | Scope | <scopeip> | set optionvalue 051 | DWORD | 86400 | |||
| netsh dhcp server | <serverip> | Scope | <scopeip> | set state | 1 | ||||
| netsh dhcp server | <serverip> | Scope | <scopeip> | add reservedip | <reserve ip> | <mac-address> | “<reservename>” | “<reserveDescription>” | “BOTH” |
| netsh dhcp server | <serverip> | Scope | <scopeip> | add reservedip | <reserve ip> | <mac-address> | “<reservename>” | “<reserveDescription>” | “BOTH” |
| netsh dhcp server | <serverip> | Scope | <scopeip> | add reservedip | <reserve ip> | <mac-address> | “<reservename>” | “<reserveDescription>” | “BOTH” |
| netsh dhcp server | <serverip> | Scope | <scopeip> | add reservedip | <reserve ip> | <mac-address> | “<reservename>” | “<reserveDescription>” | “BOTH” |
- Copy paste in spreadsheet, update all <..> as required.
-
Copy paste to a text file,
- save as a .BAT, execute wherever with proper permissions.
- save to a single file and run using the C:\>netsh exec filename.txt command from the command line.
NB: Option value: 3=ROUTER ; 6=DNS ;15=Lease time; 51=Domain Name;
