Linux Fu: Compartir tu WiFi único

Si estás intentando construir un router o un punto de acceso, necesitarás indagar en algunos de los detalles de las redes que normalmente están ocultos para ti. Pero, para una conexión WiFi normal, las cosas casi siempre funcionan, aunque no siempre ha sido así. Sin embargo, el otro día me encontré con un caso especial en el que necesitaba un poco de red personalizada, y entonces encontré una gran respuesta para automatizar todo el proceso. Todo se reduce al WiFi del hotel. ¿Cómo puedes hacer que tu portátil Linux se conecte a un punto WiFi público y luego retransmitirlo como una red WiFI privada? En concreto, quería conectar un Chromecast antiguo a la red.

El WiFi de los hoteles solía ser caro, pero ahora, por lo general, es gratuito. Hubo un tiempo en que llevaba una pequeña caja dedicada que podría tomar una red cableada o inalámbrica y transmitir su propia señal WiFi. En realidad eran bastante comunes, pero había que tener cuidado, ya que algunas sólo emitían una conexión de red por cable. Era más difícil hacer que la red inalámbrica se compartiera como una nueva red inalámbrica, pero algunos pequeños routers de viaje podían hacerlo. Otra posibilidad era instalar uno de los sistemas de firmware de routers abiertos y configurarlo. Pero últimamente no llevo nada de eso. Con el WiFi gratuito, basta con conectar los distintos dispositivos directamente a la red. Pero luego está el Chromecast y el temido inicio de sesión en el hotel.

Páginas de inicio de sesión y la conexión del portátil

La mayoría de los hotspots públicos no te vuelcan directamente a Internet. En su lugar, te muestran una página cautiva con algunos anuncios o quizá la política de la red. Puede que te pidan que aceptes las condiciones o que introduzcas algún tipo de identificación, como el número de tu habitación. Puede que te ofrezcan un servicio mejorado a cambio de una cuota. Sea como sea, tienes que pulsar uno o varios botones para conectarte realmente.

Este es un problema para el Chromecast, el adaptador de red de Google TV. A pesar de que la mayoría de los hoteles tienen un televisor con un puerto HDMI accesible, no se puede obtener el Chromecast en una red en la que es necesario iniciar sesión a través de una página del portal.

No hay problema. Solo tienes que usar tu portátil para conectarte al WiFi y luego crear un nuevo punto de acceso para retransmitirlo como si fuera tu WiFi privado. Conecta tu teléfono y tu Chromecast a esa nueva red, y podrás ver tus programas favoritos mientras viajas. Esto puede parecer un problema del primer mundo, pero hemos visto que muchos hoteles ahora te ofrecen una forma de iniciar sesión en cosas como tus cuentas de NetFlix o YouTube desde el televisor del hotel, pero no está muy extendido. Al menos, todavía no.

Lo que yo quería hacer es posible con hostapd. Sin embargo, no es trivial ya que ese programa puede hacer muchas cosas, no todas las que nos importan en este contexto.

Hazlo simple, estúpido

Tenía que haber una forma mejor de resolver esto que andar a tientas con hostapd configuraciones después de un largo vuelo. Existe y se llama linux-wifi-hotspot. Utiliza hostapd junto con herramientas de red como iproute2, iptablesy dnsmasq, para crear un hotspot con muy poco esfuerzo. Vale la pena señalar que NetworkManager también puede hacer esto si usted tiene dos adaptadores WiFi. Pero, hasta donde yo sé, no sabe cómo poner el AP en el mismo adaptador que la conexión a Internet entrante.

He instalado el programa desde un paquete y he tenido que instalar hostapdtambién. También hay un ppa para Ubuntu, o puedes compilarlo desde el código fuente siguiendo las instrucciones.

La interfaz del programa es relativamente simple. Usted nombra su hotspot y proporciona una contraseña. Puedes hacer que sea difícil porque puedes hacer que el programa muestre un código QR que permitirá que tu teléfono, por ejemplo, se conecte directamente a él.

La interfaz de usuario de linux-wifi-hotspot

La parte complicada es donde se seleccionan las interfaces. En la captura de pantalla, se puede ver que la misma interfaz inalámbrica aparece en ambas ranuras. Por supuesto, sería fácil crear un AP a otra interfaz de red. Incluso NetworkManager puede hacerlo. Sin embargo, cuando ejecuté el programa, no pude seleccionar la misma interfaz como muestra la captura de pantalla. Sin embargo, pude hacer la interfaz de internet "lo" y eso funcionó. Sospecho que esto se debe a que NetworkManager ya controlaba el WiFi, pero su kilometraje puede variar.

Hay algunas características dentro de la sección avanzada de la interfaz que están inicialmente ocultas, pero no necesité cambiar ninguna de ellas. También hay una manera de ver una lista de dispositivos conectados actualmente al punto de acceso.

Además de la GUI, puedes controlar el programa a través de la línea de comandos o incluso configurarlo para que se inicie cuando el sistema se ejecute por primera vez. No me importaba nada de eso para este proyecto.

¿Funciona?

¡Funciona! Para ser honesto, sin embargo, no tiene un rendimiento notable. Pero logró alrededor de 15-20 Mbps con una conexión de subida de 100 Mbs. Eso suena mal, y ciertamente no es genial. Pero si tienes en cuenta que compartes el adaptador WiFi, probablemente no esté tan mal, y es suficiente para ver películas en streaming.

Hay otras opciones, por supuesto. Puedes falsear la dirección mac del Chromecast en tu portátil lo suficiente para conectarte. Hay adaptadores Ethernet que se conectan a Chromecast si todavía puedes encontrar una conexión de línea dura. Algunos de los portales cautivos ponen la dirección mac autorizada en la URL y no la vuelven a comprobar, así que si ves eso, podrías intentar sustituir tu mac por la del Chromecast e iniciar sesión. Así que, como siempre, hay muchas opciones. Pero una forma rápida de poner en marcha un hotspot desde tu portátil tiene mucha versatilidad, incluso si no te importa conectar una caja de streaming.

La mejor manera de hacerlo sería añadir un segundo adaptador WiFi USB. En esa configuración, también podrías hacer un puente con NetworkManager, así que puede que no necesites este software para ese caso.

Por supuesto, algo como esto puede no funcionar con su configuración exacta. Hay notas de que tiene algunos problemas con algunos adaptadores de 5 GHz y algunos adaptadores RealTeK. Hay soluciones, y usted puede leer acerca de ellos en la página web del proyecto.

Si tienes acceso gratuito a WiFi y puedes conectarte sin más, probablemente sea mejor que lo hagas así. Pero si tienes un router o un dispositivo como un Chromecast que no tolera una página de inicio de sesión, esta es una forma práctica de transmitir el acceso a todos los dispositivos que quieras. Si usted está pagando por conexión, esto podría ahorrar algo de dinero, también.

Esto no es un verdadero pirateo de la red. Si eso te preocupa, probablemente puedas crear tu propia VPN fácilmente.

Ricardo Prieto
Ricardo Prieto

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *