User Tools

Site Tools


funkinseldebian

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
funkinseldebian [2017/08/25 22:51] MathiasMayrhoferfunkinseldebian [2026/02/01 02:26] (current) – ↷ Links adapted because of a move operation 85.208.96.202
Line 1: Line 1:
 +<<[[:TableOfContents|TableOfContents]]>> 
 +
 +
 +
 +====== Funkinsel Setup auf Debian ======
 +:!: Dieses Howto beschreibt das Funkinsel Setup für Debian. Howtos für andere Firmware Images können auf der Seite [[:FunkInsel|FunkInsel]] gefunden werden. 
 +
 +
 +
 +===== Installation =====
 +
 +
 +==== OpenVPN ====
 +Zunächst muss OpenVPN installiert werden: 
 +
 +
 +
 +<file># aptitude install openvpn
 +</file>
 +In dem Verzeichnis ///etc/openvpn// eine Konfigurationsdatei anlegen. 
 +
 +<file># cd /etc/openvpn
 +# vi ff-tunnel.conf
 +</file>
 +Hier eine Beispielkonfiguration: 
 +
 +<file>client
 +
 +dev tap0
 +
 +proto udp
 +remote tun.graz.funkfeuer.at 1194
 +resolv-retry infinite
 +nobind
 +
 +persist-key
 +persist-tun
 +
 +daemon ovpn-ff-tunnel
 +cd /etc/openvpn
 +chroot /etc/openvpn
 +user nobody
 +group nogroup
 +
 +ca "ca.crt"
 +cert "<name>.crt"
 +key "<name>.key"
 +
 +ns-cert-type server
 +
 +cipher none
 +
 +verb 3
 +</file>
 +Diese Konfiguration geht davon aus das die Zertifikate mit denen sich der Router authentifiziert im gleichen Verzeichnis wie die Konfiguration liegt. Sollten diese woanders liegen kann dass ebenfalls mit relativen oder absoluten Pfaden angegeben werden. 
 +
 +OpenVPN sollte sich nun mit folgenden Kommando starten lassen: 
 +
 +
 +
 +<file># /etc/init.d/openvpn start
 +</file>
 +Sollte alles funktionieren wird der Tunnel aufgebaut und es gibt ein zusätzliches Netzwerk Intefaces namens //tap0//.  
 +
 +
 +
 +==== OLSR ====
 +Die folgende Konfiguration für OLSRd muss in die Datei ///etc/olsrd/olsrd.conf// kopiert werden. Wichtig dabei sind die beiden letzten Zeilen des zweiten Absatzes. Diese werden benötigt um OLSRd mit Policy Routing zu verwenden. 
 +
 +
 +
 +<file>DebugLevel 0
 +IpVersion 4
 +AllowNoInt yes
 +Pollrate 0.025
 +TcRedundancy 2
 +MprCoverage 7
 +LinkQualityFishEye 1
 +LinkQualityWinSize 100
 +LinkQualityDijkstraLimit 0 10.0
 +LinkQualityLevel 2
 +UseHysteresis no
 +FIBMetric "approx"
 +ClearScreen yes
 +LinkQualityAging 0.1
 +LinkQualityAlgorithm "etx_ff"
 +
 +RtTable 111
 +RtTableDefault 112
 +
 +InterfaceDefaults
 +{
 +        HelloInterval 3.0
 +        HelloValidityTime 125.0
 +        TcInterval 2.0
 +        TcValidityTime 500.0
 +        MidInterval 25.0
 +        MidValidityTime 500.0
 +        HnaInterval 10.0
 +        HnaValidityTime 125.0
 +}
 +
 +Interface "tap0"
 +{
 +        LinkQualityMult 10.12.11.1 0.2
 +}
 +</file>
 +Diese Konfiguration geht davon aus das das Interface //eth1// zb. eine WLan Karte ist die im Funkfeuer Netz hängt. Mit Hilfe der Zeile //LinkQualityMult ...// lässt sich die ETX für den Tunnel künstlich verschlechtern. Dies kann Sinn machen wenn der Tunnel als reines Backup gedacht ist und nur dann zum Zuge kommen soll wenn der Funklink ausfällt. Das obige Beispiel würde den ETX Wert von normal //1.0// auf //5.0// erhöhen.  
 +
 +
 +
 +===== Policy Routing =====
 +Um das Policy Routing fertig zu konfigurieren brauchen wir noch einen zusätzliches Script der die restlichen Routingeinträge richtig setzt.  
 +
 +
 +
 +<file># vi /etc/network/policyrouting.sh
 +</file>
 +folgendes reinkopieren: 
 +
 +
 +
 +<file>#!sh (-)
 +#! /bin/sh
 +#
 +# Policy-Routing Script
 +
 +## zu konfigurieren
 +OLSR_IFACES="tap0 eth1"
 +
 +case "$1" in
 +  up)
 +        ip rule add lookup olsr pref 20000
 +        ip rule add lookup main pref 30000
 +        ip rule del pref 32766
 +
 +        PREF=32000
 +        for iface in $OLSR_IFACES; do
 +                ip rule add iif $iface pref $PREF lookup olsr-default
 +                PREF=$((PREF+1))
 +        done
 +    ;;
 +  down)
 +        PREF=32000
 +        for iface in $OLSR_IFACES; do
 +                ip rule del iif $iface pref $PREF lookup olsr-default
 +                PREF=$((PREF+1))
 +        done
 +
 +        ip rule add lookup main pref 32766
 +        ip rule del pref 30000
 +        ip rule del pref 20000
 +    ;;
 +  *)
 +    echo "Usage: $0 {up|down}"
 +    exit 1
 +    ;;
 +esac
 +
 +exit 0
 +</file>
 +Danach muss das Script noch ausführbar markiert werden und enabled werden. 
 +
 +
 +
 +<file># chmod +x /etc/network/policyrouting.sh
 +</file>
 +Damit dieses Script funktioniert müssen die Routing Tabellen von olsr noch benannt werden: 
 +
 +
 +
 +<file># vi /etc/iproute2/rt_tables 
 +</file>
 +Am Ende folgendes reinkopieren: 
 +
 +
 +
 +<file>111     olsr
 +112     olsr-default
 +</file>
 +Zuletzt müssen folgenden Änderungen bei der Interface Konfiguration gemacht werden: 
 +
 +
 +
 +<file># vi /etc/network/interfaces
 +</file>
 +Bei dem Interface das mit dem Internet verbunden ist darf auf keinen Fall ein Default Gateway gesetzt sein. Es muss also die Zeile: 
 +
 +
 +
 +<file>  gateway 192.2.0.1
 +</file>
 +gegen untenstehendes ersetzt werden (natürlich muss die Adresse 192.2.0.1 gegen die richtige Gateway Adresse ausgebessert werden). 
 +
 +
 +
 +<file>  up ip route add default via 192.2.0.1 table default
 +  down ip route del default via 192.2.0.1 table default
 +</file>
 +Nun noch bei dem Interface für Funkfeuer (in unserem Beispiel eth1) noch folgedes einfügen: 
 +
 +
 +
 +<file>  up /etc/network/policyrouting.sh up
 +  down /etc/network/policyrouting.sh down
 +</file>
 +Auch hier darf es keine Default Gateway Konfiguration geben. 
 +
 +Nach einem Reboot sollte nun der Tunnel aufgebaut werden und das Policy Routing richtig konfiguriert sein. 
 +
 +
 +
 +
 + 
 +
 +
 +  * [[archiv:categoryhowto|CategoryHowto]] 
 +
  
funkinseldebian.txt · Last modified: by 85.208.96.202

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki