<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wirelessafrica.meraka.org.za/wiki/index.php?action=history&amp;feed=atom&amp;title=Title%3AHigh_Performance_Node_-_Setup</id>
	<title>Title:High Performance Node - Setup - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wirelessafrica.meraka.org.za/wiki/index.php?action=history&amp;feed=atom&amp;title=Title%3AHigh_Performance_Node_-_Setup"/>
	<link rel="alternate" type="text/html" href="http://wirelessafrica.meraka.org.za/wiki/index.php?title=Title:High_Performance_Node_-_Setup&amp;action=history"/>
	<updated>2026-04-05T17:22:10Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.7</generator>
	<entry>
		<id>http://wirelessafrica.meraka.org.za/wiki/index.php?title=Title:High_Performance_Node_-_Setup&amp;diff=3795&amp;oldid=prev</id>
		<title>Tom: Removing all content from page</title>
		<link rel="alternate" type="text/html" href="http://wirelessafrica.meraka.org.za/wiki/index.php?title=Title:High_Performance_Node_-_Setup&amp;diff=3795&amp;oldid=prev"/>
		<updated>2008-08-01T13:51:29Z</updated>

		<summary type="html">&lt;p&gt;Removing all content from page&lt;/p&gt;
&lt;a href=&quot;http://wirelessafrica.meraka.org.za/wiki/index.php?title=Title:High_Performance_Node_-_Setup&amp;amp;diff=3795&amp;amp;oldid=3793&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Tom</name></author>
	</entry>
	<entry>
		<id>http://wirelessafrica.meraka.org.za/wiki/index.php?title=Title:High_Performance_Node_-_Setup&amp;diff=3793&amp;oldid=prev</id>
		<title>Tom: New page: This document is specifically for the Bokkie routers at Ndlovu, but the instructions could be adapted for other sites. It&#039;s meant for someone with networking experience but almost no Unix ...</title>
		<link rel="alternate" type="text/html" href="http://wirelessafrica.meraka.org.za/wiki/index.php?title=Title:High_Performance_Node_-_Setup&amp;diff=3793&amp;oldid=prev"/>
		<updated>2008-08-01T13:50:28Z</updated>

		<summary type="html">&lt;p&gt;New page: This document is specifically for the Bokkie routers at Ndlovu, but the instructions could be adapted for other sites. It&amp;#039;s meant for someone with networking experience but almost no Unix ...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This document is specifically for the Bokkie routers at Ndlovu, but the instructions could be adapted for other sites. It&amp;#039;s meant for someone with networking experience but almost no Unix or Linux-specific knowledge.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
