Sección · Documentación
Todo el conocimiento técnico del proyecto Bogotá Mesh: firmware, hardware, protocolos de enrutamiento, instalación de nodos. Originalmente alojada en wiki.bogota-mesh.org, hoy reunida aquí como referencia técnica activa.
Nightwing es el firmware personalizado de Bogotá Mesh, construido sobre OpenWrt y diseñado para simplificar al máximo el despliegue de nodos en la red comunitaria. Su nombre evoca la visión nocturna de un murciélago — metáfora apropiada para el protocolo B.A.T.M.A.N. que integra de serie.
Distribución Linux optimizada para dispositivos con recursos limitados. Kernel y herramientas userland adaptadas para hardware embebido.
Better Approach To Mobile Adhoc Networking. Crea una red virtual donde cada nodo es transparente para los demás, sin necesidad de conocer la topología completa.
System-on-Chip con radio WiFi integrada. Los chips Atheros son ampliamente soportados por OpenWrt y siguen siendo comunes en routers de bajo costo, lo que mantiene viable este hardware para nuevos despliegues mesh.
Al arrancar, cada nodo Nightwing se asigna una IP única dentro del rango de la red mesh, sin intervención manual. Sirve DHCP a los clientes WiFi conectados al nodo.
Las imágenes históricas del firmware Nightwing fueron retiradas del repositorio en 2019. Como sustituto técnicamente equivalente, distribuimos un mirror de OpenWrt 24.10.6 (target ath79/generic) — la base sobre la cual Nightwing fue compilado. Una vez flasheado, instalar batctl + kmod-batman-adv reproduce el comportamiento mesh del firmware original.
# 1. Descargar la imagen para tu modelo curl -O https://firmware.bogota-mesh.org/openwrt-24.10.6-ath79-generic-ubnt_nanostation-m-xw-squashfs-factory.bin # 2. Verificar integridad contra checksum oficial curl -O https://firmware.bogota-mesh.org/sha256sums.txt sha256sum -c sha256sums.txt --ignore-missing # openwrt-24.10.6-ath79-generic-ubnt_nanostation-m-xw-squashfs-factory.bin: OK # 3. Conectar al router por cable Ethernet (192.168.1.1) # 4. Acceder a la interfaz web del firmware original # 5. Cargar el .bin en la sección "Firmware Upgrade" # 6. Esperar 3-5 minutos sin desconectar la alimentación # 7. SSH al nuevo OpenWrt ssh [email protected] # 8. Instalar batman-adv para reproducir el comportamiento mesh opkg update opkg install batctl-default kmod-batman-adv # 9. Verificar mesh activo batctl o # Originator last-seen Best next-hop # 02:ca:fe:00:01:23 0.420s 02:ca:fe:00:01:42
Atribución: Las imágenes son builds oficiales no modificados del Proyecto OpenWrt (release 24.10.6, target ath79/generic). Servimos este mirror sobre Cloudflare R2 como parte del repositorio activo de Bogotá Mesh. Para builds propios, soporte y documentación canónica, dirigirse al proyecto upstream.
Nightwing fue compilado para una selección específica de dispositivos, elegidos por su disponibilidad en el mercado colombiano, su relación calidad/precio y su compatibilidad con OpenWrt. A continuación, los equipos que formaron la columna vertebral de la red.
El dispositivo preferido para enlaces entre nodos distantes. Su antena direccional integrada y carcasa para exterior lo hacían ideal para montaje en mástil en techos y terrazas.
El router más icónico del movimiento WiFi libre a nivel mundial. Económico, abundante en el mercado de segunda mano. Sus antenas removibles RP-SMA permitían conectar cantennas caseras.
Parte fundamental de la filosofía DIY del proyecto. En los talleres se enseñaba a fabricar antenas direccionales con materiales accesibles, calculando dimensiones con fórmulas de guía de onda circular.
Reservado para los enlaces troncales de la red, donde se necesitaba máximo alcance y throughput. Su plato parabólico concentraba el haz para cruzar grandes distancias con mínima pérdida.
El corazón técnico de cualquier red mesh es el protocolo que decide por dónde viajan los paquetes. Bogotá Mesh evaluó varios y eligió B.A.T.M.A.N. por su balance entre simplicidad, eficiencia y descentralización.
Cada nodo solo conoce a su mejor próximo salto, no la topología completa. Ligero en CPU/RAM, ideal para hardware de bajo costo. Estable frente a cambios de topología.
OLSR requería que cada nodo conociera la topología completa, lo que era costoso en routers limitados. Babel ofrecía buen rendimiento pero menos madurez en hardware embebido en 2010.
# Ver vecinos directos en la malla batctl n [B.A.T.M.A.N. adv 2014.4.0, MainIF/MAC: bat0 (02:ca:fe:00:01:23)] IF Neighbor last-seen mesh0 02:ca:fe:00:01:42 0.180s mesh0 02:ca:fe:00:01:7d 0.420s # Ver tabla de enrutamiento mesh batctl o # Ver paquetes OGM en tiempo real batctl tg
Instalar un nodo mesh no requiere conocimientos avanzados, pero sí atención al detalle. El wiki documentaba cada paso del proceso, desde la elección del lugar hasta la verificación final de conectividad.
Buscar un punto elevado (techo, terraza) con línea de vista hacia al menos un nodo vecino existente. Evaluar interferencias por estructuras metálicas, árboles, otros emisores WiFi en el espectro 2.4 GHz.
Mástil de acero galvanizado fijado con abrazaderas o concreto. Altura mínima 1.5 m sobre cualquier obstáculo cercano. Antena alineada hacia el nodo destino con ajuste fino con brújula.
Cable Ethernet exterior STP cat-5e desde la antena hasta el router. PoE pasivo 24V para alimentar las NanoStation. Crimpado RJ-45 con verificación de polarización.
Acceso a la interfaz web original del router (192.168.1.1), upload de la imagen .bin del firmware, espera 3–5 min. Verificación SSH al arrancar el nuevo firmware.
Asignación automática de IP mesh al primer boot. Configuración del SSID local para clientes, contraseña WPA2, canal WiFi (típicamente 1, 6 u 11 en 2.4 GHz). Habilitar DHCP local.
Verificar batctl n para confirmar vecinos directos. Test de throughput con iperf3 contra el nodo más cercano. Anotar el nodo en el mapa colaborativo de la red.
Más allá del enrutamiento, la red Bogotá Mesh alojaba servicios internos accesibles incluso sin conexión a internet. Estos servicios convertían la malla en una intranet comunitaria con utilidad propia.
Copia local de Wikipedia en español, accesible desde cualquier nodo. Útil incluso si la red mesh no tenía conexión a internet en ese momento.
Telefonía interna entre nodos. Cada participante recibía una extensión SIP que permitía llamadas dentro de la malla sin costo y sin operador comercial.
Servidores de archivos comunitarios para intercambio de software libre, documentación, podcasts, libros bajo licencias libres y material educativo.
Red social de microblogging tipo Twitter pero corriendo en la malla, federada con otras instancias. Espacio de comunicación interna entre los participantes del proyecto.
━━━━━━━━━━ ◇ ━━━━━━━━━━