Redes libres para una ciudad libre
LugroMesh
En el año 2007 se formó el grupo llamado LUGRo-Mesh, nacido del Grupo de Usuarios de Software Libre de Rosario (LUGRo) y compuesto por miembros del mismo, quienes contribuyen con experiencia en diferentes áreas como las Telecomunicaciones, Administración de Sistemas y Programación de Computadoras. La meta de LUGRo-Mesh era la creación de una Red Libre, Abierta y Comunitaria para la ciudad de Rosario y alrededores. Para realizar este proyecto, y dada la experiencia previa en tecnología inalámbrica 802.11 (wifi) con el proyecto LUGRo-Wireless desde el año 2003, el grupo concluyo que la creación de una Red Inalámbrica de Área Metropolitana era la mejor alternativa. Se requería el uso de equipamiento de bajo coste, que la red fuera redundante, y que se pudieran utilizar las conexiones a Internet de banda ancha pre-existentes, para poder evitar tener un solo punto de conexión que podría ser muy costoso.
Habiendo estudiado las alternativas posibles se eligió la tecnología Mesh y B.A.T.M.A.N. como el protocolo de ruteo. Y para utilizar esta tecnología se desarrolló un firmware (software para los dispositivos) llamado Nightwing, que es utilizado por el grupo en la Red LUGRo-Mesh. La necesidad de que el acceso a la información fuera posible para la mayor cantidad de habitantes de la ciudad de Rosario y alrededores, que fuera gratuito y que además no fuera restringido, es la razón principal por la cual se creó la Red LUGRo-Mesh. Esta tiene entre sus objetivos crear un sistema que brinde acceso a la información, a los habitantes de Rosario y alrededores, que sea redundante y desarrollado íntegramente en Software Libre. Y que sirva para acceder a Internet desde cualquier punto de la ciudad y alrededores sin solicitar pago por ello. Como se menciono antes, el esquema puede ser replicado en otras ciudades y en otra escala (ya sea mayor o menor).
La Red que hemos montado ya cuenta con 31 nodos y casi 4000 usuarios, y cubre las zonas céntricas, sur y noroeste de la ciudad de Rosario. El tipo de acceso a Internet que normalmente se utiliza y que se encuentra a un precio relativamente accesible es el xDSL y el Cable Modem, conocidos coloquialmente como banda ancha. El mismo está limitado al ambiente físico de la propia conexión cableada; la posibilidad de romper esa restricción depende de la tecnología inalámbrica 802.11 (Wi-Fi). Las actuales implementaciones en Wi-Fi son diagramadas en forma estática con un modo de operación llamado Infraestructura, centralizada en los llamados Puntos de Acceso, dejando a la red muy dependiente de los PA que pasan a ser el talón de Aquiles de toda la red. El problema más común que se suele encontrar en las redes Wi-Fi de esas características es la caída de los enlaces entre los nodos, con la consecuente necesidad de reordenar las tablas de ruteo y la incomunicación que esto genera. Al ser enlaces fijos, reubicar físicamente los nodos o aplicar movilidad hace caer la red hasta que manualmente se realicen las reconfiguraciones pertinentes en el software y en los dispositivos.
Aquí es en donde entran a jugar un papel muy importante las Redes Mesh Inalámbricas (WMN). Estas no centralizan su funcionamiento en un sólo punto, sino que lo dividen entre todos los nodos que forman parte de la red. Además permiten la movilidad de los nodos, son auto-reparables y su configuración puede automatizarse fácilmente.
Nightwing
Nightwing es un firmware que permite la creación de Redes Inalámbricas de despliegue rápido y sin necesidad de tener que realizar complicadas configuraciones que permitan la extensión de la red. A partir de una implementación de tecnología Mesh denominada B.A.T.M.A.N, Nightwing permite que se extienda una Red Inalámbrica con la simple acción de agregar equipos. Y, más aún, funciona con la mínima intervención humana.
Comenzó a ser desarrollado en el año 2008, realizando varios lanzamientos a medida que las características planeadas eran implementadas. Utiliza una distribución de GNU/Linux, para sistemas embebidos, llamada OpenWrt. Esta distribución provee una base de código estable para Nightwing, además de proveer un amplio abanico de posibilidades de software a utilizar. La licencia utilizada, desde la primera versión, es la GNU GPL v3.0.
Características más sobresalientes de Nightwing
Zero-conf
Todas las interfaces, tanto inalámbricas como alámbricas, son configuradas automáticamente basándose en la dirección MAC que cada dispositivo tiene. De ésta manera, todos los dispositivos Nightwing que se encuentren en un mismo canal y con el mismo essid, establecerán automáticamente una Red Mesh y se auto asignarán los roles que les correspondan. Este rol puede ser el denominado modo “Gateway”, que será aquél que posea su propia conexión a Internet, o modo “Cliente”, que será quien contacta a un Gateway y amplie la cobertura del mismo.
VAP (Virtual AP)
Además de participar en la mesh, cada nodo provee cobertura en su área de influencia en modo AP (Access Point), comportándose como un Host-Spot normal y permitiendo a usuarios móviles o fijos acceder a Internet por medio de un AP abierto, sin encriptación. En este caso, es posible conectarse rápidamente desde cualquier Sistema Operativo, y se accede a Internet previo paso por un Portal Cautivo (Captive Portal) que controla la duración de la sesión y el ancho de banda asignado a cada conexión abierta. También proveen servicio a través de un segundo VAP, encriptado con clave WPA2, que permite utilizar un nodo en un ambiente privado, extendiendo también el acceso a la red local donde el mismo se encuentre conectado.
Seguridad
Todo nodo puede ser conectado a una red local (LAN) privada sin comprometer la seguridad de la misma, es decir que los usuarios externos conectados al AP abierto quedan aislados completamente del tráfico local y viceversa, y entre ellos mismos. En el modo cliente, es decir un nodo que no tiene conexión a Internet propia, funciona en su red local como servidor de DHCP y default gw. Configurando automáticamente los equipos de su red local para que accedan a Internet, de la misma manera que lo haría un modem de ADSL.
Funcionamiento inteligente
Cuando un nodo es conectado a una red local y no encuentra acceso a Internet en forma local o a otro nodo a quien enlazarse, no interfiere con la configuración previa existente en dicha LAN.