Howto/Tinc-Node auf x86
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 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.
Todo: Diese Startscripte sind schlimme Bash-Wüste (a.k.a. Krepelscheiße). Vereinfachen & Anpassen.
Solltest du zu den Helden gehören, die ein Todo gelöst haben, darfst du diesen Hinweis löschen.
/etc/tinc/ffmz/tinc-up
Die Zeile IP="10.37.XX.XX" ist natürlich ensprechend nach eurer IP-Adresse zu ändern.
#!/bin/sh # $INTERFACE should be ffmz IP="10.37.XX.XX" ifconfig $INTERFACE inet 0.0.0.0 netmask 255.0.0.0 echo "> assigned inet adr 0.0.0.0 to $INTERFACE..." ifconfig $INTERFACE mtu 1528 echo "> set MTU of $INTERFACE to 1528..." batctl if add $INTERFACE echo "> added $INTERFACE to batctl..." ifconfig bat0 up echo "> bat0 up" ifconfig bat0 $IP echo "> assigned inet adr $IP to bat0..." ORIGINAL_GATEWAY=`ip route show | grep ^default | cut -d ' ' -f 2-5` ip route add 84.201.31.106 $ORIGINAL_GATEWAY ip route del default $ORIGINAL_GATEWAY ip route add default via 10.37.0.1 echo "> added routes..." echo "> > > initialization done < < <"
/etc/tinc/ffmz/tinc-down
#!/bin/sh batctl if del ffmz ifconfig ffmz 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