When I need to keep changing TCP/IP settings to test networking configs it’s a real pain to have to keep opening up the adapter properties (especially on Windows 7) and usually I’m in too much of a hurry to lookup up the netsh command syntax. For that reason I’m posting this small script. Save it as ipset.cmd.
Note: using netsh to revert to DHCP seems to be intermittent if no DHCP server is available – e.g. if the adapter has no link.
Windows 7
@echo off If "%1" == "" ( echo Configures Local Area Connection echo ipset address/maskbits gateway (dns) echo ipset 192.168.1.99/24 192.168.1.254 echo ipset 192.168.1.99/24 192.168.1.254 8.8.8.8 echo ipset dhcp echo. goto :eof ) If "%1" == "dhcp" ( netsh interface ip set dnsservers name="Local Area Connection" source=%1 netsh interface ip set address name="Local Area Connection" source=%1 goto :eof ) netsh interface ip set address name="Local Area Connection" source=static address=%1 gateway=%2 If "%3" == "" ( :: OpenDNS public DNS servers netsh interface ip set dnsservers name="Local Area Connection" source=static address=208.67.222.222 netsh interface ip add dnsservers name="Local Area Connection" address=208.67.222.220 ) else ( netsh interface ip set dnsservers name="Local Area Connection" source=static address=%3 )
Windows XP
@echo off If "%1" == "" ( echo Configures Local Area Connection echo ipset address mask gateway echo ipset 192.168.1.99 255.255.255.0 192.168.1.254 echo ipset dhcp echo. goto :eof ) If "%1" == "dhcp" ( netsh int ip set address local source=%1 netsh int ip set dns local source=%1 goto :eof ) else ( netsh int ip set address local static %1 %2 %3 1 :: OpenDNS public DNS servers netsh int ip add dns local 208.67.222.222 index=1 netsh int ip add dns local 208.67.222.220 index=2 )