olsrd for Debian ---------------- Configuration ------------- Before running olsrd you must edit the default configuration file /etc/olsrd/olsrd.conf (the location differs in the debian package from the upstream default /etc/olsrd.conf) and configure at least on which interfaces olsrd is supposed to act on. If you want, you can run olsrd via init.d by editing /etc/default/olsrd - the default configuration is to not start olsrd on boot. It needs root privileges to run olsrd. To debug olsrd you can start it with "/etc/init.d/olsrd start debug". You also need to configure your network interface. For example, for freifunk.hamburg.net the following settings are used: ifconfig eth1 $YOUR_IP broadcast 10.127.255.255 iwconfig eth1 essid hamburg.freifunk.net channel 10 mode ad-hoc enc off Options in the olsrd config file can also be overridden by command line options or in /etc/default/olsrd. See the manual pages olsrd(8) and olsrd.conf(5) for details. If debug level is set to 0 olsrd will detach and run in the background (this is the default in the debian package), if not it will keep running in your shell. Plugins ------- The following plugins are included in the olsrd-plugins package and are explained in detail in /usr/share/doc/olsrd-plugins: - httpinfo - tiny webserver for information purposes - dyn_gw - dynamically announce uplinks - dot_draw - generates output (over a TCP socket) in the dot format - secure - secure OLSR routing with a shared key - nameservice - announce hostnames and dns servers The following plugins are not included in the olsrd-plugins binary package: - tas - (not at all) tiny application server, no useful apps exist - powerinfo - displays /proc/apm on 127.0.0.1:8888 - pgraph - obsoleted by httpinfo and dot-draw - mini - minimal example plugin, useful as a howto for writing plugins If you need them, you can easily build them from the debian source package yourself: define which (additional) plugins you want in debian/rules, and rebuild the package. And if you tell me a good reason why they should be included in the binary package, I'll be glad to add them :) About this package ------------------ This is actually the unik-olsrd implementation, but because it's the only commonly used one (the other two, nrl- and inria-olsrd are mostly used where they were written) and the one found on www.olsr.org, so I decided to call the package olsrd. For better performance in large mesh clouds I included the olsrd-patches from the OpenWRT project, which can be found at https://svn.openwrt.org/openwrt/packages/net/olsrd/patches - patched and unpatched olsrd implementations work together well. I do not plan to include patches from other sources (for example there are some available from other freifunk projects in germany) except for security or other grave reasons. My reasons are: 1. as openWRT is widely used, the patches are tested well and can be considered stable. 2. Patch integration should be done by those very familiar with the code. 3. It gives the authors of the other patches some initiative to get their patches accepted upstream (or in OpenWrt). The config file shipped in /etc/olsrd/olsrd.conf is based on the one from http://olsrexperiment.de/sven-ola/nylon/packages/olsrd/files/olsrd.conf-sven-ola and has been successfully used in the freifunk networks in Berlin and Hamburg (Germany). I also decided to not package the plugins as libraries, because no one else is going to link against these plugins, and so shlibs files would be useless anyway. Last and least I use debhelper compat=4 for easy rebuilds on sarge. -- Holger Levsen Sat, 9 Dec 2006 16:45:36 +0100