Seguramente muchos de vostros tenéis un portatil y tenéis que cambiar la IP frecuentemente, porque os conectáis a redes diferentes (casa, oficina, clientes varios…)

En linux, es un cambio bastante trivial si se hace desde una shell (consola de comandos), pero el windows has de navegar a través de unas cuantas ventanitas y hacer muchos e incómodos clics. Si estáis hartos de estos cambios, quizá os interese saber que hay una forma muy cómoda, que resulta muy útil para cambiar la configuración en windows desde la consola de comandos (sí, sí, la pantallita negra que sale lo de c:\>).

El método en cuestión, consiste en volcar la configuración de red a un archivo y luego cargar la configuración de dicho archivo desde la línea de comandos (y en una sola línea):

c:\>netsh dump>configuracion.dmp
[vuelca la configuración al archivo configuracion.dmp]

c:\>netsh exec configuracion.dmp
[carga la configuración del archivo configuracion.dmp]

De este modo, si configuráis los interfaces (tarjetas de red) tal y como las queréis, por ejemplo en la oficina (ips, puerta de enlace, dns, etc) y ejecutáis:

c:\>netsh dump>oficina.dmp

habréis almacenado en oficina.dmp dicha configuración.

En casa, por ejemplo, hacéis lo propio y configuráis a vuestro gusto las interfaces y repetís el comando:

c:\>netsh dump>oficina.dmp

ahora cada vez que cambiéis de red sólo tenéis que ejecutar:

c:\>netsh exec oficina.dmp

ó

c:\>netsh exec .dmp

Rizando el rizo para más comodidad os creáis unos archivos *.bat llamados casa.bat y ofi.bat que contendrán cada uno el comando netsh exec casa.dmp y netsh exec oficina.dmp respectivamente.
Así, con teclear casa u ofi en la consola ya estará configurado. Incluso podéis poner un acceso directo en el escritorio o donde más rabia os de si es que no os gusta mucho lo de abrir la consola.

Yo no me he podido resistir y he creado un ifconfig.bat para darle a la consola de windows un toque “linuxero” (friki que es uno :P ).

Lo que hace es precisamente cargar la configuracién en función de los parámetros que recibe por la línea de comandos:

c:>ifconfig [IP interfaz] [IP puerta_enlace] [mascara_red] [IP_servidor_DNS]

eso es todo, si alguno tiene alguna otra sugentencia sólo tiene que decirlo …

El script en cuestión lo pego aquí abajo, pero ojo! está echo para mi interfaz de red, seguramente no os funcionará directamente y tendréis que adaptarlo a vuestra interfaz. Pero os puede ser útil e incluso lo podéis mejorar y pegarlo como un comentario a este artículo, ya que la verdad, el mío es un pelín cutre :(

SCRIPT ifconfig.bat
———EMPIEZA AQUÃ?—————-

@echo off
del config
echo #========================>>config
echo # Configuraci¢n de interfaz>>config
echo #========================>>config
echo pushd interface>>config

echo reset all>>config

echo popd>>config
echo # Fin de la configuraci¢n de interfaz>>config

echo # ——————————————— >>config
echo # Configuraci¢n de la interfaz IP >>config
echo # ——————————————— >>config
echo pushd interface ip>>config

echo # Configuraci¢n de la interfaz IP para “Conexi¢n de rea local”>>config

echo set address name=”Conexi¢n de rea local” source=static addr=%1 mask=%2>>config
echo set address name=”Conexi¢n de rea local” gateway=%3 gwmetric=0 >>config
echo set dns name=”Conexi¢n de rea local” source=static addr=%4>>config
echo set wins name=”Conexi¢n de rea local” source=static addr=none>>config
echo set wins name=”Conexi¢n de rea local” source=static addr=none>>config

echo popd>>config
echo # Fin de la configuraci¢n de la interfaz IP>>config

netsh exec config

ipconfig /all

———TERMINA AQUÃ?—————-