OLSR unter GNU/Linux

firewall | linux | mobil | mobile node | olsr | olsrd | rpm

Installation

Download des RPM-Paketes vom http://olsr.org/index.cgi?action=download auf einer RPM-basierenden Distribution (Fedora, CentOS, OpenSuSE und andere). Alternativ kann auch mit den Source-Tarball gearbeitet werden.

# rpm -ihv olsrd-0.5.3-1.i386.rpm

oder

# rpm -ihv http://olsr.org/releases/0.5/packages/olsrd-0.5.3-1.i386.rpm

(falls das Paket nicht vorher heruntergeladen werden will).

Konfiguration der Netzwerkkarte

IP-Adresse und Subnetzmaske entsprechend den Vorgaben eingeben und als statisch definieren. Die Netzwerkkarte danach aktivieren. Dies kann in der Konsole oder je nach Distribtion auch graphisch erfolgen.

Editieren von /etc/olsrd.conf

Das Interface muss an der entsprechenenden Stelle, Zeile 201, angegeben werden. Beispielsweise wlan0 (bei Prism-basierenden Karten), ath0 (bei Atheros-basierenden Karten) oder eth1 (bei Hermes-Basierenden Karten). Die Angaben können bei durch die Eingabe von iwconfig in der Konsole in Erfahrung gebracht werden.

# iwconfig
eth0      no wireless extensions.

eth1      IEEE 802.11-DS  ESSID:"www.openwireless.net"  Nickname:"mobile05.bernewireless.net"
          Mode:Managed  Frequency:2.457GHz  Access Point: XX:XX:XX:XX:XX:XX  
          Bit Rate=11Mb/s   Tx-Power=15 dBm   Sensitivity:1/3  
          Retry limit:4   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality:0/92  Signal level:134/153  Noise level:134/153
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Wenn Internet-Zugang vorhanden ist, sollte diese Zeile auskommentiert bleiben.

Hna4
{
0.0.0.0 0.0.0.0
}

Starten

 # service olsrd start

oder

 # /sbin/service olsrd start

(falls nicht alle Pfade in die /.bash_profile eingetragen sind)

Sollte der Dienst bei jedem Neustart der Maschine gestartet werden, biete sich an, dass der automatische Start aktiviert wird. Wie alle anderen Dienste kann dies durch folgendes Kommando geschehen, vorausgesetzt, dass die Konfiguration in Ordnung ist.

 # chkconfig olsrd on

Stoppen

 # service olsrd stop

oder

 # /sbin/service olsrd stop

Alternative Installations-Methoden

Neben der Verwendung der rpm-Pakete können die Installation auch aus den Sourcen oder per CVS erfolgen. Dies ist jedoch nur für fortgeschrittenere Anwender empfehlenswert.

Firewall

Damit die Kommunikation mit dem Mesh-Netzwerk fuktioniert, müssen die Firewall-Einstellungen angepasst werden. olsrd braucht den Port UDP 698, sonst können keine Routen hergestellt werden.

Sonstiges

mit route -n können die anderen Knoten angezeigt werden, wenn der olsrd-Däemon gestartet ist. Der olsr-Däemon liefert durch olsrd ebenfalls Informationen.

Alternative Versionen

Welche Distribution?

rpm ist das Paketformat von diversen Distributionen, die untereinander nicht unbedingt kompatibel sind.
Es wäre also durchaus angebracht, anzugeben, für welche Distribution das Paket gedacht/getestet ist.

Ergänzung

Es ist für alle RPM-basierenden Distributionen gedacht, welche sich an die Vorgaben der LSB halten, da es generisch zu sein scheint. Ich habe das Paket unter RH Linux 9 (nur ältere Versionen) und diversen Fedora-Version installiert und es funktionierte. Garantieren kann ich es allerdings nicht.

Wenn es mit dem RPM-Paket nicht funktioniert, bleibt ja immer noch der Weg über das Selberbauen des Paketes aus den Sourcen.