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