Penguin
Diff: MetaNetInstallation
EditPageHistoryDiffInfoLikePages

Differences between version 20 and predecessor to the previous major change of MetaNetInstallation.

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 20 Last edited on Thursday, February 10, 2005 1:54:08 am by GerwinVanDeSteeg Revert
Older page: version 12 Last edited on Sunday, November 16, 2003 7:39:03 pm by BlairHarrison Revert
@@ -18,9 +18,9 @@
 !Compile a kernel 
  
 This guide assumes you're running Linux. If you aren't, all hope is not lost. See [1]. 
  
-You need a 2.4 series kernel
+You need a 2.4 series (or later - 2 .6 works fine) kernel  
  $ uname -a 
  
 If you don't have one, go get one now. You'll thank yourself later. You might have to upgrade your firewalling from ipchains to iptables; check FirewallNotes for information. 
  
@@ -56,13 +56,13 @@
  
 !From Source - CVS 
 Check out wand, the WanDaemon software: 
  
- cvs -d:pserver:anonymous@cvs.wand .sourceforge.net:/cvsroot/wand login 
+ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wand login 
  
 When prompted for a password press enter 
  
- cvs -z3 -d:pserver:anonymous@cvs.wand .sourceforge.net:/cvsroot/wand co -r REL2 wand 
+ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wand co -r REL2 wand 
  
 !Tarballs 
 You can download tarballs from 
  
@@ -78,8 +78,43 @@
  
 If you are running GCC 3.3, you'll get a screenful of errors. To work around these, you can comment out the usage lines and add in a #include "assert.h" to the .cc files that complain about an assert error. 
  
 After that, you will need to configure it: 
+  
+!!Quick Overview  
+  
+Ok, the basics work like this (for the technical bods that like to understand what's happening).  
+  
+* Your lan needs to be within a 10.0.0.0/16 range - That which is allocated to you by someone already on the MetaNet.  
+* Each MetaNet router has an IP address on it's wan0/tap0 interface in the 192.168.0.0/16 range. This is also allocated to you.  
+* The MetaNet routers communicate over wan0/tap0, via Etud/wand.  
+* The 192.168.0.0/16 range is used for the routers to talk to each other, mainly BGP.  
+* The routers will also talk with their wan0/tap0 IP to any remote parts of the MetaNet.  
+* Accessible remote networks in the 10.0.0.0/8 range are routed over/through the 192.168.0.0/16 network.  
+* Routes to access these networks are found via BGP  
+* Running the BGP daemon zebra(8), fills the routing table to give access to networks in the 10.0.0.0/8 range  
+  
+An example of the path a routed packet will take, is:  
+  
+ +-------------+ +---------------+ +--------------+ +-------------+  
+ | eth1 | LAN | eth0 | | eth0 | LAN | eth0 |  
+ | 10.113.1.15 |---->-----| 10.113.1.254 | | 10.21.1.2 |--->---| 10.21.1.101 |  
+ +-------------+ | | | WAN | ^ | +-------------+  
+ | wan0 v | over | wan0 | |  
+ | 192.168.113.1 |--->---->---| 192.168.21.1 |  
+ +---------------+ Internet +--------------+  
+  
+ (MikeBeattie's laptop) (MikeBeattie's router) (JohnMcPherson's router) (JohnMcPherson's desktop)  
+  
+The route that BGP found for me for this is:  
+  
+ Destination Gateway Genmask Flags Metric Ref Use Iface  
+ ...  
+ 10.21.1.0 192.168.21.1 255.255.255.0 UG 0 0 0 wan0  
+  
+(or, 'ip route' incantation:  
+ 10.21.1.0/24 via 192.168.21.1 dev wan0 proto zebra  
+)  
  
 !!Configure the software 
  
 If you installed from the Sheridan Debian archive, you should check the files in /etc/wandclients/, but this step will be mostly done for you. 
@@ -92,9 +127,9 @@
  $EDITOR /usr/local/etc/etud.conf 
  
 If you're an Ethertap user (see footnotes [2] and [3]), change 'tuntap.so' to read 'ethertap.so'. 
 Set the [MTU] to 1280. 
-Set macaddr to the MAC address of one of the NIC's in your machine. eth0 is the normal one to use. If you don't know your [MAC] address, ifconfig(8) will tell you: try 
+Set macaddr to the MAC address of one of the NIC's in your machine. eth0 is the normal one to use (It doesn't really matter what you use, but it __must__ be unique) . If you don't know your [MAC] address, ifconfig(8) will tell you: try 
  /sbin/ifconfig eth0 | grep HWaddr | cut -c 39- 
  
 !wand.conf 
  
@@ -134,13 +169,14 @@
  USERCRL=yes 
  ONBOOT=no 
  GATEWAY=10.x.y.z 
  
-The GATEWAY value is your normal gateway (Same as in ifcfg-eth0). This is needed because RedHat likes overwriting your default route each time you bring up an interface. 
+The GATEWAY value is your normal gateway (Same as in ifcfg-eth0). This is needed because RedHat likes overwriting your default route each time you bring up an interface. If you leave out the GATEWAY line however, RedHat will NOT overwrite your default route.  
+  
  
 !!Starting the !MetaNet daemons 
  
-There are init scripts that work fine under Debian. They are /etc/init.d/Etud and /etc/init.d/wand. Etud needs to be started before wand does. If you installed from the Debian packages, they are at startup levels 19 and 20 in your /etc/rc?.d/ directories. 
+There are init scripts that work fine under Debian. They are /etc/init.d/Etud and /etc/init.d/wand. Etud needs to be started before wand does (or wand will crash) . If you installed from the Debian packages, they are at startup levels 19 and 20 in your /etc/rc?.d/ directories. 
  
 RedHat users don't have init scripts (yet?). For now, they can add to /etc/rc.local something like: 
  
  killall Etud wand 
@@ -154,8 +190,10 @@
  
 Make sure that your FireWall allows [UDP] traffic on ports 22222 and 44444 UDP. Also make sure that traffic to/from wan0/tap is not blocked (wan0 for TUN/TAP, tap0 for ethertap [2]). 
  
 Now, you should be able to ping 192.168.66.10 after a few seconds. This is the [MetaIX] address of Hydrogen, the current !MetaNet server. 
+  
+You should be able to see several remote hosts that exist in the 192.168.0.0/16 range, on their real world IP's, in the output of 'Etudctl -l'  
  
 !!Cleanups 
 You may wish to add a 
  killall -USR1 wand 
@@ -167,9 +205,9 @@
  
 !!Onwards and upwards. 
 Congratulations, at this point you should have WanDaemon running on your machine. 
  
-Next you have to configure and start zebra(8). 
+Next you have to configure and start zebra(8) (See ZebraConfig ). 
  
 The next step is to enable all the useful stuff: proceed on to MetaNetConfiguration. 
  
 -----