Establishing a Mesh Portal

From OLPC
Revision as of 23:02, 16 April 2007 by Mbletsas (talk | contribs) (Further Reading)
Jump to: navigation, search

It's not entirely automatic quite yet; we'll get a more automatic solution in place soon.

Requirements

What to do

  • Boot up your XO
  • Switch to a virtual terminal (press Ctrl+Alt+F1), and log in as 'root'
  • Turn off NetworkManager, dhcdbd (the DHCP D-Bus daemon), and avahi
chkconfig --level 2345 NetworkManager off
chkconfig --level 2345 dhcdbd off
chkconfig --level 2345 avahi-daemon off
  • Set your init level to '3'; stopping Sugar and X from starting again.
nano /etc/inittab

find the line with:

id:5:initdefault:

and change the '5' to a '3' so it looks like this instead:

id:3:initdefault:
  • Plug the USB ethernet adapter into the XO
  • Reboot; type 'reboot' and press enter
  • Wait for the XO to boot to the login prompt, then log in as 'root'
  • Bring up the USB ethernet interface
ifup eth0
  • Install the DHCP daemon
yum -y install dhcp

You may have to try this command twice; yum sometimes runs out of memory doing dependency solving, and terminates before actually installing the RPM. Keep trying until the last line says "completed!".

  • Copy the xo-mpp-server RPM onto the XO and install it:
rpm -Uhv xo-mpp-server-0.1-1.noarch.rpm --force
  • Turn on various services at startup
chkconfig --level 345 network on
chkconfig --level 345 iptables on
chkconfig --level 345 dhcpd on
chkconfig --level 345 mpp on
  • Reboot; type 'reboot' and press enter

and it should all work

Using the wireless eth0 interface to connect to an access point

You can configure an all-wireless MPP to route between eth0 and msh0 on the same wireless radio. This will introduce another wireless hop with the subsequent reduction in throughput, however it will be the most common MPP configuration.

To do that you need to make sure that the msh0 interface gets initialized before the eth0 interface in /etc/init.d/network and that eth0 is associated with an Access Point and has a valid IP configuration before the mpp script starts.

Testing a larger network with multiple MPPs

The important thing to keep in mind here is that there can only be one DHCP server and that every MPP's msh0 interface needs a unique IP address.

If the xo-mpp-server RPM is installed, the /etc/syconfig/network-scripts/ifcfg-msh0 needs to be edited to set the IP address for that interface. Also editing /etc/dhcpd.conf on the machine that runs the DHCP server (so that the MPP addresses won't be in the DHCP pool) is required.


Further Reading

More information is available on these topics: