Crear un hotspot Wi-Fi desde la línea de comandos de Windows 7

Gabolonte Blasfemus

MiFi, módem 3G + router WiFiHoy en día está muy expandida la idea de poder compartir inalámbricamente cualquier conexión a Internet de la que dispongamos, generalmente enlaces de datos de telefonía celular. La mayoría de los smartphones decentes tienen la capacidad de hacerlo nativamente o mediante algun hack y/o aplicación (lo que se le llama tethering), y de hecho ya son bastante comunes las “cajitas para compartir Internet” conocidas como MiFi, que no son más que un modem 3G asociado a un router WiFi, todo integrado en un solo gadget del tamaño de un estuche de anteojos, de manera que facilite tener un enlace móvil para dispositivos que también lo son, como notebooks, netbooks, smartphones, tablets o lo que se nos ocurra. ¡Si hasta ya son comunes los autos con WiFi!

Pero lo más probable es que no tengamos un auto que comparte Internet, ni aún justifiquemos la compra de un MiFi, pero que sí tengamos un modem 3G o 4G USB que usemos en nuestra PC o notebook, y a través del cual algunas veces nos gustaría poder compartir la conexión, inalámbricamente, con otros aparatos. Hace un buen tiempo vimos como una aplicación llamada Connectify nos permitía conseguir exactamente esto, utilizando capacidades propias de Windows 7. Lo que me enteré hace poco, despistado de mí, es que esto mismo podemos lograrlo desde la misma línea de comandos de Windows 7, sin necesidad de descargar e instalar aplicación alguna.

Con Microsoft Virtual WiFi podemos compartir la conexión 3G de Vomistar, Persoanal o Cloro, que total son todos la misma bosta.

Con Microsoft Virtual WiFi podemos compartir la conexión 3G de Vomistar, Persoanal o Cloro, que total son todos la misma bosta.

Windows 7, que compite cabeza a cabeza con Windows XP en la actualidad por llevarse la corona del mejor Windows de todos, incorpora en sus mismas entrañas la capacidad de funcionar como un Access Point inalámbrico, mediante una tecnología que implementa y es conocida como Virtual WiFi. Los únicos requisitos para poder aprovecharla son que el Windows 7 no tiene que ser un Starter Edition y que el adaptador WiFi tiene que estar certificado con el logo de Windows 7, lo cual garantiza que dicho adaptador, y sus drivers, soportan esta funcionalidad. Hoy en día eso significa que básicamente podemos hacerlo con cualquier PC o notebook que venga con un Windows 7 de fábrica y no sea un Starter.

¿Cómo lo conseguimos? Por comodidad lo mejor es dividir lo que hay que hacer en dos pasos:

1. Esto tendremos que hacerlo cada vez que iniciemos Windows o se resuma luego de una suspensión o hibernación: Abrimos una línea de comandos con permisos elevados e ingresamos:

netsh wlan set hostednetwork mode=allow ssid=<em>nombre-red</em> key=<em>contraseña</em> keyUsage=persistent

Por supuesto, en lugar de nombre-red pondremos el nombre (conocido justamente como SSID) que queremos que tenga nuestro hotspot y en lugar de contraseña la clave que elijamos. Luego ingresamos:

netsh wlan start hostednetwork

Y pasamos al segundo paso.

2. Esto generalmente solo tendremos que hacerlo una vez: Vamos al Centro de redes y recursos compartidos, hacemos click en Cambiar configuración del adaptador, y abrimos las propiedades del adaptador cuya conexión a Internet queremos compartir. Puede ser un adaptador Ethernet, el que corresponde a nuestro módem 3G, o incluso nuestro adaptador WiFi, si lo que queremos es compartir el acceso de una red inalámbrica a la que nos encontramos conectados; Virtual WiFi es tan copado que permite tener un Access Point virtual al mismo tiempo que estamos conectados a uno real, y todo teniendo un solo adaptador Wi-Fi. Una vez en las propiedades vamos a la solapa Compartir, tildamos la casilla que dice “Permitir que los usuarios de otras redes se conecten…” y en Conexión de red doméstica seleccionamos el adaptador que corresponde al Virtual WiFi, que normalmente se llamará HotSpot. Le damos Aceptar a todo, y deberemos desactivar y volver a activar la conexión a Internet para que todo funcione.

