@NuestraRedOrg – Red Inalámbricas libres en zonas rurales

En septiembre de 2012 escribí el articulo Redes Inalámbricas libres para el campo (Reflexión) para el blog de la Fundación VivirEnLaFinca, desde entonces hemos venido haciendo diferentes tipo de pruebas hacer un despliegue de una red abierta que permita a personas en el campo acceder a información que en este momento no puede acceder de otras formas, es por eso que en 2013 nos unimos a la Comunidad de Practica Convergentes del barrio la Loma, del corregimiento de San Cristobal en Medellín, para formular un proyecto que permitiera por medio de la red hacer un intercambio de saberes entre el campo y la ciudad. En ese proceso logramos acceder a un estimulo por parte de la fundación APC con este estimulo hemos podido comprar equipos de red preparados para instalar en el exterior, (6 Ubiquiti PicoStation M2HP y 6 Ubiquiti NanoStation M2) e iniciar un proceso de investigación y pruebas para definir la mejor forma de configurar e implementar la red.

En este punto quiero contarles que NuestraRed como nombramos el proyecto esta dividido en dos zonas, una rural (Corregimiento de Arabia en Pereira / Risaralda) otra zona urbana (Barrio la Loma en la Comuna 60 / Medellín) en esta entrada especifica voy a hablar sobre la zona rural y en una próxima entrada explicare la zona urbana y como se conectan entre sí los dos lugares.

La parte técnica:

Nodos actuales de NuestraRed en Risaralda.
Nodos actuales de NuestraRed en Risaralda.

 

Para el montaje de esta red hemos optado por la utilización de Software Libre y herramientas libres de mucho tipo, de hecho la implementación de este tipo de redes comunitarias no seria posible sin utilizar estas herramientas.

Elegimos el Firmware basado en OpenWrt desarrollado por el proyecto qmp.cat  que incorpora el protocolo de enrutamiento dinámico para redes MESH BMX6. La utilización de este protocolo tiene muchas ventajas técnicas, desde mi punto de vista como técnico de ello es la utilización de IPV6 para el manejo de toda la conexión entre los nodos, esto le permite un mejor manejo de las rutas y optimiza el consumo de recursos de red al ser un protocolo que se basa en la capa 2 del modelo OSI.

Equipo Ubiquiti NanoStation M2 Equipo de Nuestrared
Equipo Ubiquiti NanoStation M2 Equipo de Nuestrared

El protocolo a su vez separa el enlace tipo MESH creando una red modo AD-HOC en donde corre el protocolo BMX6, y crea una red en modo “Master” que permite en enlace de nuestros clientes a la red.

En esta zona tenemos instalado un servidor Linux, que nos permite enviar a la red diferentes servicios de red, en la actualidad tenemos:

– La Wikipedia, Wikilibros, El diccionario de la wikipedia, Wikiquotes, estos servicios corren de manera local utilizando la versión servidor de Kiwix .

– Tenemos también una emisora local #RadioSucia que corre usando el servidor de Audio Icecast 2 a la que en la actualidad estamos transmitiendo la colección de vinilos de la fundación vivir en la finca.

– Estamos creando un sistema de información local usando el software Milfs, desarrollado por qwerty.co. Con este sistema de información esperamos crear diferentes herramientas de datos abiertos que permitan a la gente compartir diferente tipo de información que puedan crear las personas que se conectan a la red. En la actualidad la pagina del proyecto esta siendo desarrollada usando la herramienta: http://www.nuestrared.org/

– Para controlar el acceso y poder tener un portal cautivo que le cuente a la gente a que se esta conectando cuando entra a la red, usamos TinyProxy + Dansguardian, utilizamos este tipo de herramientas para tener unas pequeñas estadísticas de acceso a los servicios que estamos ofreciendo en la red y a su vez promocionarlos.

Portal Cautivo de NuestraRED
Portal Cautivo de NuestraRED

La documentación técnica espero irla subiendo al siguiente repositorio en Git Hub: https://github.com/kleper/NuestraRED

Los Nodos / La comunidad.

Vista panorámica de uno de los nodos de la red.
Vista panorámica de uno de los nodos de la red.

En la actualidad contamos con 5 Nodos, distribuidos así:

