|
|
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: |
| * 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 ==
| |