[Freifunk-Bonn] Fwd: [Freifunk.luebeck] Config von aftermath
Jan Lühr
jluehr at online.de
Sa Nov 5 17:52:42 CET 2011
Hallo zusammen,
könnt Ihr das auf dem Bonner-Server umsetzen?
Wir könnten dann ein wenig spielen...
Danke,
Alles Gute
Jan
Anfang der weitergeleiteten E-Mail:
> Von: Linus Lüssing <linus.luessing at web.de>
> Datum: 5. November 2011 17:46:03 MEZ
> An: Jan Lühr <jan at freifunk-koeln.de>
> Kopie: freifunk.luebeck at asta.uni-luebeck.de
> Betreff: Re: [Freifunk.luebeck] Config von aftermath
>
> On Sat, Nov 05, 2011 at 11:40:34AM +0100, Jan Lühr wrote:
>> Hallo folks,
>>
>> würde würden gerne in Köln/Bonn einen zu aftermath kompatiblen Server aufsetzen und die Lübecker Firmware daran anzubinden.
>> Könnte mir bitte jmd. von euch (mit entspr. Rechten) die entspr. Configs von aftermath zusenden? Dies betrifft insb.
>> -> batman-adv
>> -> Interfaces
>> -> Tinc
>>
>> Falls mgl. auch die batman-adv (Paket-) Version und ggf. angewendete Kernel-Patches.
>
>
> = tinc =
>
> == config ==
> ---
> % cat /etc/tinc/intracity/tinc.conf
> Name = freifunk
> ConnectTo = ...
> ConnectTo = ...
> Mode = switch
> ClampMSS = no
> Compression = 9
> GraphDumpFile = /var/log/tinc/intracity-graph.dot
> ---
>
> Nicht wirklich special, ähnlich wie es auch auf der
> Router-Firmware konfiguriert ist. ConnectTo's sind optional, da in
> der Regel ja eigentlich die Freifunk-Router sich sich mit dem
> IntraCity-VPN verbinden. ClampMSS=no ist eigenltich auch nicht
> notwendig, kann aber evtl. Verwirrungen bei MTU Problemen
> vermeiden.
>
> ---
> % cat /etc/tinc/intracity/tinc-up
> #!/bin/sh
> #INTERFACE=intracity
>
> ip link set up address 8E:3D:C2:10:10:28 mtu 1280 dev $INTERFACE
> batctl if add $INTERFACE
> batctl it 3000
> echo server > /sys/class/net/bat0/mesh/gw_mode
> echo 54MBit/54MBit > /sys/class/net/bat0/mesh/gw_bandwidth
>
> ip link set up dev bat0
> ip addr add 10.130.214.1/16 dev bat0
> ---
>
> Die MAC aus dem 'ip link set' sollte man für jeden Knoten
> natürlich noch umändern, muss eindeutig sein.
>
> Auch die IP Adresse eindeutig wählen und am besten sich in einem
> Wiki reservieren (wir haben dafür momentan:
> http://wiki.metameute.de/meutewiki/Freifunk/Netzwerk/IP-Subnetze)
>
> MTUs haben wir aktuell innerhalb des intracity alle auf 1280,
> damit für Unicast pakete batman-adv's interne Fragmentierung
> einheitlich greift und sie sicher durch alle Internetverbindungen
> durchpasst.
>
> Die 54MBit/54MBit je nachdem anpassen, wieviel Kapazität man meint
> zu haben.
>
> $INTERFACE wird von tinc selber gesetzt (siehe tinc manpage).
>
> Ansonsten für tinc wie gehabt die Schlüssel generieren und in die
> richtigen Ordner platzieren (siehe tinc manpage).
>
>
> = batman-adv =
>
> == config =
>
> Siehe oben, ist i.d.R. in den up-scripts mit drin, Arch-Linux hat
> keine extra init Skripte oder configs für batman-adv.
>
> == Version ==
>
> Die Version, die auf Arch-Linux für den Linux 3.0er Kernel
> mitgeliefert wird (batman-adv v2011.2.0). Vorsicht bei Arch-Linux
> Kernel-Updates, v2011.3.0 z.B. ist nicht abwärtskompatibel!
>
> Für batctl wurde das git repository von open-mesh.org und die
> Version v2011.2.0 ausgecheckt und dann global installiert, damit
> die up-Skripte batctl auch finden.
>
>
> = Mullvad / OpenVPN =
>
> Für den Internetzugang (da kann natürlich jeder den VPN Provider
> seines Vertrauens wählen - oder am besten noch mehrere,
> verschiedene VPN-Provider, um die Zuverlässigkeit zu erhöhen).
>
> == config ==
>
> Mullvad bietet neuerdings auch per Webinterface die configs an,
> hatten wir damals aber noch nicht.
> Ich weiß nicht wieviel man da noch für z.B. die Routen noch
> umändern müsste, oder wie stark das von der folgenden Variante,
> die wir momentan haben, sich unterscheidet:
>
> ---
> % cat /etc/openvpn/mullvad.conf
> client
>
> dev tun
> proto udp
>
> remote 95.211.13.33 1194
> remote 95.211.10.68 1194
> remote 94.75.220.77 1194
> remote 94.75.220.253 1194
> remote-random
>
> bind XY
> lport 2000
>
> mtu-test
>
> log mullvad/openvpn.log
>
> # Keep trying indefinitely to resolve the
> # host name of the OpenVPN server. Very useful
> # on machines which are not permanently connected
> # to the internet such as laptops.
> resolv-retry infinite
>
> # Most clients don't need to bind to
> # a specific local port number.
> #nobind
>
> # Try to preserve some state across restarts.
> persist-key
> persist-tun
>
> # Enable compression on the VPN link.
> comp-lzo
>
> # Set log file verbosity.
> verb 3
>
> remote-cert-tls server
>
> ping-restart 60
>
> # Allow calling of built-in executables and user-defined scripts.
> script-security 2
> route-nopull
>
> redirect-gateway def1
>
> # Parses DHCP options from openvpn to update resolv.conf
> #up /etc/openvpn/update-resolv-conf
> #down /etc/openvpn/update-resolv-conf
> up /etc/openvpn/mullvad/if-up-conf.sh
> down-pre /etc/openvpn/mullvad/if-down-conf.sh
>
> ping 10
>
> ca mullvad/ssl/master.mullvad.net.crt
> cert mullvad/ssl/XXX.crt
> key mullvad/ssl/XXX.key
> ---
>
> XXX mit der customer-ID bei Mullvad austauschen. Was wir glaub'
> ich hinzugefügt hatten waren: script-security 2, route-nopull, up,
> down-pre, ping 10, so wie die festen remotes auf port 1194 aus
> firewall-technischen Gründen.
>
> XY ist hier die eigene IP-Adresse.
>
> ---
> % sudo cat /etc/openvpn/mullvad/if-up-conf.sh
> #!/bin/sh
>
> #ip route add 10.8.0.1/32 dev tun0
>
> iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
>
> #ip route add default dev tun0 table 42
> #ip rule add from all fwmark 0x1 table 42
>
> ip r add default via X.1 dev eth0 table 42
> ip r add X.0/24 dev eth0 table 42
>
> ip rule add from all fwmark 0x1 table 42
>
> iptables -t mangle -A OUTPUT -p udp --dport 1194 -j MARK --set-mark 0x1
> iptables -t mangle -A OUTPUT -p tcp --dport 1194 -j MARK --set-mark 0x1
>
> iptables -t nat -A POSTROUTING -o eth0 -m mark --mark 0x1 -j MASQUERADE
> ---
>
> Jeglicher Internet-Verkehr, bis auf 1194 für die
> Tunnel-Verbindungen (Mullvad-VPN und IntraCity-VPN)
> wird über Mullvad geleitet und über Mullvad genattet.
>
> X.1 ist der eigentliche, lokale default Gateway. X.0 das
> entsprechende Subnetz (müssen angepasst werden).
>
> eth0 ist das lokale Interface, tun0 das von und für Mullvad
> erzeugte.
>
> Wer in den ganzen Regeln noch Bugs, ungewünschte Nebeneffekte,
> findet, oder hübschere Alternativen hatten, bitte melden :).
>
>
> Und so wird's wieder abgebaut:
>
> ---
> cat /etc/openvpn/mullvad/if-down-conf.sh
> #!/bin/sh
>
> #ip rule del from all fwmark 0x1 table 42
> #ip route del default dev tun0 table 42
>
> iptables -t nat -D POSTROUTING -o tun0 -j MASQUERADE
>
> ip r del default via X.1 dev eth0 table 42
> ip r del X.0/24 dev eth0 table 42
>
> ip rule del from all fwmark 0x1 table 42
>
> iptables -t mangle -D OUTPUT -p udp --dport 1194 -j MARK --set-mark 0x1
> iptables -t mangle -D OUTPUT -p tcp --dport 1194 -j MARK --set-mark 0x1
>
> iptables -t nat -D POSTROUTING -o eth0 -m mark --mark 0x1 -j MASQUERADE
> ---
>
> Zu guter letzt wie bei jedem Router das forwarding natürlich noch
> aktivieren:
>
> ---
> % cat /etc/sysctl.conf | grep "net.ipv4.ip_forward"
> net.ipv4.ip_forward=1
> ---
>
>
> Somit sollte es in dann die folgenden Interfaces dann am Ende geben:
> * eth0 (Netzwerkkarte)
> * tun0 (Mullvad, OpenVPN)
> * intracity (tinc)
> * bat0 (batman-adv)
>
> Ansonsten haben wir auch noch eine Verbindung zum dn42 (und
> hoffentlich auch bald für's Freifunk InterCity-VPN), dazu wurde
> bird benutzt. Die config dazu poste ich aber erstmal nicht,
> hierfür hat Matze auch eher den Überblick.
>
>
> Alle Klarheiten soweit beseitigt?
>
> Cheers, Linus
>
>>
>> Vielen Dank im Voraus,
>> Alles Gute
>> Jan
>>
>>
>> _______________________________________________
>> Freifunk.luebeck mailing list
>> Freifunk.luebeck at asta.uni-luebeck.de
>> http://lists.asta.uni-luebeck.de/mailman/listinfo/freifunk.luebeck
>>
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://lists.kbu.freifunk.net/pipermail/freifunk-bonn/attachments/20111105/88de6fe7/attachment.htm>
Mehr Informationen über die Mailingliste Freifunk-Bonn