Link: http://umap.openstreetmap.co/es/map/untitled-map_402#15/4.7262/-75.6941
Link: http://umap.openstreetmap.co/es/map/untitled-map_402#15/4.7262/-75.6941

La comunidad con la que estamos trabajando inicialmente son con los niños y las niñas que están en el área de influencia de la red ya que las herramientas que tenemos inicialmente son herramientas de consulta que son útiles para poder hacer las tareas las tareas que les ponen en las escuela o en el colegio,  y creo que allí precisamente es donde esta el objetivo de la red, orientar a la creación de contenidos.

Estadísticas de acceso a la red en 3 dias
Estadísticas de acceso a la red en 3 dias

Desde que empece con el tema de las redes libres (en el 2002) he visto como han ido evolucionando las redes, me atrevo a decir que los problemas técnicos en su mayoría están resueltos y que los equipos de red en la actualidad son mucho más asequibles que hace 10 años, pero el problema fundamental es el mismo, y son las preguntas de ¿Para que una red libre? ¿que problema se resuelve? en este caso aún no tengo estas respuestas claras, pero considero que serán los contenidos que pongamos en la red, y los contenidos los que las mismas personas vayan creando lo que le dará viabilidad al proyecto y marcara su futuro.

 

Agradecimientos:

Unloquer – Platohedro, Fundación Vivir en la Finca, Juan Esteban Giraldo, APC, MedellinWireless, Comunidad de Practica Convergentes.

 

¿Que pasa con el Software Libre en Bogotá?

¿Se puede hablar de una política de software libre? – Sí (Respuesta corta).

Respuesta larga:

Llevamos años intentando promover una política de software libre en el país, intentando promover como política de estado el uso de herramientas libres como alternativa y solución a los problemas tecnológicos del estado.

Suena ambicioso todo esto, suena contradictorio y revolucionario, ¿Como se combaten a las grandes corporaciones, Oracle, MS, SUN, entre otros? ¿Como se le cambia el paradigma a las personas respecto al uso de las tecnologías? ¿Como se enseña que compartir no es malo? Y ¿Como se le muestra a las personas que Software Libre no es algo netamente tecnológico, es algo que viene de mano de la cultura y promueve valores que fortalecen lo comunitario, el pro común? – Preguntas como estas llevamos años tratando de responder, hemos sido pocos los que hemos creído en el Software Libre mas allá de la simple moda de usar un sistema operativo alternativo, mas allá de creerse el súper Hacker, mas allá de las simples herramientas, el software libre, sus implicaciones culturales son un medio y un fin.

Pero un momento examinemos un poco la realidad: 1.) desde el año 2000 en Colombia, la comunidad de software libre estuvo intentando introducir en el Senado una política de Software Libre, para el país, que dio origen a algo que en su momento conocimos como Colibri, que luego este nombre fue utilizado para designar a la comunidad de Colombia, años mas tarde este mismo grupo, logró que “La Comisión Distrital de Sistemas expidiera el 20 de octubre de 2008 la Resolución 305 «Por la cual se expiden políticas públicas para las entidades, organismos y órganos de control del distrito capital, en materia de tecnologías de la información y comunicaciones respecto a la planeación, seguridad, democratización, calidad, racionalización del gasto, conectividad, infraestructura de datos espaciales y software libre.” (http://www.cds.gov.co/index.php?option=com_content&view=article&id=86&Itemid=160)

2.) Luego en el 2012, El actual alcalde de Bogotá: EN EL PLAN DE DESARROLLO ECONÓMICO, SOCIAL, AMBIENTAL Y DE OBRAS PÚBLICAS PARA BOGOTÁ D.C. 2012-2016 BOGOTÁ HUMANA en su Artículo 44 “Programa TIC para Gobierno Digital, Ciudad Inteligente y sociedad del conocimiento y del emprendimiento”, en el proyecto numero 4 “Promover la utilización del software libre en el Distrito Capital. Implementar en las entidades distritales el uso de medios electrónicos para la realización de cobros, pagos y demás diligencias que deban realizar los ciudadanos.”

