Qué vas a conseguir
Una WiFi de huéspedes que se gestiona sola: aislada del TPV, de los datáfonos y de la red del personal, con una página de acceso del hotel, usuarios por habitación o vales para el restaurante, un límite de velocidad por persona y los registros para saber quién se conectó. Y un método para el ticket más repetido de recepción: "estoy conectado pero no me sale nada".
Antes de empezar
- Un router MikroTik con RouterOS 7 y la red del local montada como en la guía de red y WiFi de un restaurante u hotel: un bridge con filtrado de VLAN y la VLAN 100 para clientes.
- Puntos de acceso que lleven el SSID de huéspedes a esa VLAN. Si son TP-Link Omada, el SSID sin el portal de Omada: un solo portal, el del MikroTik.
- Acceso por Winbox o SSH desde la VLAN de gestión, y una copia (
/export) antes de empezar. - Saber qué pide la dirección: acceso libre aceptando condiciones, clave por habitación o vales de un día.
1. La red de huéspedes, aparte
La VLAN 100 tiene su interfaz y su subred. Una /22 da más de mil direcciones, suficiente para un hotel lleno con dos o tres dispositivos por persona:
/interface vlan add interface=bridge1 name=vlan100-huespedes vlan-id=100/ip address add address=10.40.100.1/22 interface=vlan100-huespedes/ip firewall address-list add list=redes-privadas address=10.0.0.0/8/ip firewall address-list add list=redes-privadas address=172.16.0.0/12/ip firewall address-list add list=redes-privadas address=192.168.0.0/16/ip firewall filter add chain=forward in-interface=vlan100-huespedes dst-address-list=redes-privadas action=drop comment="huespedes: nada interno" place-before=0- La regla bloquea cualquier destino privado, no solo las VLAN del local: también la red del router 4G (
192.168.8.0/24) o una VPN hacia la central. - Hacia el router, los huéspedes solo necesitan DHCP, DNS y el portal. Las reglas dinámicas del Hotspot abren lo suyo; añade DNS y cierra lo demás:
/ip firewall filter add chain=input in-interface=vlan100-huespedes protocol=udp dst-port=53,67 action=accept comment="huespedes: DNS y DHCP"/ip firewall filter add chain=input in-interface=vlan100-huespedes protocol=tcp dst-port=53 action=accept/ip firewall filter add chain=input in-interface=vlan100-huespedes action=drop comment="huespedes: ni Winbox ni SSH"- Aislamiento entre clientes en el punto de acceso: un huésped no debe ver el portátil del de al lado. En Omada, Guest Network en el SSID; en un punto de acceso MikroTik con el paquete
wifi,client-isolation=yesen el datapath del SSID.
2. El Hotspot con ip hotspot setup
El asistente crea el servidor, el perfil, el pool, el DHCP y las reglas dinámicas en una sola pasada:
/ip hotspot setuphotspot interface: vlan100-huespedeslocal address of network: 10.40.100.1/22masquerade network: noaddress pool of network: 10.40.100.10-10.40.103.250select certificate: noneip address of smtp server: 0.0.0.0dns servers: 1.1.1.1,9.9.9.9dns name: wifi.northwind.examplename of local hotspot user: recepcionpassword for the user: ********- masquerade network: no porque la regla de NAT hacia la WAN ya existe. Si respondes que sí, quedará una segunda regla que hace lo mismo.
- dns name es el nombre con el que el huésped ve el portal y al que vuelve para cerrar sesión. Uno corto y del dominio del hotel.
- El router hace de DNS para los huéspedes:
/ip dns set allow-remote-requests=yes. Con el input cerrado como en la sección 1, solo responde a las redes internas. - Revisa lo creado con
/ip hotspot print,/ip hotspot profile printy/ip dhcp-server print. En IP › Firewall verás reglas marcadas con D en cadenashs-*: son dinámicas, van siempre arriba y no se tocan.
El asistente pone el DHCP con su propio tiempo de concesión. Ajústalo en la sección 5; con un salón lleno, el tiempo de concesión decide si el pool alcanza.
3. La página de acceso y el walled garden
Las páginas del portal están en Files › hotspot: login.html, status.html, logout.html y sus imágenes. Se editan fuera del router y se suben de nuevo:
- En
login.html, el logotipo del hotel, el texto de condiciones de uso (lo redacta la dirección o su asesor legal) y los campos de usuario y clave. No quites el formulario ni sus campos ocultos: son los que envían el inicio de sesión. - Guarda una copia de la carpeta original antes de tocarla. Si la página deja de funcionar, se vuelve a ella.
- Cómo se entra se elige en el perfil del servidor:
/ip hotspot profile set [find name=hsprof1] login-by=http-chap,cookie,trial http-cookie-lifetime=1d trial-uptime-limit=30m trial-user-profile=default- http-chap: usuario y clave sin que viajen en claro. cookie: el dispositivo no vuelve a pedir el portal en un día. trial: acceso libre de 30 minutos al día por dispositivo, útil en una cafetería; quítalo si todo debe pasar por usuario.
El walled garden es lo que se puede abrir sin iniciar sesión: la web del hotel, la carta del restaurante o la pasarela de reservas:
/ip hotspot walled-garden add dst-host=www.northwind.example comment="web del hotel"/ip hotspot walled-garden add dst-host=*.northwind.example comment="carta y reservas"/ip hotspot walled-garden ip add dst-address=203.0.113.40 action=accept comment="servidor de reservas por IP"walled-garden filtra por nombre las peticiones web; walled-garden ip, cualquier tráfico por dirección. Cuanto más corto, mejor: cada entrada es una puerta abierta sin identificar a nadie.
4. Usuarios, vales y perfiles con límites
El perfil de usuario fija la velocidad y la duración; el usuario, quién entra:
/ip hotspot user profile add name=huesped rate-limit=5M/20M shared-users=3 idle-timeout=30m keepalive-timeout=2m/ip hotspot user profile add name=evento rate-limit=2M/8M shared-users=1 session-timeout=6h/ip hotspot user add name=hab214 password=Mar7lago profile=huesped limit-uptime=3d comment="check-out 06/11"/ip hotspot user add name=boda1108-01 password=k4p9 profile=evento limit-uptime=8h/ip hotspot user print where profile=huespedColumns: NAME, PROFILE, UPTIME# NAME PROFILE UPTIME0 hab214 huesped 0s- rate-limit es subida/bajada del huésped:
5M/20Mson 5 Mbps de subida y 20 de bajada por usuario. El Hotspot crea una cola dinámica por cada sesión. - shared-users=3: el móvil, la tableta y el portátil de la habitación con la misma clave.
- limit-uptime caduca la clave por tiempo de conexión; para que no sirva después del check-out, recepción la borra o el usuario se crea con la duración de la estancia.
- Vales para eventos o el restaurante: lotes de usuarios del perfil
eventoimpresos en tarjetas. Para muchos lotes o vales con caducidad por fecha, el paquete User Manager de RouterOS 7 hace de servidor RADIUS y los genera; el Hotspot lo usa conuse-radius=yesen el perfil del servidor. - Las colas del Hotspot limitan a cada huésped. El total de la red de clientes, para que siempre quede ancho de banda para el TPV, va en una cola simple sobre la /22, como en la guía de red del local. Y recuerda: lo que va por FastTrack se salta las colas.
5. DHCP, concesiones y registros
/ip dhcp-server set [find interface=vlan100-huespedes] name=dhcp-huespedes lease-time=1h/ip dhcp-server lease print count-only where server=dhcp-huespedes388/ip hotspot active printColumns: SERVER, USER, ADDRESS, UPTIME, SESSION-TIME-LEFT# SERVER USER ADDRESS UPTIME SESSION-TIME-LEFT0 hotspot1 hab214 10.40.100.57 1h12m1 hotspot1 boda1108-01 10.40.101.203 22m 5h38m- Una hora de concesión libera rápido las direcciones de quien se va, sin que el huésped que se queda lo note.
/ip hotspot host printmuestra todos los dispositivos que el Hotspot ve, hayan iniciado sesión o no;/ip hotspot active print, solo las sesiones abiertas.- Registros:
/system logging add topics=hotspot action=memoryy/log print where topics~"hotspot". Cada inicio y cierre de sesión queda con usuario, IP y MAC. - En muchos países la ley obliga a conservar los registros de conexión de una red pública durante un tiempo. Envíalos a un servidor syslog (
/system logging action add name=syslog target=remote remote=10.40.10.20) y pregunta a la dirección cuánto tiempo deben guardarse.
6. El ticket: "el huésped se conecta a la WiFi pero no navega / no le sale la página de acceso"
Viernes, 22:40. Recepción llama: el cliente de la 312 ve "Conectado" en el móvil, pero no le aparece la página para poner la clave y no carga nada. Otros huéspedes navegan bien.
- ¿Tiene dirección? En
/ip hotspot host printse busca su MAC (el huésped la ve en los ajustes de la WiFi). Si no aparece, no ha recibido IP:/ip dhcp-server lease print count-onlyda 1.012 de 1.019 posibles. El pool está agotado por un tiempo de concesión de tres días que alguien puso. Se baja a una hora y se libera lo que no está activo; a los minutos el móvil obtiene dirección. Si aparece con una169.254.x.xen su móvil, es lo mismo. - Tiene IP, pero no sale el portal. El sistema del móvil detecta el portal pidiendo una página http:// fija a su fabricante; el Hotspot la intercepta y abre la ventana de acceso. Si no la abre:
- Navegadores con HTTPS primero: el huésped escribe una web en
https://. El Hotspot no puede redirigir HTTPS sin un error de certificado, así que la página no carga. Que abrahttp://wifi.northwind.example(el dns name); recepción lo tiene impreso en la tarjeta de la habitación. - DNS fijo o VPN: un móvil con DNS privado fijado en un proveedor concreto, o con una VPN que arranca sola, no ve el portal. Que ponga el DNS privado en automático o pause la VPN hasta iniciar sesión.
- El walled garden demasiado generoso: si alguien añadió los dominios de comprobación de los fabricantes (o un
*amplio) al walled garden, el móvil cree que ya tiene internet y no abre la ventana./ip hotspot walled-garden printy fuera lo que no sea la web del hotel.
- Ve el portal, pone la clave y falla.
/log print where topics~"hotspot"muestra el intento:login failed: invalid username or password, o que el usuario ha agotado su tiempo. La clave caducó con ellimit-uptime, o hay más dispositivos queshared-users. Recepción le da una nueva. - Inicia sesión y no navega. Si
/ip hotspot active printlo muestra activo, el problema está detrás:/ping 1.1.1.1desde el router, la DNS (/ip dns print) y la cola de su sesión en/queue simple print where dynamic. Si todos los huéspedes van mal a la vez, es la salida a internet y el ticket cambia de dueño.
En el ticket: MAC e IP del dispositivo, en qué paso falló, la causa y el cambio (concesión, walled garden, usuario). Si fue el pool, que se revise también en los demás establecimientos.
Una tarjeta en la habitación con el nombre de la red, la dirección http:// del portal y la clave evita la mitad de estas llamadas.
Siguientes pasos
- La guía de red y WiFi de un restaurante u hotel tiene el plan de VLAN completo, la doble WAN y la WiFi lenta en mitad de una boda.
- La de Zabbix en un restaurante o un hotel puede vigilar el número de sesiones del Hotspot y la ocupación del pool para avisar antes de que se agote.
- Si el hotel quiere que el usuario de la WiFi salga del sistema de reservas al hacer el check-in, el paso siguiente es un servidor RADIUS conectado al PMS.
¿Falta algo o en tu entorno es distinto? Escríbeme y lo corrijo.
Tech Career Lab · newsletter
¿Te ha servido? Cada dos semanas envío una idea práctica para perfiles IT: LinkedIn, proyectos, networking y procesos de selección.
Apúntate y llévate las 33 ideas →