This project is dead!!!

 

The idea of Free Networks is not :-)   -- Read on!


Nowadays, we have nice and cheap Access Points running GNU/Linux. There is the meshcube (64MB RAM, 32MB flash, 400MHz) and the Linksys WRT54G (16 MB, 4 MB flash, 125MHz) as well as the WRT54GS (32MB RAM, 8 MB, 200MHz flash). These small and quiet 100€-Linux boxes don't need much electricity (actually, they need a lot less than a PC running the MobileMeshDisk). Therefore it makes much more sense to buy one of these devices instead of running a standalone PC -- Okay, you'll have to buy them first, but this will be much less than the electricity bill for a standalone MobileMesh-PC in the first year.

Second thing is, that there is a good alternative to the MobileMesh program itself -- it is called olsr. So if you think about Mesh Networks, you should have a look at it. It has a lot of advantages over MobileMesh. One advantage is that OLSR is still actively developed, whereas MobileMesh is unmaintained for several years now.

There are several Linux-packages for olsr available at http://olsr.org/index.cgi?action=download. If your distribution is not among them, you'll need to compile it yourself what should be easy if you use GNU/Linux anyway. There are also some olsr programs) for windows and Mac OS, though I don't know how well these different programs interoperate with the Linux version from www.olsr.org.

If you need further advice and speak German, the possible best thing to do is to ask at the mailinglist of freifunk.net. If you do not speak German, you can also write me an email.






The old page follows:





This is supposed to work with almost all wireless devices. However, due to lack in hardware I could only successfully test it with USB-wlan-adapters with atmel chipset, which are, however, quite a few. Please give me some feedback if you could get it working with other devices as well.

As always: Use at your own risk.




MobileMeshDisk


Page last modified: 13 FEB 2004

About
Idea
Roadmap
Creating the MobileMeshDisk
Troubleshooting (if necessary)
Contact
Links



About
This is a small Linux distribution (at this early stage it is simply a preconfigured fli4l to which I added support for mobile mesh and USB wlan). It fits on a normal floppy disk. By booting from this floppy disk you can turn an old PC into a wireless router. The floppy currently comes with:
It would be easy to add other packages,(e.g. like QoS for traffic shaping) since MobileMeshDisk is based on the modular One-Disk-Router fli4l (version 2.1.5) It would also be easy to extend this version to make it possible to create the router on harddisk, CD or CompactFlash. Packages for fli4l for such a task are available.

Compared to existing "wireless" distributions (e.g. pebble or Elektra's MobileMesh CD distro) MobileMeshDisk has the advantage that you will neither need nor will you have to take care of a harddisk. However, it also has (still) some disadvantages. At the moment the user will have to enter the module she wants to use. So USB-hotplugging for instance does not work (yet), the user will have to "say" which device the floppy disk will have to be configured for. This is mainly because a floppy disk is somewhat limited in terms of space. Therefore, only the modules the user has "asked for" will be written to the floppy disk.



Idea
Take an old Computer (486 and upwards). If it does not already have USB, then buy a PCI-USB-Adapter(10 $). Buy a Wlan-USB-Adapter (30 $). Buy a 5meter USB-Extension-Cable (5 $). Create the floppy disk and put it into the old Computer. Put that Computer under your roof (or next to some window), the Wlan-USB-Adapter should be put in a weather-proof plastik box on top of the roof. Make leaflets to ask your neighbours to do the same. This way you can create a wireless network in your town.



Roadmap

As I said earlier prior to creating the disk  you have to tell the config files which modules you want to be included on the floppy. This is a big obstruction to "normal users", who e.g. do simply not know if they have to take the usb-uhci or usb-ohci module. However, I think this can be overcome more or less easily. Consider the way the floppy disk is created: All files are packed in "opt_tar.bz2", which is unpacked when the floppy disk boots. All information, e.g. IP address, password, hostname etc. is stored in a normal ASCII file called "rc.cfg". The idea is the following: We create a floppy disk with an opt_tar.bz2 which simply includes everything for an out-of-the box mobilemesh floppy (usb hotplugging, ssh, dhcpd etc.). The image of this floppy disk can then be easily distributed and written to other floppies. When the floppy disk boots up, a small script asks the user for a password, IP address, netmask etc. This is then written to rc.cfg to make the floppy unique.

Unfortunately, I have not much time the next 2 months (who has ;-). If you can help to achieve this goal or have any other idea, then please let me know.

Creating the MobileMeshDisk

Download it here (md5 files are to check the files' integrity if you want).

Then unpack it

Under Linux:
tar  xjvf  mobilemeshdisk-0.1.tar.bz2

Under Windows:
Use WinRar or another decrompression tool (For completely unpacking this archive the option "Smart-Tar-CRLF-Conversion" should be switched off) .

Format the floppy disk

There is going to be quite a bit of software on the floppy, hence we will format the disk for 1680KB.

Under Linux:
type: "fdformat   /dev/fd0u1680" on the command line

Under Windows:
You need to download one of these format tools:
ftp://ftp.tu-clausthal.de/pub/msdos/utils/dskutl/fdformat.zip
ftp://ftp.tu-clausthal.de/pub/msdos/utils/dskutl/hdcp20ad.zip
The floppy disk has to be formatted with 80 tracks, double-sided and 21 sectors/track


Costumize the MobileMeshDisk

Edit "config/base.txt":
Edit "config/dhcp.txt":
If you have a PCMCIA-Card, Edit "config/pcmcia.txt":
Edit "config/usb.txt":

Create the floppy

Under Linux:
sh  mkfloppy.sh

Under Windows:
mkfloppy (you will have to start a DOS session and enter the command in the DOS box, N.B. "DOS session in windows", by no means a real old-fashioned DOS)

The Making of ssh-keys

If there has not been an error, take the disk and put it in your old PC and start it.  At booting time new ssh-keys will be created and stored in /tmp/ssh/. Login to the old PC by entering your previously chosen password at the login prompt (Don't worry, if the letters you type for the password are not printed on screen. This is simply for security reasons, someone else might look at your screen the moment you type)

Copy these ssh-keys to the floppy disk (the disk is mounted at /boot) by typing :

cp  -R  /tmp/ssh  /boot
halt

PS: This an American keyboard layout (see here for a picture of it)
PPS: It is very important to enter "halt" and shutdown the old PC before removing the disk from the old PC. Otherwise the ssh-keys may not have been completely written to the floppy disk

Then put the floppy disk in the newer PC again. Then copy the ssh-keys, which are in the /boot/ssh directory (on your old PC) to config/etc/ssh (on the PC where you originally created the floppy).

Under Linux:
su
mount /dev/fd0u1680 -t vfat /floppy/
cp /floppy/ssh/*  config/etc/ssh
umount /floppy
exit

Under Windows:
Simply use the Windows Explorer (if the directory config/etc/ssh does not already exit, then create it).

 Change SSHD_CREATEHOSTKEYS='no' in config/sshd.txt (This way newer keys won't be created any more at boot time). Create the floppy again with "sh mkfloppy.sh" (Linux) or "mkfloppy" (Windows; in Windows you will have to format the disk again) as you already did before. This time the newly generated keys will be copied to floppy instead of the delievered default ssh-keys. See here if you want some background information (only in German)


Last Step: Let the world know about it

Put that PC under your roof (or next to a window) and start making leaflets to tell your neighbours to do the same :-)




Troubleshooting

If you have problems let me know. But first try to solve the problem yourself, maybe one of the following will help you:


If you don't know what else to do, please write me an email!


Links

http://www.freenetworks.org - International website for free networks
http://freifunk.net - Die Website für freie Funknetze im deutschsprachigen Raum (erklärt auch die Idee)