Configurar puerta de enlace e IP por batch

Para aquellos que desean poder configurar la puerta de enlace y los DNS de una PC, aquí les dejo un «script» en batch del DOS. Para usarlo es necesario primero configurar las variables: Prta, DNS1, DNS2 y NOMBRE. Esta última variable es el nombre de la conexión de red que se desee cambiar y debe ser escrito en el código del batch, que no es el mismo que el del Windows para los caracteres tildados.

Notar que para configurar la puerta de enlace, se obtiene primero la direción IP usando el comando «ipconfig» y las cadenas «Dirección IP» y «192». Si la configuración de Red estuviera en inglés, estos comandos no funcionarán apropiadamente. Además se usa la cadena «192» para filtrar el caso en que aparezca una direccióna adicional IPv6 como resultado del «ipconfig».

Esta pensado para trabajar en Windows XP y Windows 7, pero puede ser adaptado fácilmente para otros sistemas operativos.  Observar que para Windows 7, debe ser ejecutado en modo Administrador.

Para usar este «script», debe copiarse el siguiente contenido en un archivo con extensión «bat» y configurar las variables.

@ECHO OFF
REM ================== Parámetros =====================
REM = No poner espacios antes ni después del igual.   =
REM ===================================================

SET Prta=192.168.1.1
SET DNS1=200.62.191.11
SET DNS2=200.24.191.12
SET NOMBRE=Conexi¢n de  rea local

REM ====== obtiene sistema operativo =========
VER | FINDSTR /L "5.0" > NUL
IF %ERRORLEVEL% EQU 0 SET SO=2000
VER | FINDSTR /L "5.1." > NUL
IF %ERRORLEVEL% EQU 0 SET SO=XP
VER | FINDSTR /L "5.2." > NUL
IF %ERRORLEVEL% EQU 0 SET SO=2003
VER | FINDSTR /L "6.0." > NUL
IF %ERRORLEVEL% EQU 0 SET SO=Vista
VER | FINDSTR /L "6.1." > NUL
IF %ERRORLEVEL% EQU 0 SET SO=W7

ECHO Sistema Operativo es: %SO%

REM ======= obtiene dirección IP ===========
ipconfig | findstr "Dirección IP" | findstr "192" > lineaip.txt
for /f "tokens=2 delims=:" %%x in (lineaip.txt) do set IP=%%x
IF "%IP%"==" GOTO :ERROR
ECHO Dirección IP es: %IP%

ECHO ============= Configuración ============
IF %SO%==XP GOTO :esxp
IF %SO%==W7 GOTO :esw7
goto :NO_SO

:esxp
echo "Configurando XP"
netsh interface ip set address "%NOMBRE%" static %IP% 255.255.255.0 %Prta% 1
netsh interface ip set dns "%NOMBRE%" static %DNS1%
netsh interface ip add dns "%NOMBRE%" %DNS2% index=2
IF %ERRORLEVEL% EQU 0 EXIT
GOTO :ERR_RED

:esw7
echo "Configurando W7"
netsh interface ip set address "%NOMBRE%" static %IP% 255.255.255.0 %Prta% 1
netsh interface ip set dnsservers "%NOMBRE%" static %DNS1%
netsh interface ip add dnsservers "%NOMBRE%" %DNS2% index=2
IF %ERRORLEVEL% EQU 0 EXIT
GOTO :ERR_RED

:NO_SO
ECHO "!!!No se reconoce Sistema Operativo"
PAUSE
EXIT

:ERROR
ECHO "!!!No se pudo obtener IP"
PAUSE
EXIT

:ERR_RED
ECHO "!!!Error configurando Red"
PAUSE
EXIT


1 comentario

Responder a Oswaldo Jiménez Cancelar la respuesta

Tu dirección de correo electrónico no será publicada.


*