Repository : ssh://git@open-mesh.org/doc
On branches: backup-redmine/2017-07-13,master
commit 1117547c10a0a90914d4046fb68c3a7f7afb691c Author: Marek Lindner mareklindner@neomailbox.ch Date: Sun Nov 9 18:20:46 2008 +0000
doc: open-mesh/FAQ
1117547c10a0a90914d4046fb68c3a7f7afb691c open-mesh/FAQ.textile | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+)
diff --git a/open-mesh/FAQ.textile b/open-mesh/FAQ.textile new file mode 100644 index 00000000..1458da63 --- /dev/null +++ b/open-mesh/FAQ.textile @@ -0,0 +1,44 @@ +== If you are missing a question/answer (quite likely) please use the B.A.T.M.A.N. mailing list to trigger us. == + + +'''Understanding the version and compatibility number''' + +The version number (defined as SOURCE_VERSION in the source)is the one displayed when launching the batmand in debug mode. It indicates the state of your code. + +The compatibility number (defined as COMPAT_VERSION in the source) is transmitted with every broadcasted OGM to guide other batmand instances receiving this OGM whith the decision about incompatible protocol versions. + + +'''Why are multiple interfaces problematic?''' + +The internet (and most network technology today) was designed with the idea that every interface on a given system has a unique broadcast adress. When a packet enters a system the kernel has to decide where it should be routed to. While using the same broadcast adresses on different interfaces you provoke an undefined situation as this should not happen (by design) and the result is unpredictable. In that case the Linux kernel will send all your packages to the first interface (in the routing table) with that broadcast address. + +A solution to that problem is the usage of the Linux kernel option "BINDTODEVICE" which allows to specify an outgoing interface for a packet. Unfortunatly this option is a Linux-only feature (as far as we know). Therefore you won't be able to use multiple interfaces with the same broadcast addresses on other operation systems than Linux. + + +'''Log larger amounts of debug messages''' + +First, install netcat on your device. On a OpenWRT based distro you can try this (packet version may vary): + +$ ipkg install http://www.linuxops.net/ipkg/netcat_0.7.1_mipsel.ipk + +Then start batmand and pipe the output into netcat: + +$ batmand -d 4 <your_interfaces> | nc -l -p <any_unused_port> + +Finally start the netcat client on your logging server and save the output: + +$ nc <IP_of_your_device> <your_unused_port_from_step_2> > batman.log + +If you use a firewall, NAT or any other problematic network setup you can swap the netcat server position. Beware: Your netcat server has to be started before you start your netcat client. + + +'''Update many Openwrt based systems''' + + 1. Download the update script: [http://downloads.open-mesh.org/batman/useful-scripts-and-tools/update_batman... update script] + 2. Edit the the variables in the configuration section of the script to match your needs. + 3. Run the script. ;-) + + +Note: The HOSTS_TO_UPDATE variable in the script expects SSH host names which must be configured in your ~/.ssh/config file. + +Tip: Use key based access to authenticate your login request on your machines to avoid typing your passwords too often. If you use encrypted keys you can enable the ssh-agent to manage your passwords.