Sección · Documentación

Documentación técnica

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.

Origen wiki.bogota-mesh.org Activos desde 2008 Licencia CC BY-SA 4.0
Áreas
04 capítulos
Firmware
Nightwing
Protocolo
B.A.T.M.A.N.
Base
OpenWrt
Wiki OPENWRT 2.4 / 5 GHz

01. Firmware Nightwing

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.

Base

OpenWrt

Tipo
Distribución Linux embebida
Target
Routers SoC ARM/MIPS
Footprint
4–16 MB flash · 32–64 MB RAM

Distribución Linux optimizada para dispositivos con recursos limitados. Kernel y herramientas userland adaptadas para hardware embebido.

Routing

B.A.T.M.A.N. adv

Capa
2 (link layer)
Tipo
Proactivo, distribuido
Origen
Freifunk, Berlín

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.

Hardware

Atheros SoC

Familias
AR71xx · AR9xxx
Radio
WiFi 802.11n integrado
Soporte
OpenWrt mainline

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.

Auto-config

IP automática

Mesh IP
Asignación al boot
Cliente
DHCP
Intervención
Cero

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.

Descargas — Mirror oficial

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.

Proceso de flasheo + verificación

# 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.

02. Hardware soportado

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.

Exterior

Ubiquiti NanoStation M2 / M5

SoC
Atheros AR7241 + AR9287
Freq
2.4 GHz (M2) / 5 GHz (M5)
Ganancia
11 dBi (M2) / 16 dBi (M5)
PoE
24V pasivo (incluido)
Uso
Enlaces P2P 1–15 km

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.

Interior

Linksys WRT54G / WRT54GL

SoC
Broadcom BCM5352 / BCM5354
Freq
2.4 GHz
Ganancia
2 dBi (antenas dipolo)
RAM
16 MB
Uso
Nodo de acceso local

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.

DIY

Antenas direccionales caseras

Tipo
Cantenna · Yagi · biquad
Ganancia
8–15 dBi
Material
Latas, varillas de cobre, RG-58
Conector
N-type / RP-SMA

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.

Backbone

Ubiquiti NanoBridge M5

SoC
Atheros AR7241
Freq
5 GHz
Ganancia
22–25 dBi (parabólico)
Alcance
25+ km con LOS
Uso
Enlaces troncales

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.

03. Protocolos de enrutamiento

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.

Elegido

B.A.T.M.A.N. advanced

Capa
2 (Link Layer)
Modelo
Proactivo, distribuido
Métrica
OGM (Originator Messages)
Tabla
Solo «next-hop» por destino

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.

Comparado

OLSR · Babel

OLSR
Capa 3, link-state
Babel
Distance-vector, RFC 6126
Trade-off
Más overhead en grandes redes

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.

Diagnóstico operativo

# 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

04. Instalación de nodos

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.

Selección de ubicación

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.

Montaje físico

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.

Cableado

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.

Flasheo Nightwing

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.

Configuración de red

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.

Pruebas y puesta en producción

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.

05. Servicios de 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.

Conocimiento

Wiki & enciclopedia

Servicio
Kiwix + Wikipedia ES
Acceso
http://wiki.mesh/
Tamaño
~40 GB

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.

Voz

VoIP / Asterisk

Servicio
Asterisk PBX
Protocolo
SIP
Acceso
Linphone, Jitsi

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.

Archivos

FTP / SMB

Servicio
vsftpd · Samba
Uso
Compartir archivos locales
Tamaño
Variable por nodo

Servidores de archivos comunitarios para intercambio de software libre, documentación, podcasts, libros bajo licencias libres y material educativo.

Social

Microblog interno

Software
StatusNet (GNU Social)
Federación
OStatus
Acceso
http://social.mesh/

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.

━━━━━━━━━━ ◇ ━━━━━━━━━━