Building a Mesh Network in Rural Somaliland
I had heard about mesh networking before I arrived in Somaliland, but had never been in the position to actually build a meshnetwork. When I accepted the position as ICT instructor at Abaarso School of Science and Technology in Abaarso, Somaliland, Ifigured this may be my chance. I knew that the Open Technology Institute (OTI) had been developing a mesh firmware called Commotion, suitable for remote locations. Upon arriving in Somaliland I decided that building a mesh network using Commotion would be one of my top priorities.
It seemed like building a mesh network could be a difficult process. I experimented in the past with other firmware on a variety of routers, but found the configuration to be too time-consuming and difficult to set up.
I knew Commotion ran on Ubiquti hardware, designed for rough outdoor environments like Somaliland. Unfortunately, finding Ubiquti routers in Somaliland — for that matter, getting anything into Somaliland — is no easy task.
Somaliland is an independent autonomous region of Somalia, and is an area that is safe compared to the southern regions of Somalia. While not internationally recognized as a country, Somaliland has its own currency, government, and military.
The analogy I like to use when it comes to traveling to Somaliland is no different than that of getting to Hogwarts. Instead of running head first into an imaginary platform at the train station, you have to land in Dubai, catch a flight that leaves only once a week and then travel across a desert on one of the worst-built roads you can imagine.
While back in the US this past summer I contacted OTI and found that they would be able to provide me with the proper equipment to run and set up a mesh network using Commotion. I was so excited about the possibility of actually getting all of the equipment into Somaliland that I carefully packed everything into my carry-on.
Before I go any further, I should explain my level of experience with building networks. My only experience with networking had been taking a class at a community college in San Francisco and spending the last year troubleshooting our Internet problems at school. However, Commotion is built in such a way that little if any advanced configuration is necessary to set up a mesh network.
I first began building my network by identifying where I wanted access points on campus and mapping out distances between each spot. Having a good line of sight between each node was extremely important. Luckily we have a lot of high guard and water towers on campus so placing nodes was not an issue.
One minor problem with placing nodes in towers was that I had to ensure a reliable power source was within range of the node. If all my nodes were solar-powered, I would not have had to worry about running any cable at all!
I next had to “flash” each router, which means loading the Commotion firmware on to each Ubiquti device. I had experience flashing firmware onto routers before but had never “meshed” wireless nodes together. To help with this I referred to the configurationexamples on Commotion’s website, which I found extremely helpful. Open source software has been known to be tricky to configure and maintain but it certainly does not have to be. Commotion has proved this to be more than true.
While building the network, I made sure to include students as much as I could. I assembled together a computer club of my top ICT students to discuss and teach the basics of mesh networking, how to flash firmware onto routers, and how to add a node to the network. Together we ran cable and climbed water towers to place the nodes in their proper places. We also had to place some nodes in the guard towers which often times, the guards would unplug accidentally. Students trained the guards on the difference between the LAN and PoE ports as well as the importance of keeping the PoE cable plugged in at all times. A few weeks after school we put up the last two nodes for the girls’ dorms and the boys’ dorms.
Somaliland is currently the only country in Africa that lacks fiber optic access — cables are laid but access is not predicted to be available until 2014. Somaliland receives its Internet connection via microwaves across the desert from Djibouti. All of the IP address ranges in Somaliland will tell you that you are in Djibouti. The distant gateway connectivity, not to mention unreliable ISPs, equates to some seriously slow Internet.
A lack of consistent access to the Internet is an ICT instructor’s nightmare. Not being able to teach the most current technologies can be frustrating, and it also hampers sharing files with students.
Mesh networking is described as a “peer to peer network:” I wanted to use the full sense of the term and make file sharing among my students easy and manageable. In order to solve this communication problem I decided to rely less on the outside Internet and rely more on local applications installed on our servers.
I found the solution to our inconsistent and slow Internet by installing OwnCloud, an open source alternative to Dropbox, on our local server. Now students could share homework assignments with me and other teachers without having to rely on the Internet at all.
As well as the network worked and as much fun as setting it up was, I cannot call this project successful until I can come back to Somaliland a year from now and see the same nodes in place running the same network.
I used a few methods to make sure this would be the case. I was careful to document every aspect of the project and create detailed guides for teachers and future network administrators on everything from how to find your IP address on the network to how to ping a node, which is important for isolating a potential problem on the network. Even though mesh networks are “self-healing”, they are not perfect and still have their quirks.
Having all of the knowledge centered in one place with one staff member will only set an organization up for failure, so I’ve made sure to give a series of small trainings to the entire staff.