Locked History Actions

PublicIPBarrierBraker

Dieses Howto beschreibt wie man auf einem OpenWrt BarrierBraker 14.07 eine public IP konfiguriert.

Voraussetzungen

  • Der Router ist bereits mit Barrier Braker geflasht
  • olsr ist installiert und Zugriff aufs FF-Netz ist vorhanden
  • Das FF-Interface ist der WAN Zone in der Firewall zugeordnet
  • Man erreicht das Internet über das NAT-Gateway
  • Kenntnisse im Umgang mit LuCI
  • Kenntniss wie man mittels ssh Dateien am Router editiert

Notwendige Pakete

Die folgenden Pakete müssen installiert werden (System -> Software)

  • kmod-ipip

    • Kernel modules for IP-in-IP encapsulation
  • ip

    • Routing control utility (Minimal)

Konfiguration

  • Im Webinterface unter Network -> Interfaces -> Add new interface...

    • Name of the new interface public

    • Protocol of the new interface unmanaged

    • Custom interface public

addPublicInterface1000px.png

  • Jetzt unter Network -> Interfaces das neue public interface editieren.

    • Unter Firewall Settings eine Firewall-Zone mit dem Name public anlegen

addFirewallZone4public.png

  • Unter Network -> Firewall jetzt die lan Zone editieren und forward nach public erlauben

allowForward2public.png

  • Jetzt unter Network -> Firewall

    • Die default policy für public von accept -> reject setzen

      • ACHTUNG: Das ist sehr wichtig, da wir damit per default verhindern, dass man sich aus dem Internet zum Router verbinden darf. Sollte man Server betreiben wollen, ist es besser später nur die Ports zu öffnen, die auch wirklich offen sein sollen.

    • Masquerading und MSS Clamping wie im Screenshot gezeigt setzen.

configureZonePoliciesAndMasquerading.png

  • Unter Network -> Firewall -> Traffic Rules -> Source Nat eine neue Source NAT rule anlegen

    • Name zum Beispiel SNAT 4 public

    • Source zone lan

    • Destination zone WAN

    • To source ip <hier die public IP auswählen>

    • ACHTUNG: Aufgrund eines Bugs scheint die Source zone lan nicht zu funktionieren. Deshalb muss die SNAT Regel jetzt noch mal editiert werden und unter Source IP address die lan range mittels custom eingetragen werden. Verwendet man z.B. das Netz 192.168.1.0 mit einer netmask von 255.255.255.0 trägt man hier 192.168.1.0/24 ein.

  • Unter Services -> OLSR IPv4 -> HNA announcments mittels Add die public IP hinzufügen (netmask 255.255.255.255)

  • Jetzt mittels ssh zum router verbinden und die Datei /etc/config/osrd editieren. Im Abschnit config olsrd Die folgenden zwei Einträge hinzufügen:

option RtTable '111'
option RtTableDefault '112'
  • Abschließend noch die unten angefügte Datei unter System -> Startup in das Textfeld unter local startup einfügen und die richtige public IP eintragen.

PUBLIC_IP=xxx.xxx.xxx.xxx #Hier die zugewiesene public IP eintragen
PUBLIC_GW=10.12.34.56

ip tunnel add public mode ipip remote $PUBLIC_GW local $PUBLIC_IP ttl 255
ip link set public up
ip addr add $PUBLIC_IP dev public
ip route add default dev public table default

ip rule add from all lookup 111 pref 20000
ip rule add from all lookup main pref 30000
ip rule del pref 32766

source /lib/functions/network.sh

i=0
while iface="$( uci -q get olsrd.@Interface[$i].interface )"; do
  case "$( uci -q get olsrd.@Interface[$i].ignore )" in
    1|on|true|enabled|yes)
      # is disabled
    ;;
    *)
      if network_get_device device "$iface"; then
        ip rule add iif $device pref $(( i + 32000 )) lookup 112
      else
        echo "Warning: device for OLSR Interface '$interface' not found, skipped"
      fi
    ;;
  esac
  i=$(( $i + 1 ))
done

exit 0

Jetzt sollte die Public IP für Verbindungen die vom LAN aufgebaut werden funktionieren. Zum testen z.B. http://whatismyip.com öffnen.

Den Router von außen für neue Verbindungen erreichbar machen