Instructions
I believe you
can cut a lot of corners with building this system. There are three schools of thought:
- Use
Slackware 8.1 as the base:
Download Slackware 8.1 and install on the above machine and add the existing
Locustworld directory on to that machine.
Problems will occur especially on registration as the registration is
based on address of the hard drive. I
believe this would be the best hack. Ideally
you would install the latest version of free Locustworld 1311 configure it
etc. then you would copy everything to an external PC.
Next you would install Slackware 8.1
on the same machine then import all the original content from 1311
back onto the pc. Yes there
will be problems but you can solve them one at a time.
- Use
Locustworld as the base kernel:
Install Locustworld 1311 (the latest version non pro version) Get it
running. Download Slackware 8.1 iso and burn a CD. Boot with Slackware 8.1
iso cd. Install the slackware version into /dev/hdb or the second no
bootable drive this is /drv2 on with in Locustworld.
Next type setup and set the swap to the /devhdb (second no bootlable
drive) Continue installation. Near
the end of the installation it will ask for a number of things.
Ideally you don’t care cause you want to boot up with the original
Locustworld. So don’t
configure anything. Once you
reboot then you can look into /drv2 all your new systems are waiting for
you. Next you will need to add
PATHS to your new directories. Avoid
having duplicates, in /sbin you have a number of executable, do not put a
path to /drv2/sbin it will get confused to which system should be used.
Add symbolic links to items that can’t be copy due space
limitations.
- Use
new distro and update AODV:
To get a modern distro like Ubuntu and build AODV-UU version as instructed
below
Use new distro and
update AODV
The Mesh Server Edition - built on the solid foundation of Linux 2.6.X
kernel from the distribution package of Ubuntu 6.06 LTS whish is a Debian which
is known for its robust server installations — has a strong heritage for
reliable performance and predictable evolution. The objective of this server is
for a lower total cost of ownership with automatic LAMP installation with Locustworld mesh
connectivity.
The objective is to have a fully functioning MeshAP
with a built in LAMP (Linux, Apache, MySQL and PHP) server. This feature,
exclusive to Ubuntu Server Edition, is available at the time of installation.
The LAMP option means you don't have to install and integrate each of the
four separate LAMP components, a process which can take hours and requires
someone who is skilled in the installation and configuration of the individual
applications. Instead, you get increased security, reduced time-to-install, and
reduced risk of incorrectly configuring applications, all of which results in a
lower cost of ownership.
It also means that you have controls over each of
the components and are able to upgrade or downgrade them appropriately. It also
means that unlike Locustworld you will require system administration and best
practices that are assumed with this activity.
- LAMP
server (Ubuntu 6.06 LTS - Supported to 2011) http://www.ubuntu.com/getubuntu/download
- Burn ISO, using XP http://www.petri.co.il/how_to_write_iso_files_to_cd.htm
- Install Ubuntu Lamp server http://www.howtoforge.com/lamp_installation_ubuntu6.06
or http://www.howtoforge.com/lamp_installation_ubuntu6.06
For now just use the DHCP to connect to LAN, and test the server out.
- Check to see if netfilter is installed. Check out the distribution of
Ubuntu it may contain this information already in the following location;
/usr/share/doc/netfilter-extensions-source/changelog.Debian.gz
/usr/share/doc/netfilter-extensions-source/copyright
/usr/src/netfilter-extensions.tar.bz2
If not you will then require to install it. Download the latest netfilter: http://packages.ubuntu.com/gutsy/net/netfilter-extensions-source
also check out http://packages.ubuntu.com/gutsy/net/netfilter-extensions-source
Here is information on testing netfilter http://www.netfilter.org/documentation/HOWTO/netfilter-hacking-HOWTO-7.html
- Download AODV-UU http://sourceforge.net/project/showfiles.php?group_id=212045&package_id=254999
- Download Winscp: http://winscp.net/eng/download.php#download2
- Use Winscp to copy the files to your Linux directory
- Create a directory at root call “mserver”
copy all your compress files there
- Alternatively you can use on your pc Winrar http://www.rarlab.com/download.htm
to uncompress your tar files and then move to winscp.
This is just an alternative.
- In the directory “mserver” Make sure you have
the kernel source (or at least headers) of the kernel you are compiling
against installed. Otherwise the kernel modules might not compile. See the
troubleshooting section in the readme file if there are problems.
- Compile with "make":
> make
- Install (as "root"):
> make install
- Run (as "root" with recommended options for debugging):
> aodvd -l -r 3
- For command line options, run:
> aodvd –help
- The following module must be loaded when running (or compiled into
the kernel):
* kaodv.{o,ko}
- Module loading should happen automatically if AODV is installed and
the module loading system (modprobe) is properly configured.
- Follow the instruction to determine if AODV is working.
Resource can be found at http://core.it.uu.se/core/index.php/Main_Page
- At this point you should have AODV running on the server.
If you do already you have made great progress. Collect 50 points and
move to the next part. The next part is will be a bunch of hacks.
They may need to be recompiled but my thinking is that many of the
items could be copy over from Locustworld distribution.
In the event that you need to download source code from Locustworld
it is located at: http://www.mirrorservice.org/sites/ftp.locustworld.com/
The idea here is to see what Locustworld needs to
perform its routing. It seems not
that difficult but nothing is documented. Key
directories look to by
Cramfs
Etc
Hj
Tmp
Bin
After looking at the distro
everything needs to be added! every file folder.
There are many areas that need to be investigated
Locustworld init files,
Cron,
directory
Structure the mesh do a comparison of each directory
compared to your Ubuntu lamp server.
Top Directories of Locustworld
drwxr-xr-x
2 root bin
2048 Nov 2 2003 bin/
drwxr-xr-x
3 root root
1024 Sep 28 2003 boot/
drwxr-xr-x
1 root root
1232 Dec 31 1969 cramfs/
drwxr-xr-x
9 root root
22528 Mar 30 20:03 dev/
drwxr-xr-x
2 root root
1024 Dec 8 2003 dist/
drwxr-xr-x
2 root root
1024 Jun 24 2005 drv1/
drwxr-xr-x
3 root root
4096 Mar 6 15:59 drv2/
drwxr-xr-x
19 root root
3072 Apr 2 10:42 etc/
drwxr-xr-x
5 root root
7168 Dec 7 2005 hj/
drwxr-xr-x
2 root root
1024 May 28 2003 home/
drwxr-xr-x
4 root root
1024 Mar 30 20:04 htdocs/
lrwxrwxrwx
1 root root
14 Sep 30 2003 inst -> /tmp/work/inst
drwxr-xr-x
3 root root
2048 Sep 1 2003 lib/
drwxr-xr-x
1 root root
1580 Dec 31 1969 lib2/
drwx------
2 root root
12288 May 28 2003 lost+found/
drwxr-xr-x
9 root root
1024 May 28 2003 mnt/
dr-xr-xr-x
88 root root
0 Mar 30 15:03 proc/
drwxrwxrwt
7 user user
1024 Mar 6 21:01 root/
drwxr-xr-x
2 root bin
2048 Mar 23 2004 sbin/
drwxr-xr-x
2 root root
1024 May 28 2003 service/
drwxrwxrwt
1 root root
0 Mar 30 15:03 tmp/
-rw-r--r--
1 root root
6974 Apr 2 10:38 tree
drwxr-xr-x
10 root root
1024 Sep 1 2003 usr/
drwxr-xr-x
1 root root
0 Mar 30 15:03 var/
-rw-r--r--
1 root root
847850 Feb 24 2006 vmlinuz
drwxr-xr-x
2 root root
1024 Dec 8 2003 volumes/
Process that run on a MeshAP
@meshbox:/etc/rc.d# ps -aux
PID TTY Uid
Size State Command
1
root 1584
S init
2
root 0
S [keventd]
3
root 0
R [ksoftirqd_CPU0]
4
root 0
S [kswapd]
5
root 0
S [bdflush]
6
root 0
S [kupdated]
7
root 0
S [kjournald]
12
root 0
S [loop0]
14
root 0
S [loop1]
16
root 0
S [loop2]
41
root
0
S [kjournald]
42
root 0
S [loop3]
43
root 0
S [loop4]
44
root 0
S [loop5]
45
root 0
S [loop6]
46
root 0
S [loop7]
47
root
0 S
[loop8]
48
root 0
S [loop9]
49
root 0
S [loop10]
80
root 1336
S atrbtr
153
root 0
S [khubd]
486
root 1360
S /usr/sbin/klogd -c 3
-x
490
root 1416
S /usr/sbin/syslogd -l
meshbox
497
root 2996
S /usr/sbin/sshd
1109
root 1360
S /hj/udhcpc -n
1423
root 2612
S vtund[s]: waiting
for connections on port 5
1447
root 1380
S /hj/svscan /service/
1448
root 1916
S /bin/sh /hj/caller
1451
root 1340
S supervise dnscache
1452
dnscache 2724 S
/usr/local/bin/dnscache
3182
root 0
S [rebroadcast]
3183
root 0
S [kernel-aodv]
3189
root 1924
S /bin/sh /hj/stst
3227
root 1932
S /bin/sh /hj/npwat
3362
root 2340
S dhcpd br0
3730
root 3108
S stunnel
3731
root 1928
S /bin/sh /hj/ike
3847
root 1400
S pptpd
3866
root 1368
S /hj/tcpserver -H -R
-l rmpoll -c5 -d -t10 0
3871
root 1920
S /bin/sh /hj/ublockd
3874
root
1484 S
/usr/sbin/crond -l10
3882
root 1368
S /hj/tcpserver -H -R
-l unblock -c10 -d -t10
3901
tty3 root 1600
S init
3902
tty4 root 1600
S init
5534
root 2924
S vtund[s]: gateway129
tun tun0
5680
root 2924
S vtund[s]: gateway140
tun tun1
31757
root 22360
S splashd
368
root 22360
S splashd
369
root 22360
S splashd
370
root 22360
S splashd
371
root 22360
S splashd
372
root 22360
S splashd
373
root 22360
S splashd
374
root 22360
S splashd
375
root 22360
S splashd
376
root 22360
S splashd
377
root 22360
S splashd
378
root 22360
S splashd
2152
root 5716
S /usr/sbin/sshd
2154
root 2212
S -bash
4867
root 2924
S vtund[s]: gateway136
tun tun2
6826
root 1576
S sleep 300
7242
root 1572
S sleep 30s
7297
root 1576
S sleep 20
7298
root 0
Z [atrbtr]
7299
root 1896
S ping -c 1
1.255.255.254
7310
root
1576 S
sleep 20
7311
root 1720
R ps -aux
Crontab
/etc# crontab -e
reading /var/spool/cron/crontab.2674
9,39 * * * * /hj/remotemanagement >/dev/null
2>&1
#44 */8 * * * /hj/swman >/dev/null 2>&1
30 */4 * * * /bin/dmesg -c >/dev/null 2>&1
05 * * * * /hj/healthchecker >/dev/null
2>&1
*/10 * * * * /hj/lontt >/dev/null 2>&1
*/2 * * * * /hj/plink >/dev/null 2>&1
*/5 * * * * /hj/apush >/dev/null 2>&1
50 * * * * /hj/sdns >/tmp/work/sdns.wrk
2>&1
*/30 * * * * /hj/splashtest >/dev/null 2>&1
/etc
:/etc# ls -l
total 136
Permissions
lrwxrwxrwx
1 root root 13 Aug
22 2004 ACK -> /tmp/work/ACK
-rw-r--r--
1 root root 0
Feb 24 2006 ADSL
-rw-r--r--
1 root root 0
Feb 24 2006 AUTHORITY
-rw-r--r--
1 root root 4
Feb 24 2006 BUILD
-rw-r--r--
1 root root 3
Mar 30 20:04 CELLIP
lrwxrwxrwx
1 root root 18 Jan
12 2003 DIR_COLORS -> /cramfs/DIR_COLORS
-rw-r--r--
1 root root 0
Feb 24 2006 FAST
-rw-r--r--
1 root root 24 Feb
24 2006 HOSTNAME
-rw-r--r--
1 root root 0
Feb 24 2006 LOCALREMAP
-rw-r--r--
1 root root 3
Feb 24 2006 MAJOR
-rw-r--r--
1 root root 0
Mar 6 15:58 PART
-rw-r--r--
1 root root 0
Mar 30 20:02 PCMCIA
-rw-r--r--
1 root root 0
Feb 24 2006 SOUND
-rw-r--r--
1 root root 0
Feb 24 2006 STATION
-rw-r--r--
1 root root 3
Feb 24 2006 VERSION
-rw-r--r--
1 root root 12 Mar
30 20:03 WIANAIP
-rw-r--r--
1 root root 3
Mar 30 20:04 WLANIF
-rw-r--r--
1 root root 12 Mar
30 20:03 WLANIP
drwxr-xr-x
3 root root 1024 Nov 15
2002 X11/
-rw-r--r--
1 root root 48 Mar
30 20:05 adjtime
-rw-r--r--
1 root root 358 Feb 24
2006 apd
-rw-r--r--
1 root root 362 Feb 24
2006 apd.master
-rw-r--r--
1 root root 294 Mar 30
20:02 autoaccess
drwxr-xr-x
2 root root 1024 Mar
5 2003 bluetooth/
drwx------
2 root root 1024 Mar
6 22:54 certs/
-r--r--r--
1 root root 1957 Feb 24
2006 config.opts
drwxr-xr-x
2 root root 1024 Oct 22
2002 cron.daily/
drwxr-xr-x
2 root root 1024 Oct 22
2002 cron.hourly/
drwxr-xr-x
2 root root 1024 Apr 15
2002 cron.monthly/
drwxr-xr-x
2 root root 1024 Apr 15
2002 cron.weekly/
lrwxrwxrwx
1 root root 19 Jan
12 2003 devfsd.conf -> /cramfs/devfsd.conf
-rw-r--r--
1 root root 2498 Mar 30 20:04
dhcpd.conf
-rw-r--r--
1 root root 2558 Feb 24
2006 dhcpd.conf.master
lrwxrwxrwx
1 root root 16 Jan
12 2003 dialogrc -> /cramfs/dialogrc
drwxr-sr-t
5 root root 1024 Mar 30 20:04
dnscache/
-rw-r--r--
1 root root 166 Feb 24
2006 dnsroots.global
drwxr-xr-x
2 root root 1024 Oct 18
2004 firmware/
-rw-r--r--
1 root root 1045 Feb 24
2006 fro-0.conf
-rw-r--r--
1 root root 1034 Feb 24
2006 fro-master.conf
-rw-r--r--
1 root root 2180 Feb 24
2006 fstab
-rw-r--r--
1 root root 2362 Feb 24
2006 gettydefs
-rw-r--r--
1 root root 401 Feb 24
2006 group
-rw-------
1 root root 0
Feb 24 2006 gshadow
-rw-r--r--
1 root root 128 Feb 24
2006 hardwareclock
-rw-r--r--
1 root root 27 Feb
24 2006 host.conf
-rw-r--r--
1 root root 3196 Feb 24
2006 hostap_cs.conf
-rw-r--r--
1 root root 4465 Feb 24
2006 hostapd.conf
-rw-r--r--
1 root root 837 Feb 24
2006 hosts
lrwxrwxrwx
1 root root 19 Jan
12 2003 hosts.allow -> /cramfs/hosts.allow
lrwxrwxrwx
1 root root 18 Jan
12 2003 hosts.deny -> /cramfs/hosts.deny
-rw-r--r--
1 root root 320 Feb 24
2006 hosts.equiv
drwxr-xr-x
3 root root 1024 Oct 18
2004 hotplug/
lrwxrwxrwx
1 root root 4
Feb 27 2003 init.d -> rc.d/
-rw-r--r--
1 root root 155 Feb 24
2006 inittab
-rw-r--r--
1 root root 608 Feb 24
2006 inittab.backup
-rw-r--r--
1 root root 690
Feb 24 2006 inputrc
-rw-------
1 root root 60 Feb
24 2006 ioctl.save
lrwxrwxrwx
1 root root 18 May
12 2003 ipsec.conf -> ipsec.d/ipsec.conf
-rw-r--r--
1 root root 43 Feb
24 2006 issue
-rw-r--r--
1 root
root
0 Feb 24 2006 issue.net
-rw-r--r--
1 root root 8391 Mar 30 20:03
ld.so.cache
-rw-r--r--
1 root root 334 Feb 24
2006 ld.so.conf
lrwxrwxrwx
1 root root 25 Mar
30 20:03 localtime -> /usr/share/zoneinfo/GMT+5
lrwxrwxrwx
1 root root 20 Jan
12 2003 login.access -> /cramfs/login.access
lrwxrwxrwx
1 root root 18 Jan
12 2003 login.defs -> /cramfs/login.defs
-rw-r--r--
1 root root 786 Feb 24
2006 modules.conf
lrwxrwxrwx
1 root root 21 Jan
12 2003 modules.devfs -> /cramfs/modules.devfs
-rw-r--r--
1 root root 45 Mar
30 15:03 motd
-rw-r--r--
1 root root 715 Mar 30
20:03 mtab
lrwxrwxrwx
1 root root 16 Jan
12 2003 networks -> /cramfs/networks
lrwxrwxrwx
1 root root 21 Jan
12 2003 nsswitch.conf -> /cramfs/nsswitch.conf
-rw-r--r--
1 root root 5815 Feb 24
2006 partysip.conf
-rw-r--r--
1 root root
816 Jul 4
2003 passwd
drwxr-xr-x
3 root root 1024 Dec 14
2004 pcmcia/
drwxr-xr-x
3 root root 1024 Dec 17
2003 ppp/
-rw-r--r--
1 root root 1604 Mar 30 20:05
pptpd.conf
-rw-r--r--
1 root root
1604 Feb 24 2006
pptpd.conf.master
-rw-r--r--
1 root root 2472 Feb 24
2006 profile
-rw-r--r--
1 root root 5748 Feb 24
2006 protocols
lrwxrwxrwx
1 root root 32 Jun
16 2003 radius.conf -> /usr/local/etc/raddb/radius.conf
lrwxrwxrwx
1 root root 28 Jun
17 2003 radiusclient -> /usr/local/etc/raddb/client//
-rw-r--r--
1 root root 512 Mar 30
20:03 random-seed
drwxr-xr-x
2 root root 1024 Feb 19
2004 rc.d/
-rw-r--r--
1 root root 112 Apr
2 07:50 resolv.conf
lrwxrwxrwx
1 root root 17 Jan
12 2003 securetty -> /cramfs/securetty
-rwxr-xr-x
1 root root 3940 Feb 24
2006 sensors.conf*
-rw-r--r--
1 root root 15 Feb
24 2006 serial.conf
lrwxrwxrwx
1 root root 16 Jan
14 2003 services -> /cramfs/services
-rw-------
1 root root 441 Mar 30
20:02 shadow
-rw-------
1 root root 441 Feb 24
2006 shadow-
-rw-------
1 root root 441 Feb 24
2006 shadow.master
-rw-------
1 root root 441 Mar
8 14:53 shadow.old
lrwxrwxrwx
1 root root 14 Jan
12 2003 shells -> /cramfs/shells
lrwxrwxrwx
1 root root 23 Apr
8 2004 siproxd.conf -> /tmp/work/sipproxy.conf
drwxr-xr-x
2 root root 1024 Nov 16
2002 ssh/
-rw-r--r--
1 root root 153 Feb 24
2006 syslog.conf
-rw-r--r--
1 root root 8757 Feb 24
2006 termcap
lrwxrwxrwx
1 root root 7
Jun 22 2003 termcap-Linux ->
termcap
drwxr-xr-x
2 root root 1024 Sep 28
2003 vga/
-rw-r--r--
1 root root 1682 Feb 24
2006 vnetrc
lrwxrwxrwx
1 root root 15 Jan
12 2003 vtund.conf -> /tmp/vtund.conf
-rw-r--r--
1 root root 0
Feb 24 2006 watchdog
-rw-r--r--
1 root roo