This is how you would configure a new node to be added to the mesh.&lt;br /&gt;
Note, however, that many of the values here would have to change, and&lt;br /&gt;
they can&amp;#039;t just be arbitrary! It depends on what other nodes this one is&lt;br /&gt;
going to point to, so that channels and IP addresses don&amp;#039;t interfere.&lt;br /&gt;
We&amp;#039;ll make an assumption about these values and then go from there; it&amp;#039;s&lt;br /&gt;
a good idea to consult with Johann or at least take a hard look at the&lt;br /&gt;
physical layout of the nodes to make sure that channels aren&amp;#039;t&lt;br /&gt;
interfering and you&amp;#039;re using a proper IP range. I&amp;#039;m attaching the&lt;br /&gt;
version of the layout I have, but as you know it&amp;#039;s out of date.&lt;br /&gt;
&lt;br /&gt;
Lets assume this is node number 12. So all it&amp;#039;s IP4 addresses are going&lt;br /&gt;
to end with 12.&lt;br /&gt;
&lt;br /&gt;
Config instructions:&lt;br /&gt;
&lt;br /&gt;
Plug into the Ethernet port of the node with your laptop and get a DHCP&lt;br /&gt;
lease. &lt;br /&gt;
&lt;br /&gt;
Look at your default gateway after you get a lease; this is the IP&lt;br /&gt;
address of the node. &lt;br /&gt;
&lt;br /&gt;
SSH to default gateway.&lt;br /&gt;
&lt;br /&gt;
You can either use Putty on Windows or the following command on *nix&lt;br /&gt;
[note: the &amp;quot;$&amp;quot; indicates that you can run this as a normal user, it&lt;br /&gt;
represents a command prompt; you actually type the part coming&lt;br /&gt;
afterwards. This is a standard convention.]&lt;br /&gt;
&lt;br /&gt;
$ ssh coin@10.36.145.1&lt;br /&gt;
&lt;br /&gt;
where 10.36.145.1 is the IP address of the router; it will be different&lt;br /&gt;
on each one. Enter the password when prompted.&lt;br /&gt;
&lt;br /&gt;
Once you&amp;#039;re logged into the node you should get a shell. Make yourself&lt;br /&gt;
the root user with the command:&lt;br /&gt;
&lt;br /&gt;
$ su&lt;br /&gt;
&lt;br /&gt;
It shouldn&amp;#039;t ask you for a password. Now you&amp;#039;re root, and you can&lt;br /&gt;
execute commands that start with a &amp;quot;#&amp;quot; (again, don&amp;#039;t actually type the&lt;br /&gt;
&amp;quot;#&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
First, you need to mount the entire filesystem read/write (it&amp;#039;s&lt;br /&gt;
read-only by default).&lt;br /&gt;
&lt;br /&gt;
# mount -u -w /&lt;br /&gt;
&lt;br /&gt;
Next, edit that crucial file:&lt;br /&gt;
&lt;br /&gt;
# vi /conf/default/etc/rc.conf.local&lt;br /&gt;
&lt;br /&gt;
This will bring up VI, in command mode, editing this file (which may not&lt;br /&gt;
exist yet). Press &amp;quot;i&amp;quot; to go into insert mode, then add:&lt;br /&gt;
&lt;br /&gt;
hostname=&amp;quot;Ndlovu&amp;quot;&lt;br /&gt;
olsrd4_enable=&amp;quot;YES&amp;quot;&lt;br /&gt;
ifconfig_ath0=&amp;quot;10.0.10.12/24 mode 11a channel 136 mediaopt adhoc ssid&lt;br /&gt;
ptabb bssid 22:b7:1a:b8:9c:7f&amp;quot;&lt;br /&gt;
ifconfig_ath1=&amp;quot;10.0.50.12/24 mode 11a channel 128 mediaopt adhoc ssid&lt;br /&gt;
ptabb&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Note that these values vary per-node! So change the hostname to&lt;br /&gt;
something reasonable, but make sure that the IP addresses and channels&lt;br /&gt;
are correct for the place you&amp;#039;re putting the node. Note that each of&lt;br /&gt;
thoese something=&amp;quot;something else&amp;quot; lines is one line, but it in some&lt;br /&gt;
views it can wrap.&lt;br /&gt;
&lt;br /&gt;
Save and quit VI by going into command mode (hit ESC while in insert&lt;br /&gt;
mode), then typing &amp;quot;:wq&amp;quot; and pressing return. Once out of VI, reboot:&lt;br /&gt;
&lt;br /&gt;
# shutdown -r now&lt;br /&gt;
&lt;br /&gt;
You don&amp;#039;t need to do anything in olsrd4.conf, because&lt;br /&gt;
the /conf/default/rc.early script on the Ndlovu routers will generate&lt;br /&gt;
the olsrd4.conf file, with all it&amp;#039;s HNA entries, if you enable &lt;br /&gt;
olsrd4 in rc.conf.local. After the reboot you can do:&lt;br /&gt;
&lt;br /&gt;
$ ps -ax | grep olsrd&lt;br /&gt;
&lt;br /&gt;
And look for lines that list &amp;quot;olsrd4&amp;quot; to ensure that olsrd4 is running&lt;br /&gt;
(i.e. OLSR is working for IPv4).&lt;br /&gt;
&lt;br /&gt;
Note that some of the non-deployed nodes may not have the right rc.early&lt;br /&gt;
script. If that&amp;#039;s the the case, you can copy the /conf/default/rc.early&lt;br /&gt;
script from anyone the other routers, or the one from the tar file&lt;br /&gt;
attached to this email. To do that, you want to either use an SFTP&lt;br /&gt;
client on Windows to copy the rc.early file to /conf/default/rc.early&lt;br /&gt;
(after mounting the filesystem read-write as above!), or from a *nix&lt;br /&gt;
machine you can run:&lt;br /&gt;
&lt;br /&gt;
$ scp /path/on/local/computer/to/rc.early coin@10.36.145.1:&lt;br /&gt;
&lt;br /&gt;
Where 10.36.145.1 is again the IP of the node, your default gateway.&lt;br /&gt;
Then log into the box, run:&lt;br /&gt;
&lt;br /&gt;
$ ls&lt;br /&gt;
&lt;br /&gt;
To make sure that the file is there (in your current directory, which&lt;br /&gt;
should be /root). Then you can do this ﻿(note again that anything with a&lt;br /&gt;
&amp;quot;#&amp;quot; in front of it you need to first be root to do):&lt;br /&gt;
&lt;br /&gt;
# cp rc.early /conf/default/etc/rc.early&lt;br /&gt;
&lt;br /&gt;
Reboot, as above, and you should be good. Check again for olsrd4.&lt;br /&gt;
&lt;br /&gt;
Debugging:&lt;br /&gt;
&lt;br /&gt;
Login to router using SSH as above.&lt;br /&gt;
&lt;br /&gt;
Do a &amp;quot;list sta&amp;quot; to see if you can see the other nodes. Should be&lt;br /&gt;
something like this:&lt;br /&gt;
&lt;br /&gt;
# ifconfig ath0 list sta&lt;br /&gt;
&lt;br /&gt;
ADDR               AID CHAN RATE RSSI IDLE  TXSEQ  RXSEQ CAPS FLAG&lt;br /&gt;
00:80:48:50:9a:0b    0  136  18M   38    0  29660  61984 I    A&lt;br /&gt;
00:80:48:50:9e:c1    0  136  48M   43    0  26851   7568 I    A&lt;br /&gt;
&lt;br /&gt;
OR, ﻿if you want to fine tune the alignment, this is a continuous&lt;br /&gt;
printout of the above:&lt;br /&gt;
&lt;br /&gt;
# rssi -i ath0 &lt;br /&gt;
&lt;br /&gt;
Do a ping Ndlovu and other sites to test connectivity.&lt;br /&gt;
&lt;br /&gt;
$ ping 10.0.10.4&lt;br /&gt;
&lt;br /&gt;
Some general hints:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To inspect a node&amp;#039;s routing table in FreeBSD:&lt;br /&gt;
&lt;br /&gt;
# netstat -r&lt;br /&gt;
&lt;br /&gt;
To make it more readable, print only IPv4 addresses:&lt;br /&gt;
&lt;br /&gt;
# netstat -r -f inet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To change the default gateway of a node to 1.2.3.4:&lt;br /&gt;
&lt;br /&gt;
Temporarily:&lt;br /&gt;
&lt;br /&gt;
# route add default 1.2.3.4&lt;br /&gt;
&lt;br /&gt;
Permanently:&lt;br /&gt;
&lt;br /&gt;
Edit /conf/default/etc/rc.conf as root, and at the end of the file add&lt;br /&gt;
the line:&lt;br /&gt;
&lt;br /&gt;
defaultrouter=&amp;quot;1.2.3.4&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To get a list of network interfaces and their IP addresses, etc:&lt;br /&gt;
&lt;br /&gt;
$ ifconfig&lt;br /&gt;
&lt;br /&gt;
On your routers, ones that start npe are Ethernet, ones that start ath&lt;br /&gt;
are wireless.&lt;br /&gt;
&lt;br /&gt;
To look at *all* traffic going through a particular interface:&lt;br /&gt;
&lt;br /&gt;
# tcpdump -i npe0&lt;br /&gt;
&lt;br /&gt;
To make this more readable, search for only certain lines. To filter any&lt;br /&gt;
command&amp;#039;s output to only lines that include a specific text, add&lt;br /&gt;
&lt;br /&gt;
 | grep &amp;quot;search&amp;quot;&lt;br /&gt;
&lt;br /&gt;
to the end of it. For example:&lt;br /&gt;
&lt;br /&gt;
# tcpdump -i npe0 | grep &amp;quot;ICMP&amp;quot;&lt;br /&gt;
&lt;br /&gt;
dumps all traffic on the npe0 interface, but only shows lines that&lt;br /&gt;
include &amp;quot;ICMP&amp;quot; (eg Ping traffic). Note that the search is&lt;br /&gt;
case-sensitive! To make it not so, use `grep -i &amp;quot;search&amp;quot;` instead.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To simply view a file:&lt;br /&gt;
&lt;br /&gt;
$ less /path/to/file.txt&lt;br /&gt;
&lt;br /&gt;
To navigate use arrow keys, to exit this press &amp;quot;q&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To quit any general command, particularly continuous ones like ping or&lt;br /&gt;
tcpdump, press Control+C.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
How to use that beast of a program, VI: &lt;br /&gt;
&lt;br /&gt;
http://www.cs.colostate.edu/helpdocs/vi.html&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tom</name></author>
	</entry>
</feed>