Son dos momentos históricos para el Software Libre, y creería uno que con normas y políticas que teóricamente deberían obligar al distrito a implementar y promover esta idea la realidad es bastante desconsoladora cuando te acercas a mirar lo que realmente pasa, de los dos años que lleva Gustavo Petro en la alcaldía, los avances en la política de software libre son prácticamente nulos, es decir, al parecer lo que han entendido las diferentes secretarias respecto a esta política es usar algún CMS de mala calidad libre e implementar servidores con Software OpenSource (La principal diferencia entre los términos “open source” y “free software” es que éste último tiene en cuenta los aspectos éticos y filosóficos de la libertad, mientras que el “open source” se basa únicamente en los aspectos técnicos. Nota tomada de wikipedia) o que simplemente no les importa por que igual la alcaldía de Petro solo dura 4 años si no es destituido, podemos mirar eso en cifras haciendo búsquedas rápidas en la página de contratación a la vista:

En contratos relacionados directamente con linux el distrito ha invertido 58 Millones de pesos, en Oracle ha invertido (gastado) 8.925 Millones, la Contraloria de Bogotá uso 655,692,168 Millones en licencias de una suite de ofimática pudiendo usar Software Libre, es importante que entendamos que este dinero del presupuesto del distrito son en su totalidad dineros públicos y entonces se pregunta uno, ¿La defensa de lo publico no tiene también que ver con el presupuesto relacionado con tecnología?

