Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I need fixed IP in three wireless networks I log in frequently.

It is a pain to set those IP and gateway everytime I change networks.

I am willing to write a script to change my IP and gateway between those 3 fixed IPs and a choice to make it get IP automatically (when I´m in another network).

A plus feature to my script would be if it could discover the wireless network I am logged in and decide the IP automatically.

Is it even possible?

Thanks.

share|improve this question
add comment

2 Answers

ipconfig /renew to get a new IP address or default gateway The NETSH command does this. check this.

See this example for DNS:

netsh interface ip set dns "Local Area Connection" static 192.168.0.200

configure your NIC to dynamically obtain it's DNS settings:

netsh interface ip set dns "Local Area Connection" dhcp

read this Configure TCP/IP from the Command Prompt and this

This is assuming 3 things.

1) The network adapter you're trying to change the IP for is "local area connection". It could also be "local area connection 2" or "wireless network connection". Look in your control panel for the correct name

2) The IP you want to set is 192.168.0.101, change this to whatever IP to want to use.

3) The default gateway and dns are the same IP. If you are using some kind of router they usually are. Change this to match your network config found with the command ipconfig /all

Here is example of batch file that i have created for your problem solutions: just change the command after the con1: type labels

How to create batch file: paste this code in notepad and save it as "test.bat"

Note: Change your connection names "local area connection" to your "wireless connection" name

@ECHO off
cls
:start
ECHO.
ECHO 1. Change Connection1 Static IP 
ECHO 2. Change Connection2 Static IP 
ECHO 3. Change Connection3 Static IP 
ECHO 4. Obtain an IP address automatically
ECHO 5. Exit
set choice=
set /p choice=Type the number to print text.
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='1' goto con1
if '%choice%'=='2' goto con2
if '%choice%'=='3' goto con3
if '%choice%'=='4' goto autosearch
if '%choice%'=='5' goto end
ECHO "%choice%" is not valid, try again
ECHO.
goto start
:con1
ECHO Connecting Connection 1
netsh interface ip set address "Local Area Connection" static 192.168.0.10 255.255.255.0 192.168.0.1 1
goto end

:con2
ECHO Connecting Connection 2
netsh interface ip set address "Local Area Connection1" static 192.168.0.10 255.255.255.0 192.168.0.1 1
goto end

:con3
ECHO Connecting Connection 3
netsh interface ip set address "Local Area Connection2" static 192.168.0.10 255.255.255.0 192.168.0.1 1
goto end

:autosearch
ECHO obtaining auto IP
ipconfig /renew "Local Area Connection"
goto end

:bye
ECHO BYE
goto end

:end

Hope this help you.. for more reference check this Set Your IP Address Via Batch File

share|improve this answer
add comment

You can make a .bat script file that contains the configuration commands based on "netsh" command, for example:

This changes the IP address and Default Gateway:

"netsh int ip set address "local area connection" static {192.168.0.101} 255.255.255.0 {192.168.0.254} 1"

This changes DNS:

"netsh int ip set dns "local area connection" static {192.168.0.254} primary"

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.