Howto/Tinc-Node auf x86

Aus Freifunk MWU Wiki
< Howto
Version vom 5. Dezember 2013, 16:46 Uhr von Spky (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „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 Vorl…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

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