Revisando específicamente las diferentes Secretarias, lo que es Secretaria General y Secretaria de Cultura han invertido en computadores a los que les han instalado linux, pero no tienen una política clara de software libre en su entidad, solo la Secretaria de Gobierno tiene un proyecto claro de migración a software libre (http://gestion.gobiernobogota.gov.co/wiki/doku.php/migracion) y ha invertido aproximadamente unos 400 millones de pesos en personal encargado de ese proyecto, y unos 1200 Millones en 922 computadores a los que les han instalado Linux, también han generado proyectos con impacto para la ciudadanía pero la Alta consejería para las Tic, ha puesto zancadilla al desarrollo de esos proyectos, por ejemplo, el proyecto que tenia la Secretaria de Gobierno para la formación de los funcionarios públicos en el uso de herramientas libres, proyecto que inicialmente era por 800 millones de pesos y debido al traslado presupuestal que el Alcalde ordeno a la secretarias para la Alta Consejería para las tic, relacionado con el presupuesto para tecnología y obligando a las diferentes secretarias a presentar proyectos a esta seudo entidad para invertir en tecnología; Secretaria de Gobierno tuvo que presentar un proyecto a dicha entidad para dicha formación a funcionarios y solo se le fue asignado 200 millones de pesos, además las condiciones ya no era capacitar la Secretaria de Gobierno sino generar un proyecto para todo el distrito, ¿Puedes hacer un proyecto de capacitación para todo el distrito con 200 millones de pesos? La respuesta de Mauricio Trujillo alto consejero para las tic, fue: Tómenlo o déjenlo, obviamente la Secretaria de Gobierno lo tomó pero aún no saben las consecuencias que tendrá eso.

Un proyecto de una red inalámbrica libre para todo Bogotá que fue propuesto desde la Secretaria de Gobierno, como un proyecto de impacto para la ciudadanía y que involucraba el tema de Software Libre directamente fue desestimado a ultimo momento por la alta consejería para las tic. Entidad que al parecer no tiene ni idea que en el plan de desarrollo de la Bogotá Humana existe una política clara sobre la utilización y la implementación de Software Libre.

(Nota: El Secretario de Gobierno (Guillermo Jaramillo), esta semana destituyó al Director de Planeación y Sistemas de la entidad quien era la cabeza del proyecto de Software Libre en la Secretaria de Gobierno) 

Mirando estas cifras y se da cuenta uno que muchas de las cosas que están escritas en los planes de gobierno de las diferentes alcaldías del país, son solo palabras, estrategias de campaña usadas para ganar electores de un gremio u otro. Al parecer en este sentido el proyecto progresista no es diferente a los demás proyectos políticos del país.

Por otro lado la Alta Consejería para las Tic, que seria la entidad que debería estar encabezando el proceso de Software Libre de todo el distrito, en el pasado mes de octubre, “MesTic” mas del 90% de las actividades relacionadas con el tema fueron conferencias de empresas que venden OpenSource y en las que se dedicaban a promover sus productos, dicha entidad tiene dentro de sus proyectos algo que llaman G-Cloud (Gobierno en la nube), y en la presentación de esos proyectos los funcionarios de la alta consejería han tenido el descaro de decir que puede que le paguen a google para tener el correo de toda la ciudad y de todas las entidades del distrito, cosas que va claramente en contra de la protección de datos, del software libre y que además sera dinero que ira al exterior y no se invertirá en mejorar la economía del país.

En este sentido y a grandes rasgos, una de las ventajas que tiene el Software Libre es que nutre las economías locales cuando empiezas a contratar personas o empresas de las regiones que manejan el tema, también ayuda a la formación de empresas con la experiencia necesaria para manejar estos temas, es bueno revisar el caso de Brasil que un porcentaje alto de la reactivación de su economía durante el gobierno de Lula y siguientes ha sido la inversión del estado en desarrollo de Software Libre.

En este sentido la actual directiva tecnológica de Bogotá, esta en manos de personas que al parecer del tema en cuestión desconocen, le temen y/o no les interesa, o están “parcializados” hacia tecnologías privativas, ya sea por facilísimo o por corrupción, si es por lo primero, es un claro mensaje que esta alcaldía como las anteriores tampoco esta interesada en educar y en promover ideas que tienen que ver con la construcción colectiva del conocimiento y eso si es bastante grave ya que es una clara contradicción a todo el plan de gobierno de la alcaldía actual. Si es por lo segundo, la corrupción al parecer se ve hasta en las mejores familias y hasta en los que han sido criticas con este fenómeno que parece ser inherente a la política colombiana.

Una política de Software Libre, en Colombia, debe convertirse en lo que el movimiento de Software Libre mundial se ha estado convirtiendo desde hace años. En un movimiento que nos ayude a entender que necesitamos de un cambio cultural estructural, en donde los valores de lo colectivo primen antes de las necesidades individuales, donde el conocimiento se construya de manera colectivo en todas las áreas que componen a los seres humanos, (Política, Cultura, Tecnología), no se puede negar que somos seres políticos, pero es necesario una transformación desde las raíces de todo aquello que nos forma como individuos y como sociedad, La cultura libre, entendido desde la base de la libertad de conocimiento es un pilar fundamental para lograr ese cambio, y el software libre es uno de los componentes fundamentales en esta transformación, ya que la única manera de salvarse de una sociedad donde la tecnología sea usada para ejercer control sobre el cuerpo y la vida de las personas, es conocer el como esta hecho cada cosa y de ahí la importancia que el estado deje de comprar cajas negras y empiece a producir tecnología libre y abierta, fácilmente auditable y mejorable por la comunidad en general.

Recuperando un Linksys WRT160NL con un cable DK-U5

Cuando se esta trabajando en el tema de las redes inalámbricas libres se corre siempre el riesgo de dejar “inservible” algún router en el proceso de instalarle el firmware que necesitamos para el trabajo que queramos hacer. Es un riesgo que se corre cuando se quiere instalar software libre en los router que vamos usar en la red, ya sea que usemos DD-WRT o OpenWRT o algún firmware cocinado libre corremos el riesgo de dejar nuestro router en un estado que se conoce como “Brick” o ladrillo, es decir una caja con un led parpadeante que no sirve para nada más.

Hace unos años cuando usábamos los poderosos y todo resistentes Linksys WRT54G, cuando los dejamos en ese estado solíamos usar un cable conocido como JTAG para sacarlos de ese estado, todo el procedimiento consistía en construir un cable que se soldaba en la board del Linksys y conectaba a un PC por el puerto paralelo, para poder escribir directamente en la ROM de la maquina y sacarlo de ese estado. Una buena guia para los que todavia tienen Linksys WRT54G o algun router basado en el chip Broadcom 43xx es esta: http://www.tiaowiki.com/w/Debrick_Routers_Using_JTAG_Cable

Ahora con la evolución en las redes inalambricas y la aparición de los chip Atheros y los routers basados en este chip las formas de recuperación evolucionaron un poco, ya que el firmware de los router con estos chip no carga directamente, sino que la mayoria usan un Pre-Cargador, llamado U-BOOT que es el encargado en lanzar el firmware que esta escrito en la ROM de la maquina, esto según entiendo hace que el router tenga una especie de encendido en dos pasos, primero arranca el bootloader u-boot y luego carga el firmware que hace funcionar el router ya con las diferentes prestaciones que puede prestar.

Que el router arranque de esta forma hace que su recuperación después de una falla en la instalación de un firmware o de intentarle instalar un firmware que no esta diseñado para una maquina especifica, hace que el procedimiento para repararlo sea un poco mas sencillo,  ya que a las board de la mayoría de los router actuales que soportan instalarle algun firmware libre, traen ademas un puerto serial con los pines soldados el cual podemos usar para recuperar el router. No es que los clasicos wrt54g no tuvieran puerto serial, de hecho lo tienen solo que este no podía usarse para entrar al boot-loader de la maquina, Ahora los router nuevos con atheros permiten con una simple conexion serial acceder al bootloader usando software como MiniCom, PicoCom, CuteCom (En Linux) o Putty, HiperTerminal (En Windows), esto realmente facilita el trabajo.

En mi caso especifico el router que se me daño fue un Linksys WRT160NL, es un router bastante interesante desde mi punto de vista ya que tiene un puerto USB que se puede poner en modo host para instalar varios dispositivos y viene con 32mb de ram y 8 de rom, esto en dispositivos embebidos es bastante ademas la cantidad de ram y procesador lo hacen bastante rápido a comparación de otros equipos en el mercado (Mas info aquí: http://wiki.openwrt.org/toh/linksys/wrt160nl)

Para lograr recuperar mi router, consulte las siguientes fuentes:

http://fleshandmachines.wordpress.com/2012/05/28/wrt160nl-debrick/

http://lacachimba.wordpress.com/2011/08/09/recuperando-wrt160nl-consola-serie/

El problema que tenia con esas guías es que en mi poder no tenia el convertidor de Serial a USB que mencionan en las guías anteriores, lo que me llevo a pensar que teóricamente cualquier convertidor SERIAL2USB debería servir para el proceso, después de buscar entre mis cachibaches me encontré con un viejo cable DK-U5 que era utilizando para conectar algunos celulares nokia al pc y sacar info de ellos, al conectar este cable a un Linux, me di cuenta que efectivamente creaba un dispositivo serial ese fue el primer paso para lograrlo, ahora después de una búsqueda en la red me encontré que este cable es usado para algo similar pero para dispositivos basados en ARM9, (http://buffalo.nas-central.org/wiki/Use_a_Nokia_Serial_Cable_on_an_ARM9_Linkstation) no perdía nada con probar, así que procedí a cortar mi cable y seguir las instrucciones para identificar GND , TX, RX del cable para poder conectarlo al linksys, resulto que mi DK-U5 tenia la siguiente configuración:

Tierra (GND) ——–> Cable Amarillo

TX ————–> Cable Blanco

RC ————–> Cable Verde

Al tenerlo identificado bastaba con seguir alguna de las guías encontradas para recuperar el wrt160nl, como las dos me pedían que usara Windows, decidí hacerlo en Linux, así que instale para dicho procedimiento los siguientes paquetes.

PicoCom —–> Para conectarme por serial al U-Boot del Router, el comando usado es el siguiente:

picocom /dev/ttyUSB0 –baud 115200

[Se debe tener en cuenta que antes de encender el router se debe conectar al serial y lanzar el picocom, y al prender el router tiene aproximadamente 1 o 2 segundos para presionar enter y evitar que intente cargar el firmware malo y lo deje en la consola de recuperación de u-Boot. Estando ahi, basta con escribir:

upgrade code.bin

Para que el u-Boot active el servidor TFTP y quede a la espera de mandarle el firmware bueno por TFTP]

ATFTP —> Es el cliente TFTP que me gusta para este tipo de casos. la linea utilizada para enviar el firmware por tftp es:

atftp –option “mode octet” –option “timeout 60” –verbose –trace -p -l code.bin 192.168.1.1

[Se debe tener en cuenta conectar el cable de red al puerto 1 del router, y colocarse una ip entre 192.168.1.2 y 192.168.1.253, después de subir el firmware se debe volver a la consola serial y escribir el comando “go” para que el router instale y cargue el nuevo firmware]

Después de lo anterior el router fue recuperado con éxito.