Diferencia entre revisiones de «Proyectos:Archivo/Red Mesh 2015»

De Hacklab La Paz - r00thouse
Sin resumen de edición
Sin resumen de edición
Línea 11: Línea 11:
[[File:Index.5.JPG|thumb|none|300x300px]]
[[File:Index.5.JPG|thumb|none|300x300px]]


Hay que implementar una infraestructura de red que funcione bajo una banda de frecuencias libres. (probablemente [http://www.lexivox.org/norms/BO-RBM-N294.xhtml 2.4Ghz]), mas información de [https://es.wikipedia.org/wiki/Bandas_de_frecuencia bandas de frecuencia]
Implementar una infraestructura de red que funcione bajo una banda de frecuencias libres. (probablemente [http://www.lexivox.org/norms/BO-RBM-N294.xhtml 2.4Ghz]), mas información de [https://es.wikipedia.org/wiki/Bandas_de_frecuencia bandas de frecuencia]


= 1. Software y protocolos<br/> =
= 1. Software y protocolos<br/> =


# Inicialmente se necesita probar routers que soporten el sistema operativo [https://en.wikipedia.org/wiki/OpenWrt OpenWRT], en La Paz podemos encontrar esta lista de [[Lista de routers TP-Link disponibles en la Uyustus | routers]]
# Inicialmente se necesita probar routers que soporten el firmware [https://en.wikipedia.org/wiki/OpenWrt OpenWRT], en La Paz podemos encontrar esta lista de [[Lista de routers TP-Link disponibles en la Uyustus | routers]]
#Luego probar la comunicación entre dos puntos lo que indicara que el protocolo funciona.
#Luego probar el protocolo de comunicación de la siguiente lista:
*[http://en.wikipedia.org/wiki/B.A.T.M.A.N. B.A.T.M.A.N.] y [http://www.open-mesh.org/projects/open-mesh/wiki B.A.T.M.A.N.]
*[http://en.wikipedia.org/wiki/Optimized_Link_State_Routing_Protocol OLSR]
*[http://nightwing.lugro-mesh.org.ar/ Nightwing]
*[[Robin.forumup.it/ Ro.b.i.n]]
En este caso usaremos el protocolo *B.A.T.M.A.N.*


=== Protocolos<br/> ===
= 2. Antenas<br/> =


*B.A.T.M.A.N
Trabajamos con antenas que soporten la frecuencia 2.4Ghz y 5Ghz
**[http://en.wikipedia.org/wiki/B.A.T.M.A.N. http://en.wikipedia.org/wiki/B.A.T.M.A.N.]
**[http://www.open-mesh.org/projects/open-mesh/wiki http://www.open-mesh.org/projects/open-mesh/wiki]
*OLSRP [http://en.wikipedia.org/wiki/Optimized_Link_State_Routing_Protocol http://en.wikipedia.org/wiki/Optimized_Link_State_Routing_Protocol]
*Ro.b.i.n [[Robin.forumup.it/|robin.forumup.it/]]


=== Sistemas operativos / Firmwares<br/> ===
Antenas construidas:


*OpenWRT [http://en.wikipedia.org/wiki/OpenWrt http://en.wikipedia.org/wiki/OpenWrt]
Antenas adquiridas:
*&nbsp;Nightwing [http://nightwing.lugro-mesh.org.ar/ http://nightwing.lugro-mesh.org.ar/]
*Otros firmwares [http://en.wikipedia.org/wiki/List_of_wireless_router_firmware_projects http://en.wikipedia.org/wiki/List_of_wireless_router_firmware_projects]
 
= 2. Antena<br/> =
 
Hay que escoger las antenas aducuadas para trabajar en la frecuencia libre de 2.4 Ghz (frecuencia de uso libre).
 
Hay que formar un equipo que se encargue de esto y averiguar si conviene comprar o fabricar las antenas.


= 3. Servicios<br/> =
= 3. Servicios<br/> =
Los siguientes servicios son los que se implementaran:


Una vez que se logre la comunicacion entre nodos se puede montar servicios.
= 4. Routers<br/> =


= 4. Otros<br/> =
Lista de routers con sus respectivas configuraciones:
* [[TP-LINK TL-WR941ND v5.1]]


== La banda ISM<br/> ==
= 5. Nodos<br/> =


El uso para radio aficionados está autorizado por la ATT ([http://www.att.gob.bo/images/files/PNF%2008_11_12.pdf ver documento, pág 108 - bol20]) [https://en.wikipedia.org/wiki/ISM_band ver más], existe variedad de dispositivos que funcionan en esta banda de frecuencias, aunque puede que se halle algo saturada y se presenten [https://en.wikipedia.org/wiki/Electromagnetic_interference_at_2.4_GHz Interferencias electromagnéticas]
Esta es una lista de los nodos que se tienen hasta ahora:


== Sobre los Nodos<br/> ==
= 6. Casos de éxito en otros países<br/> =


Inicialmente
*[http://bogota-mesh.org/ Red Inalámbrica Comunitaria Libre de Bogota]
*[http://buenosaireslibre.net/ Red digital comunitaria de la Ciudad de Buenos Aires y Alrededores]
*[https://guifi.net/en/node/3671/view/services Guifi (españa) + Servicios]
*[http://wiki.ninux.org/FrontPage Ninux]
*[http://en.wikipedia.org/wiki/List_of_wireless_community_networks_by_region Lista de redes por región]
*[https://wiki.projectmeshnet.org/List_of_Mesh_Locals projectmeshnet]
*[http://battlemesh.org/ Prueban protocolos periódicamente]
*[http://www.libre-mesh.net/ Firmware basado en OpenWrt]


'''roothouse''' ---> '''UMSA'''
= 7. Otros<br/> =


== La banda ISM<br/> ==


 
El uso para radio aficionados está autorizado por la ATT ([http://www.att.gob.bo/images/files/PNF%2008_11_12.pdf ver documento, pág 108 - bol20]) [https://en.wikipedia.org/wiki/ISM_band ver más], existe variedad de dispositivos que funcionan en esta banda de frecuencias, aunque puede que se halle algo saturada y se presenten [https://en.wikipedia.org/wiki/Electromagnetic_interference_at_2.4_GHz Interferencias electromagnéticas]
= 5. Casos de exito<br/> =
 
Red Inalambrica Comunitaria Libre de Bogota
 
[http://bogota-mesh.org/ http://bogota-mesh.org/]
 
Red digital comunitaria de la Ciudad de Buenos Aires y Alrededores.
 
[http://buenosaireslibre.net/ http://buenosaireslibre.net/]
 
== Ejemplo de otras redes mesh<br/> ==
 
*Guifi (españa) + Servicios [https://guifi.net/en/node/3671/view/services https://guifi.net/en/node/3671/view/services]
*Ninux [http://wiki.ninux.org/FrontPage http://wiki.ninux.org/FrontPage]
*[http://en.wikipedia.org/wiki/List_of_wireless_community_networks_by_region http://en.wikipedia.org/wiki/List_of_wireless_community_networks_by_region]
*[https://wiki.projectmeshnet.org/List_of_Mesh_Locals https://wiki.projectmeshnet.org/List_of_Mesh_Locals]
*Prueban protocolos periodicamente [http://battlemesh.org/ http://battlemesh.org/]
*Firmware basado en OpenWrt [http://www.libre-mesh.net/ http://www.libre-mesh.net/]
 
= Configuraciones realizadas =
 
=== TP-LINK TL-WR941ND (v5)<br/> ===
 
Fecha: 13/12/2014
 
*Sistema Operativo: ''Openwrt 12.09''
 
 
=== TP-LINK TL-WR941ND (v5.1)<br/> ===
 
 
=== Grabar el firmware de openwrt ===
 
Hemos utilizado el post #44 del siguiente link para grabar el firmware.
https://forum.openwrt.org/viewtopic.php?pid=220561
 
Para evitarse el proceso de modificar el binario y recompilarlo hemos subido el binario para descargarse:
 
Proximamente ;)
 
Luego de tener el binario se debe hacer una '''actualización de firmware''' al router para poder instalar openwrt.
La actualización puede hacerse desde la interfaz web de administración del dispositivo.
 
=== ASUS WL-500GP (v2)<br/> ===
 
http://wiki.openwrt.org/toh/asus/wl500gp http://wiki.openwrt.org/toh/asus/wl500gp
 
Fecha: 13/12/2014
 
*Sistema Operativo: ''Openwrt 10.03''
 
Una vez instalado el sistema operativo hemos seguido esta guía de instalación:
 
[http://wiki.reseaulibre.ca/guides/openwrt+batman/#index6h1 http://wiki.reseaulibre.ca/guides/openwrt+batman/#index6h1]
 
== Recuperando con failsafe (caso TL WR941ND) ==
En caso que no haya forma de conectarse remotamente por ninguna red a OpenWrt (tal vez el router se quedó sin dirección IP), este firmware cuenta con un modo failsafe que sirve para cuando ocurren estas cosas.
 
El caso en el que se recuperó fue el siguiente: despúes de hacer algunas configuraciones y reiniciar los servicios de openwrt ya no existía ninguna red inalámbrica y no era posible ver el router por ninguna red cableada (no ping, ni desde dhcp ni con ip estática).
 
OpenWrt cuenta con modo failsafe que permite resolver esto: http://wiki.openwrt.org/doc/howto/generic.failsafe
 
Los pasos son los siguientes:
* Desconectar el router de cualquier red cableada
* Encender el router
* En el panel frontal del router se ve que el LED de SYS parpadea al iniciar el router (2 veces por segundo)
* Cuando el LED de SYS tenga esa secuencia de parpadeos presionar el boton frontal para activar el modo failsafe
** En el caso del TL WR941ND no hay que presionar el botón frontal, hay que presionar el botón trasero de reset WPS
* Uno se encuentra en modo failsafe cuando el LED de SYS comienza a parpadear muy rápido
* En teoría ninguna red tenía dirección IP pero cuando está en failsafe el router tendrá la IP 192.168.1.1
** El primer intento fue conectar la laptop con los puertos lan (amarillos) del router y no se podía hacer ping
** El segundo intento fue conectar la laptop con el puerto wan (azul) del router y el ping ya se podía realizar. $ ping 192.168.1.1
* Ejectutar: $ telnet 192.168.1.1 que permite ingresar como root directamente sin necesidad de password
* Ya siguiendo con la documentación de openwrt para volver al estado inicial del router
** $ mount_root
** $ firstboot
** $ reboot -f
 
== Mas informacion<br/> ==
 
#[https://es.wikipedia.org/wiki/Red_en_malla https://es.wikipedia.org/wiki/Red_en_malla]
#[https://en.wikipedia.org/wiki/Mesh_networking#See_also https://en.wikipedia.org/wiki/Mesh_networking#See_also]
#[https://es.wikipedia.org/wiki/Red_inal%C3%A1mbrica_mallada https://es.wikipedia.org/wiki/Red_inal%C3%A1mbrica_mallada]
#[https://en.wikipedia.org/wiki/Wireless_mesh_network#Research_topics https://en.wikipedia.org/wiki/Wireless_mesh_network#Research_topics]
#[http://jornadas.cafelug.org.ar/8/es/filminas/tercer%20dia/LUGRo-Mesh:%20Tecnolog%C3%ADa%20Mesh%20aplicada%20a%20redes%20WiFi%20Comunitarias/LUGRo-Mesh%20-%20slides%20charla%208vas%20JRSL.pdf http://jornadas.cafelug.org.ar/8/es/filminas/tercer%20dia/LUGRo-Mesh:%20Tecnolog%C3%ADa%20Mesh%20aplicada%20a%20redes%20WiFi%20Comunitarias/LUGRo-Mesh%20-%20slides%20charla%208vas%20JRSL.pdf]
#[https://en.wikipedia.org/wiki/ISM_band https://en.wikipedia.org/wiki/ISM_band]
#Documental: Free the network [https://www.youtube.com/watch?v=Fx93WJPCCGs https://www.youtube.com/watch?v=Fx93WJPCCGs]
 
= Primera Version Funcional =
 
Esta una descripción de las acciones seguidas para configurar un nodo de esta primera versión.
 
== Hardware Utilizado ==
 
'''Router TPLink Modelo TL-WR941Nd'''
 
== Software Utilizado ==
 
* Sistema operativo '''OPENWRT ATTITUDE ADJUSTMENT (12.09, r36088)'''
* Protocolo batman
** kmod-batman-adv - 3.3.8+2012.3.0-3
 
== Configuraciones de software  ==
 
Basado en:
 
* http://www.open-mesh.org/projects/batman-adv/wiki/Quick-start-guide
* http://www.open-mesh.org/projects/batman-adv/wiki/Batman-adv-openwrt-config
 
=== /etc/config/network ===
 
<source lang="bash">
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
 
config interface 'lan'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.3.1' # ip del nodo (asignacion manual)
option netmask '255.255.255.0'
option _orig_ifname 'bat0 eth0'
option _orig_bridge 'true'
option ifname 'bat0 eth1'
 
config interface 'wan'
option ifname 'eth0'
option proto 'dhcp'
 
config switch
option name 'switch0'
option reset '1'
option enable_vlan '1'
 
config switch_vlan
option device 'switch0'
option vlan '1'
option ports '0 1 2 3 4'
 
config interface 'mesh'
option _orig_ifname 'adhoc0'
option _orig_bridge 'false'
option proto 'static'
option ipaddr '192.168.100.1'
option netmask '255.255.255.0'
 
</source>
 
Basicamente hay que configurar la interfaz '''lan''' con una ip estática (de otra manera no se autoasigna ip) y agregar las líneas
 
option _orig_ifname 'bat0 eth0'
option _orig_bridge 'true'
option ifname 'bat0 eth1'
 
Luego agregar la interfaz '''mesh''' como se ve arriba.
 
=== /etc/config/wireless ===
<source lang="bash">
config wifi-device 'radio0'
option type 'mac80211'
option channel '11'
option macaddr 'e8:94:f6:04:e6:e2'
option hwmode '11ng'
option htmode 'HT20'
list ht_capab 'LDPC'
list ht_capab 'SHORT-GI-20'
list ht_capab 'SHORT-GI-40'
list ht_capab 'TX-STBC'
list ht_capab 'RX-STBC1'
list ht_capab 'DSSS_CCK-40'
option disabled '0'
option txpower '27'
option country 'US'
 
config wifi-iface 'wmesh'
option device 'radio0'
option ifname 'adhoc0'
option network 'mesh'
option mode 'adhoc'
option ssid 'mesh'
option bssid 'E8:DE:27:3A:C6:DF' # MAC arbitraria (debe ser comun para los nodos dentro de la mesh)
option encryption 'none'
</source>
 
Agregar la interfaz wifi-iface '''wmesh''' como se ve arriba
 
=== /etc/config/batman-adv ===
 
<source lang="bash">
config 'mesh' 'bat0'
        option 'interfaces' 'mesh'
        option 'aggregated_ogms'
        option 'ap_isolation'
        option 'bonding'
        option 'fragmentation'
        option 'gw_bandwidth'
        option 'gw_mode'
        option 'gw_sel_class'
        option 'log_level'
        option 'orig_interval'
        option 'vis_mode'
        option 'bridge_loop_avoidance'
 
</source>
=== /etc/config/dhcp ===
 
''Nota.-'' Revisar si la siguiente configuracion es necesaria.
<source lang="bash">
config dhcp
option start '100'
option leasetime '12h'
option limit '150'
option interface 'mesh'
</source>
 
Al reiniciar las conexiones de red, debería existir una red '''mesh''' accesible desde wifi y si los nodos se apagan la conexión entre clientes debe persistir.
 
== Antenas para mejorar intercambio de datos ==
 
== Infraestructura de red ==
 
= Version 2 (Wara-mesh) =
 
== Hardware ==
 
'''Router TPLink Modelo TL-WR941Nd'''
 
== Software ==
 
Crear 3 redes wifi.
* 1 red adhhoc (con ssid wara-mesh para la comnicaion entre nodos)
* 1 red local wifi '''publica '''(los que se conecten a esa red tendran ip publica en la red mesh)
* 1 red wifi '''privada ''' (los que se conecten a esta red pueden ver el contenido de la mesh pero sus ip no son publicas en la red mesh)
 
Hemos configurado esta red completamente desde archivos de configuracion, continuacion su descripccion.
 
=== /etc/config/wireless ===
 
Agregar las siguientes lineas al archivo
 
<source lang='bash'>
                                 
# interfaz wireless publica       
config wifi-iface                 
        option device 'radio0'   
        option encryption 'none' 
        option network 'lan'     
        option mode 'ap'         
        option ssid 'nodo2-wifi' 
# mas configuraciones         
config wifi-iface             
        option device 'radio0' 
        option ifname 'mesh0' 
        option encryption 'none'
        option network 'mesh' 
        option mode 'adhoc'   
        option bssid 'CA:FE:BA:BE:06:DF'
        option ssid 'wara-mesh' # nombre de la mesh
</source>
 
'''NOTA IMPORTANTE '''
Guardar el archivo y luego comprobar en la interfaz web que se crea una red wifi con ssid wara-mesh
 
=== /etc/config/network ===
 
<source lang='bash'>
                                                     
# se modifica agrega lo siguiente                     
config interface 'lan'                                 
        option ifname 'eth1 bat0' # las que haran bridge
        option type 'bridge'                         
        option proto 'static'                       
        option ipaddr '10.0.0.2' # ip unica del router
        option netmask '255.255.0.0'
                           
# nueva interfaz mesh       
config interface 'mesh'     
        option ifname 'mesh0'
        option proto 'none' 
        option mtu '1528'     
 
</source>
 
=== /etc/config/batman-adv ===
 
<source lang='bash'>
config 'mesh' 'bat0'
        option 'interfaces' 'mesh0'
        option 'aggregated_ogms'
        option 'ap_isolation'
        option 'bonding'
        option 'fragmentation'
        option 'gw_bandwidth'
        option 'gw_mode'
        option 'gw_sel_class'
        option 'log_level'
        option 'orig_interval'
        option 'vis_mode'
        option 'bridge_loop_avoidance'
</source>
 
Una vez realizados los cambios reiniciar el router con
 
<source lang='bash'>
reboot -f
</source>
 
 
== Software ==

Revisión del 23:47 2 may 2015

Documentacion Generica

Objetivos

  • Descentralizar las redes
  • Tener el control sobre nuestras comunicaciones
  • Ofrecer / Mantener servicios y libre (además de gratis) acceso a estos atravéz de wi-fi

Idea

Index.5.JPG

Implementar una infraestructura de red que funcione bajo una banda de frecuencias libres. (probablemente 2.4Ghz), mas información de bandas de frecuencia

1. Software y protocolos

  1. Inicialmente se necesita probar routers que soporten el firmware OpenWRT, en La Paz podemos encontrar esta lista de routers
  2. Luego probar el protocolo de comunicación de la siguiente lista:

En este caso usaremos el protocolo *B.A.T.M.A.N.*

2. Antenas

Trabajamos con antenas que soporten la frecuencia 2.4Ghz y 5Ghz

Antenas construidas:

Antenas adquiridas:

3. Servicios

Los siguientes servicios son los que se implementaran:

4. Routers

Lista de routers con sus respectivas configuraciones:

5. Nodos

Esta es una lista de los nodos que se tienen hasta ahora:

6. Casos de éxito en otros países

7. Otros

La banda ISM

El uso para radio aficionados está autorizado por la ATT (ver documento, pág 108 - bol20) ver más, existe variedad de dispositivos que funcionan en esta banda de frecuencias, aunque puede que se halle algo saturada y se presenten Interferencias electromagnéticas