WirelessMesh: Difference between revisions

m /HOWTOs/WirelessMesh moved to WirelessMesh over redirect: revert
 
(29 intermediate revisions by 3 users not shown)
Line 1: Line 1:
==Mumbai Wireless Mesh==
==Mumbai Wireless Mesh==
[http://www.glug-bom.org/ GNU/Linux user's group of Mumbai] made a free wireless mesh at [http://www.hbcse.tifr.res.in Homi Bhabha Centre for Science Education, TIFR]. Though we are late in setting up of the wireless mesh, which was due for over an year, we finally got a working free information network.  We intend to create a community network in Mumbai that will spread from place to place to create a citywide people's network.  People can use this network to publish useful content. To begin with it will serve all of wikipedia through the [http://www.gnowledge.org/ gnowledge.org protal] and lots and lots of useful free software for enabling the community.
[http://www.glug-bom.org/ GNU/Linux user's group of Mumbai] made a free wireless mesh at [http://www.hbcse.tifr.res.in Homi Bhabha Centre for Science Education, TIFR]. Though we are late in setting up of the wireless mesh, which was due for over a year, we finally got a working free information network.  We intend to create a community network in Mumbai that will spread from place to place to create a citywide people's network.  People can use this network to publish useful content. To begin with it will serve all of wikipedia through the [http://www.gnowledge.org/ gnowledge.org protal] and lots and lots of useful free software for enabling the community.


People anywhere in India or other places are invited to look at our community network, and replicate it in other parts of the world.  We will periodically conduct workshops at the request of the community and will transfer the technology.  We also request others to develop the skills and take it to every corner of the country, or rather every corner of the world.   
People anywhere in India or other places are invited to look at our community network, and replicate it in other parts of the world.  We will periodically conduct workshops at the request of the community and will transfer the technology.  We also request others to develop the skills and take it to every corner of the country, or rather every corner of the world.   
Line 21: Line 21:
2. Information utility for the public, legal advice, directions to various Government departments and knowledge of different procedures. Here knowledge empowers the people.  
2. Information utility for the public, legal advice, directions to various Government departments and knowledge of different procedures. Here knowledge empowers the people.  


3. As a file server to dish out 'Libre' software. Libre means Free Open Source Software (FOSS). Various distributions of the GNU/Linux operating like Debian, Ubuntu, Fedora, Mandrake etc can be made available in the form of ISOs that can be freely downloaded without any need for the internet. A local community repository.  
3. As a file server to dish out 'Libre' software. Libre means [http://www.gnu.org/ Free] Software (FOSS). Various distributions of the GNU/Linux operating like Debian, Ubuntu, Fedora, Mandrake etc can be made available in the form of ISOs that can be freely downloaded without any need for the internet. A local community repository.  


4. An IP based community radio station that runs on FOSS.  
4. An IP based community radio station that runs on FOSS.  
Line 28: Line 28:


==What do we need to setup a wireless mesh==
==What do we need to setup a wireless mesh==
Wllingness to share a pinch of what you have, apart from the following.
Willingness to share a pinch of what you have, apart from the following.
===Hardware===
===Hardware===
Linksys WRT54GS V.4 Wireless Routers.  This is used since we can add [http://wiki.freifunk.net/Freifunk_Firmware_%28English%29 freifunk firmware]. Freifunk site also lists few other routers.  You can use any of them.  Of course it is possible to create a wireless mesh using any PC with a WLAN card.
Linksys WRT54GS V.4 Wireless Routers.  This is used since we can add [http://wiki.freifunk.net/Freifunk_Firmware_%28English%29 freifunk firmware]. Freifunk site also lists few other routers.  You can use any of them.  Of course it is possible to create a wireless mesh using any PC with a WLAN card.
Line 35: Line 35:
First of course is the recent firmware from [http://wiki.freifunk.net/Freifunk_Firmware_%28English%29 Freifunk website].  After setting up and with a working network you can later add other additional software available from the same site.  
First of course is the recent firmware from [http://wiki.freifunk.net/Freifunk_Firmware_%28English%29 Freifunk website].  After setting up and with a working network you can later add other additional software available from the same site.  


This firmware contains a tiny but sufficiently equipped Linux kernel, busybox userland tools, ssh, iptables and a package manager called ipkg.
This firmware contains a tiny but sufficiently equipped Linux kernel, [http://busybox.net/about.html busybox] userland tools, ssh, iptables and a package manager called ipkg.


An additional package called 'freifunk-dnsmasq' has to be added to the Friefunk firmware in order to allow DHCP IP allocation for WLAN users. It has to be added in the way as explained below. This package is available for the Freifunk 1.5 versions only.  
An additional package called '[http://translate.google.com/translate?hl=en&sl=de&u=http://www.sredzki40.de/Users/flow/2006/03/freifunkfirmware-feste-ips-bekannte.html&sa=X&oi=translate&resnum=5&ct=result&prev=/search%3Fq%3Dfreifunk-dnsmasq%2B%26hl%3Den%26client%3Dfirefox%26rls%3Dorg.mozilla:en-US:unofficial%26sa%3DG freifunk-dnsmasq]' has to be added to the [http://wiki.freifunk.net/Freifunk_Firmware_%28English%29 Friefunk] firmware in order to allow DHCP IP allocation for WLAN users. It has to be added in the way as explained below. This package is available for the Freifunk 1.5 versions only.  


First ensure that your mesh is up and connected to the internet. Then ssh into your wireless router using 'ssh ip_address'. Enter 'root' as the username and your 'password' for password. Run the following commands.  
First ensure that your mesh is up and connected to the internet. Then ssh into your wireless router using 'ssh ip_address'. Enter 'root' as the username and your 'password' for password. Run the following commands.  
Line 44: Line 44:
#ipkg install 'package-name'  
#ipkg install 'package-name'  


This will install the package automatically from the internet just as we do normally using 'apt' or 'yum' utilities. Ipkg is a similar utility for the tiny 'Busybox' operating system in the router. Exit from the ssh session.  
This will install the package automatically from the internet just as we do normally using 'apt' or 'yum' utilities. [http://handhelds.org/moin/moin.cgi/Ipkg Ipkg] is a similar utility for the tiny '[http://busybox.net/about.html Busybox]' operating system in the router. Exit from the ssh session.  


Now the OSLR-DHCP options will be visible in the Friefunk interface after you reboot the router.
Now the OSLR-DHCP options will be visible in the Friefunk interface after you reboot the router.
Line 71: Line 71:
# You can replace the internet with a local webserver/s that acts as the local free knowledge base.  
# You can replace the internet with a local webserver/s that acts as the local free knowledge base.  


In the setup at [http://www.hbcse.tifr.res.in/ HBCSE] in Mahkhurd Mumbai, we used 2 [http://www.linksys.com/ Linksys] routers to form an OLSR mesh. We called them Node1 and Node2.
In the setup at [http://www.hbcse.tifr.res.in/ HBCSE] in Mahkhurd Mumbai, we used 2 [http://www.linksys.com/ Linksys] routers to form an [http://www.olsr.org/ OLSR] mesh. We called them Node1 and Node2.


The settings for each is given below.
The settings for each is given below.


==Node1==
==Node1==
Add a photograph here.
[[Image:nakednode1.jpg]]


LAN:  
LAN:  
Line 85: Line 85:


OLSR:     
OLSR:     
       10.10.3.0/24
       HNA4 10.10.3.0/24
      OLSR-DHCP 10.10.0.16/28,255.255.0.0
 
The two values specified for OLSR-DHCP refer to the range of IP to be given by the DHCP server to the wireless clients, and the mask to be specified for them. HNA4 value specifies the network to which OLSR to be bound to.  It is possible to specify more than one network here.


WLAN:  
WLAN:  
Line 103: Line 106:
==Node2==
==Node2==


And another photograph here.
[[Image:dressednode2.jpg]]


LAN:  
LAN:  
Line 112: Line 115:


OLSR:     
OLSR:     
           10.10.2.0/24
           HNA4 10.10.2.0/24
          OLSR-DHCP 10.10.0.32/28,255.255.0.0
 
The two values specified for OLSR-DHCP refer to the range of IP to be given by the DHCP server to the wireless clients, and the mask to be specified for them. HNA4 value specifies the network to which OLSR to be bound to.  It is possible to specify more than one network here.


WLAN:  
WLAN:  
Line 134: Line 140:
==WAN Setup for Internet==
==WAN Setup for Internet==


For internet access, simply connect your internet ethernet cable to the WAN port of any Node that you want to use as the mesh gateway. Depending on your internet connection, choose Static or DHCP for your WAN IP address. The OLSR protocol in the mesh ensures that all the WLANs and LANs can connect to the internet.
For internet access, simply connect your internet ethernet cable to the WAN port of any Node that you want to use as the mesh gateway. Depending on your internet connection, choose Static or DHCP for your WAN IP address. The [http://www.olsr.org/ OLSR] protocol in the mesh ensures that all the WLANs and LANs can connect to the internet.
 
==Clients can Join the Mesh==
 
A laptop or a PC connected to the mesh can also run olsrd (OLSR daemon available from download section of http://www.olsr.org/ for all the popular operating systems).  This will make each of the PCs act as additional nodes of the mesh.  This way the mesh dynamically changes its shape.  During our experiment we added a GNU/Linux PC running PPC architecture and a MS Windows PC in the mesh after running the olsrd on each of them.


==More questions==
==More questions==
Line 140: Line 150:
===How much does it cost?===
===How much does it cost?===
About Rs. 3000/- for each wireless router. And another Rs.3000/- for a booster antenna, which is required only on those nodes which need to cross a large ground or large uninhabited area.  And of course the spirit to share knowledge and your precious time.
About Rs. 3000/- for each wireless router. And another Rs.3000/- for a booster antenna, which is required only on those nodes which need to cross a large ground or large uninhabited area.  And of course the spirit to share knowledge and your precious time.
[[Image:antenna.jpg]]


===Who provides the content to the free network?===
===Who provides the content to the free network?===


Any redistributable content like wikipedia, free software, TLDP, gnowledge.org, and community generated content can be part of this network.
Any redistributable content like [http://www.wikipedia.org/ wikipedia], [http://www.gnu.org/ free software], [http://tldp.org/guides.html TLDP], [http://www.gnowledge.org/ gnowledge.org], and community generated content can be part of this network.
 
==Some links that helped us==
 
http://freifunk.net/wiki/FreifunkFirmwareEnglish
 
[http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch13_:_Linux_Wireless_Networking Quick HOWTO : Ch13 : Linux Wireless Networking]
 
http://en.wikipedia.org/wiki/OLSR
 
http://www.olsr.org/index.cgi?action=main
 
[http://wirelessafrica.meraka.org.za/wiki/index.php/Wireless_Mesh_Networking Wireless Mesh Networking - WirelessAfrica]
 
http://styx.commando.de/sven-ola/ffen/
 
[http://www.ccirrus.per.sg/rfc13109/2005/12/wifi-adhoc-mesh-with-olsr/ rfc13109  » Blog Archive  » WiFi Adhoc Mesh with OLSR]
 
[http://www.google.co.in/language_tools?hl=en Google language tool usefull for translating German sites]