alterando o IP no Windows através de comandos (DOS)
Autor: Kleber Krewer | Publicado: 2011-02-14T16:01:00-02:00

Seguem alguns comandos avançados de DOS


1 - Tutorial sobre mudança de IP através de um arquivo BAT
&nbsp;&nbsp; &nbsp; Com base em vários sites, encontrei um comando que pode ser adicionado a um arquivo BAT e pode mudar a placa de conexão local do windows XP (não testei em outras versões de Windows) para um IP FIXO ou DHCP, o comando é:


netsh interface ip set address name="Conexao Local" source=static addr=%IPADDR% mask= 255.255.255.0 gateway=192.168.0.1 gwmetric=1

Obs.: Para que este comando funcione a conexão local tem que ser renomeada e retirado o acento de conexão, ficando "conexao local"


Abaixo escrevi alguns comandos mais avançados para colocar em um arquivo .BAT, ao ser executado ele pede o IP que deve ser adicionado ou colocar a placa em DHCP.


@ECHO OFF
SET IPADDR=192.168.0.200
CLS
:LOOP
ECHO =========Alterador de gateway para o IP %IPADDR%==========
ECHO.
ECHO 1. DHCP
ECHO 2. GW 192.168.0.1
ECHO 3. GW 192.168.0.7
ECHO Q. Sair
ECHO.
:: SET /P prompts for input and sets the variable
:: to whatever the user types
SET Choice=
SET /P Choice=digite um numero e pressione enter:
:: The syntax in the next line extracts the substring
:: starting at 0 (the beginning) and 1 character long
IF NOT '%Choice%'=='' SET Choice=%Choice:~0,1%
ECHO.
:: /I makes the IF comparison case-insensitive
IF /I '%Choice%'=='1' GOTO ItemA
IF /I '%Choice%'=='2' GOTO ItemB
IF /I '%Choice%'=='3' GOTO ItemC
IF /I '%Choice%'=='Q' GOTO End
cls
ECHO "%Choice%" escolha incorreta. por favor digite novamente.
ECHO.
GOTO Loop
:ItemA
netsh interface ip set address "Conexao Local" dhcp
netsh interface ip set dns "Conexao Local" source=dhcp
GOTO End


:ItemB
netsh interface ip set address name="Conexao Local" source=static addr=%IPADDR% mask= 255.255.255.0 gateway=192.168.0.1 gwmetric=1
netsh interface ip add address name="Conexao Local" addr=172.17.2.200 mask= 255.255.255.0
netsh interface ip add dns name="Conexao Local" addr=192.168.0.70
netsh interface ip add dns name="Conexao Local" addr=192.168.0.71 index=2
netsh interface ip add dns name="Conexao Local" addr=201.12.36.4 index=3
GOTO End
CLS


:ItemC
netsh interface ip set address name="Conexao Local" source=static addr=%IPADDR% mask= 255.255.255.0 gateway=192.168.0.7 gwmetric=1
netsh interface ip add address name="Conexao Local" addr=172.17.2.200 mask= 255.255.255.0
netsh interface ip add dns name="Conexao Local" addr=192.168.0.70
netsh interface ip add dns name="Conexao Local" addr=192.168.0.71 index=2
netsh interface ip add dns name="Conexao Local" addr=201.12.36.4 index=3
GOTO End
CLS


GOTO Loop


:End
ECHO Ip Alterado com Sucesso
PAUSE
exit


Outro BAT que pergunta &nbsp;qual IP deve ser colocado&nbsp;

@Echo off
echo .
:loop
echo .
echo .
set /p numip=Introduza o IP a ser configurado neste micro 192.168.0.
IF /I '%numip%'=='' GOTO loop
if %numip% GTR 254 cls &amp;&amp; echo . &amp;&amp; echo ERRO: "%numip% e maior que 254" &amp;&amp; goto loop
echo .
set /p confirma=o IP deste micro sera &nbsp; &nbsp; 192.168.0.%numip% &nbsp; &nbsp; voce confirma (s/n) :
IF /I '%confirma%'=='s' GOTO muda
IF /I '%confirma%'=='n' GOTO sair
IF /I '%confirma%'=='' cls &amp;&amp; GOTO loop


:muda
echo muda
pause
netsh interface ip set address name="Conexao Local" source=static addr=192.168.0.%comeco% mask= 255.255.255.0 gateway=192.168.0.1 gwmetric=1
netsh interface ip add dns name="Conexao Local" addr=192.168.0.70
netsh interface ip add dns name="Conexao Local" addr=192.168.0.71 index=2


pause &gt; nul
:sair
exit