IP, gateway e alterador de DNS [.bat Win7]

1

Eu tenho um arquivo de lote que eu uso no meu WinXP SP3 (achei na rede e funcionou).

LIGUE À CONEXÃO 1

@ECHO OFF set varip=192.168.0.118 set varsm=255.255.255.0 set vargw=192.168.0.1 set vardns1=121.1.3.81 set vardns2=121.1.3.16

ECHO Setting IP Address and Subnet Mask netsh int ip set address name = "Local Area Connection" source = static addr = %varip% mask = %varsm%

ECHO Setting Gateway netsh int ip set address name = "Local Area Connection" gateway = %vargw% gwmetric = 1

ECHO Setting Primary DNS netsh int ip set dns name = "Local Area Connection" source = static addr = %vardns1%

ECHO Setting Secondary DNS netsh int ip add dns name = "Local Area Connection" addr = %vardns2%

MUDAR PARA A CONEXÃO 2

@ECHO OFF set varip=192.168.0.118 set varsm=255.255.255.0 set vargw=192.168.0.2 set vardns1=192.168.0.2 set vardns2=192.168.0.8

ECHO Setting IP Address and Subnet Mask netsh int ip set address name = "Local Area Connection" source = static addr = %varip% mask = %varsm%

ECHO Setting Gateway netsh int ip set address name = "Local Area Connection" gateway = %vargw% gwmetric = 1

ECHO Setting Primary DNS netsh int ip set dns name = "Local Area Connection" source = static addr = %vardns1%

ECHO Setting Secondary DNS netsh int ip add dns name = "Local Area Connection" addr = %vardns2%

Infelizmente este arquivo em lote não funciona na minha máquina Win7 (ultimate). Eu estou querendo saber o que editar para que funcione. Eu procurei alguns sites e tentei uma coisa ou duas, mas não consegui encontrar uma solução. Muito obrigado antecipadamente pela ajuda.

    
por Mark F. 20.12.2012 / 13:40

1 resposta

0

Seu script em lote parece muito diferente do sugerido em outros sites, como ISTO ou ISSO , então eu reescrevi seu script em lote.

Eu também transformei seus dois scripts em lote em um, que, após a execução, perguntará para qual conexão você deseja alternar.

@echo off

::: Note ::::
echo Please make sure you are starting this batch script as an Administrator.

:::: Choice ::::
set /P c=Do you want to switch to connection one, or two [1/2]? 
if /I "%c%" EQU "1" goto :ConnectionOne
if /I "%c%" EQU "2" goto :ConnectionTwo
goto :Exit

:::: Variables ::::

:ConnectionOne
set varip=192.168.0.118 
set varsm=255.255.255.0
set vargw=192.168.0.1 
set vardns1=121.1.3.81
set vardns2=121.1.3.16
goto :Start

:ConnectionTwo
set varip=192.168.0.118 
set varsm=255.255.255.0
set vargw=192.168.0.2
set vardns1=192.168.0.2
set vardns2=192.168.0.8
goto:Start

:::: Program ::::

:Start
echo.
echo Setting IP Address [%varip%]
echo Setting Subnet Mask [%varsm%
echo Setting Gateway [%vargw%]
netsh interface ip set address name="Local Area Connection" static %varip% %varsm% %vargw%

echo Setting Primary DNS [%vardns1%]
echo Setting Secondary DNS [%vardns2%]
netsh interface ip set dns name="Local Area Connection" static %vardns1%
netsh interface ip add dns name="Local Area Connection" %vardns2% index=2

:Exit
pause
exit

Por favor, note que, embora o script em lote acima tenha sido escrito e testado no Windows 8.1, ele ainda deve funcionar da mesma forma no Windows 7. Se não, por favor me avise.

    
por 31.01.2014 / 03:51