Folgendes HowTo ist für alle Nutzer von x86/x64-Nodes gedacht und beschreibt die Einrichtung von tinc auf Ubuntu Server bzw. vergleichbaren Systemen. Als Vorlage wurde das normale Router-HowTo für OpenWRT Router benutzt und die Configs entsprechend angepasst.

Software Installation

Zuerst wird batctl und tinc installiert:

$ sudo apt-get update
$ sudo apt-get install batctl tinc

tinc Einrichtung & Konfiguration

Die Einrichtung sowie die Schlüsselerstellung funktioniert ähnlich der Konfiguration für Router, einzig die config-Dateien werden hier nocheinmal aufgeführt.

/etc/tinc/ffmz/tinc.conf

AdressFamily=ipv4
name=** IP eures Nodes ohne Punkte **
Mode=switch
Compression=9
Device=/dev/net/tun
DirectOnly=yes
Forwarding=off
LocalDiscovery=no
ConnectTo= **gewünschtes Gate**
PrivateKeyFile=/etc/tinc/ffmz/rsa_key.priv


Danach muss man unter /etc/tinc/ffmz/hosts/**gewünschtes Gate** den passenden Schlüssel hinterlegen.


/etc/tinc/ffmz/tinc-up

Die Zeile IP="10.37.XX.XX" ist natürlich ensprechend nach eurer IP-Adresse zu ändern.

#!/bin/sh

modprobe batman-adv

# $INTERFACE should be ffmz
IP="10.37.XX.XX"
ifconfig $INTERFACE 0.0.0.0 netmask 255.255.0.0
ifconfig $INTERFACE mtu 1528
batctl if add $INTERFACE
ifconfig bat0 $IP netmask 255.255.0.0 up
ORIGINAL_GATEWAY=`ip route show | grep ^default | cut -d ' ' -f 2-5`
ip route add 89.238.78.70 $ORIGINAL_GATEWAY
ip route del default $ORIGINAL_GATEWAY
ip route add default via 10.37.254.1

/etc/tinc/ffmz/tinc-down

#!/bin/sh
batctl if del $INTERFACE
ifconfig $INTERFACE down
ifconfig bat0 down


Up- & Down-Skripte ausführbar machen

Die Up- und Down-Scripte müssen noch ausführbar gemacht werden:

chmod +x tinc-up tinc-down

Automatische Ausführung bei Systemstart (alternativ)

Für den automatischen Start von tinc bei Systemstart erweitern wir /etc/rc.local um folgende zwei Zeilen:

modprobe batman_adv
screen -dmS tinc tincd -D -d1 -n ffmz

Der erste Befehl läd das für B.A.T.M.A.N. benötigte Kernel-Modul. Der zweite startet eine Screen-Session, in der tinc läuft (kann auch als Daemon gestartet werden, aber so ist es möglich bei Problemen die Screen-Session zu öffnen und das Log zu durchstöbern).

Soll tinc als Daemon komplett im Hintergrund laufen wird es wiefolgt gestartet:

tincd -n ffmz