Hallo Liste, Ziel ist auf einem SuSE 11.3, der nur als Router und Maskerading Firewall fungiert, mit 2 DSL-Verbindungen via pppoe und einer Netzwerkverbindung zu einem Server mit OpenVPN die VPN-Pakete über die eine dsl- und die restlichen Pakete über die andere dsl-Verbindung zu routen. Auf dem Router ist: - dsl0 (via eth1): T-COM SDSL mit fester IP - dsl1 (via eth2): T-COM ADSL mit fester IP - eth0: zum Server Das dsl0 soll nur für VPN genutzt werden. Hier sollen sich unsere Home-Offices Verbinden. dsl1 soll all unseren Internetverkehr abwickeln. vpn nutzt udp Port 443. Für Multiroute hat Lars Müller schon ein gutes Skript gepostet (Das Ziel "Multiroute" habe ich erst einmal zurückgestellt). Das Thema sind die Outbound-Pakete, also VPN gegen die default route aus dsl0 zu senden. SuSE-Firewall: - In der SuSE-Firewall unter Maskerading ein Port forward gesetzt: Von "Fester IP von DSL0:443" nach "Server-IP:443" Damit kommen die Pakete gut hinein. Falls das "DNAT" ist, sollte auch der Rückweg über das selbe Interface gehen, das klappt aber nicht, die Rückpakete gehen via dsl1. <für Schnelleser diesen Absatz bitte überspringen> - Einen schönen Trick steht in "Guide to IP Layer Network Administration with Linux": Man konfiguriert auf dem Server eine zweite IP (unter Netzwerkkarte alias). Jetzt richtet man den Port forward auf diese zweite IP. OpenVPN empfängt also jetzt mit dieser zweiten IP die Pakete und sollte dort auch Antworten. Dies tut OpenVPN aber nicht, es antwortet mit der ersten Serveradresse, ausser wenn man ihm mit "local <zweite Server IP>" in der Konfigurationsdatei sagt, nur auf diese Adresse zu antworten. Jetzt kann man auf dem Router Pakete von der zweiten Server-IP auf dsl0 routen. Ich habe diese Lösung wieder rückgebaut, da ich oft ICMP-Pakete mit "No route to host" sah und Arp-spoofing vermutete. Ich wollte ja eigentlich erreichen, daß man über beide dsl Leitungen vpn Verbinden kann (Multiroute). Das verhindert aber der "local". Deshalb dachte ich, es ist einfacher, im Router alle VPN-Pakete durch ihren Quellport auf dsl0 zu routen. Dann brauche ich den Server nicht modifizieren. <Schnell-Ende> - Policy routing von udp Quellport 443 auf dsl0 1) Splitroute aufgesetzt: Dafür eine neue Routing-Tabelle mit Namen "dsl0" als Kopie der Tabelle main aufgesetzt, nur daß das default-Route auf dsl0 statt 1 steht: An Datei "/etc/iproute2/rt_tables" angefügt: "1<tab>dsl0" ip route show table main | grep -vE "^default" \ | while read ROUTE ; do ip route replace table dsl0 $ROUTE done ip route add default dev dsl0 table dsl0 src $DSL0_IP Ich habe diese Lösung genutzt, da ich so die Peer-Adressen der pppoe, die jeweils ein route haben, gleich mit kopiere. Jetzt diese getestet: ip rule add table dsl0 prio 20001 Jetzt gehen alle Pakete über dsl0 statt dsl1. VPN verbindet auch. Gut, test wieder gelöscht: ip rule del table dsl0 prio 20001 2) Jetzt nur die Pakete mit udp sport 443 auf diese Tabelle: iptables -A PREROUTING -t mangle -p udp --sport 443 -j MARK \ --set-mark 4 ip rule add from all fwmark 4 table dsl0 prio 20000 ip route flush cache Mit "iptables -Lv -tmangle" kann man sehen, daß die Pakete über die Regel laufen. Nur nach dsl0 werden sie nicht geroutet (Ich teste das mit Wireshark, was überall mitläuft). Hat hier jemand eine Idee ? Ich vermute, ich muß an der Firewall etwas drehen oder (oh-nein !) diese manuell aufsetzen. Danke für jede Idee, Harald -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org