Basically the following scripts ping a range of specified IP addresses which is then dropped into a txt file, another script picks the "available" IP address from the txt file and performs a netsh with the IP address variable and then assigns it to the NIC. What I'm having trouble with is the first script writes all of the IP's into the txt file, so there are a couple of hundred IP's in the list rather than the first available one. Second issue is the netsh command doesn't seem to want to assign the ip address. makes me sad. Anyhoo, I have the entire thing running as an "installation" item with the RunOnceEx.cmd during an unattended setup. Next to computer name assignment, the ip addressing is one pain of many in deploying 50 servers without touching anything but my coffee. Cheers! Albino Or if someone has a better way with VB I would seriously owe you a pint or a grande latte. -------------------------------------------------- IPGrep1.cmd - releases the DHCP address ====start here==== @echo off ipconfig /release exit ====end here==== IPGrep2.cmd - the entire thing must be pasted as one line! ====start here==== @echo off for /l %%a in (200,1,254) do (ping -n 1 -w 200 192.168.1.%%a |find "unreachable" && echo 192.168.1.%%a>>ipaddress.txt) ====end here==== ipaddress.txt ====start here==== <pinged ip addresses that are unreachable> ====end here==== IPGrep3.cmd ====start here==== for /f %%i in (ipaddress.txt) do netsh interface ip set address name="Local Area Connection"&netsh interface ip set address local static %%i 255.255.255.0 192.168.1.1 ====end here====