Una vez hecho todo esto veremos la red definida desde otros dispositivos y deberíamos poder conectarnos y navegar sin problemas desde los mismos. Sobre la seguridad no hay demasiados problemas, por defecto este hostpot virtual, llamado normalmente SoftSpot, provee seguridad WPA2, por lo que solo deberemos asegurarnos de utilizar una clave fuerte.

Si deseamos ver el estado de nuestro SoftSpot, y checkear si se encuentra algún dispositivo conectado, todo lo que tenemos que hacer es volver a la línea de comandos de Windows 7 y teclear:

netsh wlan show hostednetwork

Lo cual nos mostrará algo más o menos como lo siguiente:

Configuración de red hospedada
------------------------------
Modo: permitido
Nombre de SSID : "nombre-red"
Nº máximo de clientes : 100
Autenticación : WPA2-Personal
Cifrado : CCMP

Estado de la red hospedada
--------------------------
Estado : Iniciado
BSSID : e4:55:6f:32:d8:01
Tipo de radio : 802.11n
Canal : 11
Número de clientes : 1
00:21:7a:60:fe:4e Autenticado

Lamentablemente, solo nos entrega una MAC Address por cada equipo conectado, pero si queremos correlacionarla a la dirección IP que tiene asignada solo debemos ingresar:

arp -a

Con este comando obtendremos la lista completa de la tabla de relación entre MAC Address y dirección IP con las que haya tenido contacto nuestro sistema. Nos interesará en particular aquellas de tipo dinámico, en donde seguro encontraremos las direcciones que se encuentran conectadas a nuestro SoftSpot. Una vez que tenemos su dirección IP, con cada una podemos ingresar:

ping -a xxx.xxx.xxx.xxx

Y en este caso no nos interesa si el otro equipo responde los ping, que probablemente no lo haga debido a su firewall, sino su nombre de host, que será algo como:

Haciendo ping a pc-de-cacho.mshome.net [xxx.xxx.xxx.xxx] con 32 bytes de datos:
Tiempo de espera agotado para esta solicitud.
Tiempo de espera agotado para esta solicitud.
Tiempo de espera agotado para esta solicitud.
Tiempo de espera agotado para esta solicitud.

Estadísticas de ping para xxx.xxx.xxx.xxx:
Paquetes: enviados = 4, recibidos = 0, perdidos = 4
(100% perdidos),

Seguro, es mucho más trabajo que usar una aplicación como Connectify que nos entrega esta info servida, pero por otro lado las ventajas son evitar tener en ejecución otra aplicación más, posiblemente pesada, mal programada, con anuncios, o sospechosa. ¡Y todo lo resolvemos con unos cuantos comandos!

Lo ideal si no queremos recordarlos de memoria y escribirlos a cada rato es crear unos simples archivos de ejecución por lotes, ya sea con extensión .bat o .cmd que incluya estos comandos. Por ejemplo podemos crear un hotspot.cmd que incluya las siguientes líneas:

netsh wlan stop hostednetwork
netsh wlan set hostednetwork mode=allow ssid=nombre-red key=contraseña keyUsage=persistent
netsh wlan start hostednetwork

¿Por qué parar primero el hotspot? Encontré que entre desconexión y reconexión del enlace a Internet, en particular con el pésimo servicio de los operadores locales, suele dejar de funcionar a pesar de lanzar nuevamente estos comandos, y detenerlo previamente lo resuelve.

Es importante recordar también que debemos ejecutar todo con derechos de administrador o no va a funcionar, y si queremos automatizarlo podemos utilizar el Programador de tareas de Windows 7 para hacer que se ejecute ante determinados eventos, como al iniciar sesión o reanudarla por ejemplo. Aunque lo ideal será dejar un icono a mano que ejecutaremos solo cuando nos haga falta.


2 Responses to “Crear un hotspot Wi-Fi desde la línea de comandos de Windows 7”

  • Errepunto despachó:

    Muy pero que muy interesante, ¡gracias por la información!


    Usando Mozilla Firefox Mozilla Firefox 14.0a2 en Windows Windows 7
  • Diego despachó:

    yo lo hago con un starter…


    Usando Google Chrome Google Chrome 25.0.1364.172 en Windows Windows 8