[vpn] Probleme mit dem Routing
Bernd Kalbfuss-Zimmermann
kalbfuss at gmx.net
Mi Aug 20 23:45:24 CEST 2014
Ok, Problem gelöst. Der entscheidende Tipp kam von tcatm:
https://lists.quagga.net/pipermail/quagga-users/2009-February/010333.html.
Mann muss Quagga in der zebra.conf die bevorzugte Quelladresse
mitteilen. Danach funktioniert alles wie es soll. Und weiter geht es mit
der Konfiguration der DNS-Server...
LG,
Bernd
Am 20.08.2014 um 23:02 schrieb Bernd Kalbfuss-Zimmermann:
> Hallo Ruben,
>
> vielen Dank für deine Antwort. Das hat mich schon mal etwas
> weitergebracht. Ich habe Quagga so konfiguriert, dass alle Routen in
> die Tabelle 43 geladen werden. Wenn ich hinterher mittels "ip rule add
> from all lookup 43 prio 1" einen Verweis mit hoher Priorität auf diese
> Tabelle erzeugen, dann kommt sie auch tatsächlich zum Einsatz. Der
> Befehl "ip route get 172.23.252.1" produziert z.B. die Ausgabe
> "172.23.252.1 via 10.207.0.59 dev icvpn src 5.45.110.180". Das sieht
> schon mal recht vielversprechend aus. Allerdings stimmt die
> Src-Adresse noch nicht. Aus Gründen, die ich nicht verstehe, ist diese
> mit der IP-Adresse der Schnittstelle eth0 und nicht der Adresse der
> Schnittstelle icvpn identisch. Woran liegt das?
>
> LG,
>
> Bernd
>
> Am 20.08.2014 um 13:51 schrieb Ruben Kelevra:
>> ip rule add iif freifunk-wk lookup 42 prio 4200
>> ip -6 rule add iif freifunk-wk lookup 42 prio 4200
>> Hallo Bernd,
>>
>> wir betreiben es mit einer Tabelle fürs IC-VPN die mit Prio 1 hinter der
>> local Liste geroutet wird:
>>
>> ip -6 rule add from all lookup 43 prio 1
>> ip rule add from all lookup 43 prio 1
>>
>> Diese füllen via Bird/Bird6.
>>
>> Daneben haben wir eine 42iger die wir für den VPN nutzen und via
>> iif-Rule für den Rest nutzen:
>>
>> ip rule add iif freifunk-x lookup 42 prio 4200
>> ip -6 rule add iif freifunk-x lookup 42 prio 4200
>>
>> In 42 stehen ein paar IPs die uns gehören und wir ohne VPN raus jagen,
>> alles andere wird vom OpenVPN via Up-Script eingefügt.
>>
>> Die Route über 42 Testen wir dann via Ping über das Tunnel-Interface,
>> ansonsten schalten wir DHCP und Batman-adv-Server-Modus ab:
>>
>> ping -q -I $INTERFACE 8.8.8.8 -c 4 -i 1 -W 5 >/dev/null 2>&1
>>
>> if test $? -eq 0; then
>> NEW_STATE=server
>> else
>> NEW_STATE=off
>> fi
>>
>> Danach schaun wir uns noch den Traffic auf eth0 des Gateways an und
>> geben die geschätze freie Bandbreite an Batman-adv weiter:
>>
>> MESH=mesh-x
>>
>> if [ -f /sys/class/net/$MESH/mesh/gw_mode ]; then
>>
>> OLD_STATE="$(cat /sys/class/net/$MESH/mesh/gw_mode)"
>> if [ ! "$OLD_STATE" == "$NEW_STATE" ]; then
>> echo $NEW_STATE > /sys/class/net/$MESH/mesh/gw_mode
>> logger "$MESH: batman gateway mode changed to $NEW_STATE"
>> fi
>> echo ${bw}MBit/${bw}MBit > /sys/class/net/$MESH/mesh/gw_bandwidth
>>
>> fi
>>
>>
>>
>> LG Ruben
Mehr Informationen über die Mailingliste vpn