User Tools

Site Tools


funkinseldebian

Differences

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

Link to this comparison view

Next revision
Previous revision
funkinseldebian [2008/10/21 03:25] ChristianPointnerfunkinseldebian [2017/08/25 22:51] (current) MathiasMayrhofer
Line 1: Line 1:
-/* UndefinedMacro: TableOfContents(None) */ +<<[[:TableOfContents|TableOfContents]]>> 
  
  
  
 ====== Funkinsel Setup auf Debian ====== ====== Funkinsel Setup auf Debian ======
-Dieses Howto beschreibt das Funkinselsetup für Debian. Howtos für andere Firmware Images können auf [[:FunkInsel|FunkInsel]] gefunden werden. +:!: Dieses Howto beschreibt das Funkinsel Setup für Debian. Howtos für andere Firmware Images können auf der Seite [[:FunkInsel|FunkInsel]] gefunden werden. 
  
  
Line 30: Line 30:
  
 proto udp proto udp
-remote tunnel.ffgraz.net 1194+remote tun.graz.funkfeuer.at 1194
 resolv-retry infinite resolv-retry infinite
 nobind nobind
Line 46: Line 46:
 cert "<name>.crt" cert "<name>.crt"
 key "<name>.key" key "<name>.key"
 +
 +ns-cert-type server
  
 cipher none cipher none
Line 59: Line 61:
 <file># /etc/init.d/openvpn start <file># /etc/init.d/openvpn start
 </file> </file>
-Sollte alles funktionieren wird der Tunnel aufgebaut und es gibt ein zusätzliches Netzwerk-Intefaces names //tap0//.  +Sollte alles funktionieren wird der Tunnel aufgebaut und es gibt ein zusätzliches Netzwerk Intefaces namens //tap0//.  
  
  
  
 ==== OLSR ==== ==== OLSR ====
-Die folgende Konfiguration für OLSR 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 OLSR mit Policy Routing zu verwenden. +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. 
  
  
Line 79: Line 81:
 LinkQualityLevel 2 LinkQualityLevel 2
 UseHysteresis no UseHysteresis no
-FIBMetric "flat"+FIBMetric "approx"
 ClearScreen yes ClearScreen yes
-Willingness 3 
 LinkQualityAging 0.1 LinkQualityAging 0.1
-LinkQualityAlgorithm "etx_fpm"+LinkQualityAlgorithm "etx_ff"
  
 RtTable 111 RtTable 111
 RtTableDefault 112 RtTableDefault 112
  
-Interface "eth1"+InterfaceDefaults
 { {
-        HelloInterval 5.0+        HelloInterval 3.0
         HelloValidityTime 125.0         HelloValidityTime 125.0
         TcInterval 2.0         TcInterval 2.0
Line 96: Line 97:
         MidInterval 25.0         MidInterval 25.0
         MidValidityTime 500.0         MidValidityTime 500.0
-        HnaInterval 25.0 +        HnaInterval 10.0 
-        HnaValidityTime 500.0+        HnaValidityTime 125.0
 } }
  
 Interface "tap0" Interface "tap0"
 { {
-        HelloInterval 5.+        LinkQualityMult 10.12.11.0.2
-        HelloValidityTime 125.+
-        TcInterval 2.0 +
-        TcValidityTime 500.+
-        MidInterval 25.0 +
-        MidValidityTime 500.0 +
-        HnaInterval 25.0 +
-        HnaValidityTime 500.0+
 } }
 </file> </file>
-Diese Konfiguration geht davon aus das das Interface //eth1// zb. eine WLan Karte ist die im Funkfeuer Netz hängt. +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 ===== ===== Policy Routing =====
-Um das Policy Routing fertig zu konfigurieren brauchen wir noch einen zusätzlichen Initscript der die restlichen Routingeinträge richtig setzt. Ausserdem ist es wichtig das in der Datei ///etc/network/interfaces// kein gateway konfiguriert ist. Es darf also bei keiner Interaface Konfiguration eine option gateway existieren. +Um das Policy Routing fertig zu konfigurieren brauchen wir noch einen zusätzliches Script der die restlichen Routingeinträge richtig setzt.  
  
  
  
-<file># vi /etc/init.d/network_additional+<file># vi /etc/network/policyrouting.sh
 </file> </file>
 folgendes reinkopieren:  folgendes reinkopieren: 
Line 127: Line 121:
  
  
-<file>#! /bin/sh+<file>#!sh (-) 
 +#! /bin/sh
 # #
 +# Policy-Routing Script
 +
 +## zu konfigurieren
 +OLSR_IFACES="tap0 eth1"
  
 case "$1" in case "$1" in
-  start) +  up
-        ip route add default via <gateway ip> table default +        ip rule add lookup olsr pref 20000 
-        ip rule add lookup main +        ip rule add lookup main pref 30000
-        ip rule add lookup 111+
         ip rule del pref 32766         ip rule del pref 32766
-        ip rule add pref 32766 fwmark 1 lookup 112 
  
-        iptables -t mangle -A PREROUTING -i eth1 -j MARK --set-mark +        PREF=32000 
-        iptables -t mangle -A PREROUTING -i tap0 -j MARK --set-mark 1+        for iface in $OLSR_IFACES; do 
 +                ip rule add iif $iface pref $PREF lookup olsr-default 
 +                PREF=$((PREF+1)) 
 +        done
     ;;     ;;
-  stop+  down
-        ip rule del pref 32766 +        PREF=32000 
-        ip rule add pref 32766 lookup main +        for iface in $OLSR_IFACES; do 
-        ip rule del lookup main +                ip rule del iif $iface pref $PREF lookup olsr-default 
-        ip rule del lookup 111 +                PREF=$((PREF+1)) 
-        ip route del default via <gateway ip> table default+        done
  
-        iptables -t mangle -D PREROUTING -i eth1 -j MARK --set-mark 1 +        ip rule add lookup main pref 32766 
-        iptables -t mangle -D PREROUTING -i tap0 -j MARK --set-mark 1+        ip rule del pref 30000 
 +        ip rule del pref 20000 
 +    ;;
   *)   *)
-    echo "Usage: /etc/init.d/route {start|stop}"+    echo "Usage: $0 {up|down}"
     exit 1     exit 1
     ;;     ;;
Line 157: Line 159:
  
 exit 0 exit 0
- 
 </file> </file>
 Danach muss das Script noch ausführbar markiert werden und enabled werden.  Danach muss das Script noch ausführbar markiert werden und enabled werden. 
Line 163: Line 164:
  
  
-<file># chmod +x /etc/init.d/network_additional +<file># chmod +x /etc/network/policyrouting.sh
-# update-rc.d network_additional defaults 20+
 </file> </file>
-Nach einem Reboot sollte der Tunnel aufgebaut werden und die Funkinsel somit aktiv sein. +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.  
 + 
 + 
 + 
 + 
 +  
  
 +  * [[:CategoryHowto|CategoryHowto]] 
  
  
funkinseldebian.1224559540.txt · Last modified: (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki