[Problem] Fritz!Fon App und VPN

Dirk11

Mitglied
Mitglied seit
7 Mrz 2008
Beiträge
208
Punkte für Reaktionen
3
Punkte
18
Guten Tag!

Wie ja einigen hier vielleicht bekannt ist, betreibe ich meine Fritz!Box 7490 als reinen Telefonie-Client innerhalb eines vorhandenen Heim-LAN, d.h. auch, daß das Fritz-WLAN deaktiviert ist und an der Fritz ausschließlich DECT (und natürlich LAN) genutzt wird. Die Fritz ist also ein ganz einfacher Client im Netz, aber VoIP-Server. Genau das funktioniert einwandfrei, da gibt es z.Zt. überhaupt keine Probleme.
Da ich z.Zt. nur ein Fritz!Fon C4 besitze, habe ich "für Notfälle" die Fritz!Fon APP auf meinem Smartfon installiert, welches sich in meinem - von einem AP/Router aufgestellten WLAN - anmeldet. Das funktioniert "so leidlich": so leidlich, weil es technisch einwandfrei läuft, die Gesprächsqualität aber erstaunlicherweise schlechter ist. Aber egal, das soll hier nicht mein Thema sein.

Mein Problem:
Ich wollte jetzt auch mal austesten, wie das mit der Telekom-VoIP an der Fritz mit der Fritz!Fon APP durch ein VPN funktioniert. Leider funktioniert es nicht. Ich habe den Verdacht, das es an meinem Setup hier liegt, nur leider komme ich nicht darauf, was genau der Fehler sein könnte.

Achtung - wird kompliziert!

Also: gegeben LAN 192.168.1.XXX
DSL-Modem (in der Betrachtung IMO irrelevant)
WLAN-Router mit DHCP-&DNS-Server 192.168.1.A
Heimserver Linux 192.168.1.B
Fritz!Box 7490 6.50 192.168.1.C

Der Heimserver (Linux) stellt das VPN mit openvpn, es ist ein TUN-Device. Der VPN-Tunnel wird von meinem Smartfon aus problemlos aufgebaut (Netz 10.A.B.C), ich kann alle LAN-Endgeräte erreichen, anpingen, whatever (z.B. mit einem Terminal-Client auf dem Smartfon). Auch die Fritz!Box im LAN kann ich problemlos anpingen.
Starte ich dann allerdings die Fritz!Fon APP (die ich vorher im Anwendungsmanager beendet habe, ich las von Problemen bei laufender App und nachträglichem VPN-Aufbau), so verbindet diese sich nicht korrekt mit der Fritz!Box. Ich muß ihre IP - obwohl bekannt - von Hand nochmal angeben. Das an sich wäre ja kein Problem, aber: ich bekomme danach zwar "Verbunden mit 192.168.1.C" angezeigt, aber es ist keine Telefonie möglich, weder ankommend noch abgehend. Sowas wie die Anruferliste wird mir aber sofort in der APP aktualisiert angezeigt!
Das Status-Symbol oben rechts in der Ecke ist ja horizontal geteilt. Oben wechselt es zwischen gelb und rot, unten ist es dauerhaft grün.

Hat jemand eine Idee, wo der Fehler liegen könnte?
 
Ist normal und bekannt hier, gibt auch einige Themen zu.

Setze im Router eine Route für 10.x zum Linux Server.
 
Zuletzt bearbeitet von einem Moderator:
Setze im Router eine Route für 10.x zum Linux Server.
Äh, wo jetzt? im WLAN-Router von der Fritz zum Heimserver? Wozu? Und vor allem: wie?
Oder anders gesagt: damit stehe ich gerade ein wenig auf Kriegsfuß, bei openWRT würde das wohl in die /etc/firewall.user gehören, oder? Nur wie würde ein entsprechender Eintrag aussehen zu haben?
Ich habe dort ein Beispiel drin, um das DSL-Modem, was aber ja quasi vor dem Router außerhalb meines eigenen LAN steht, zu erreichen:
Code:
iptables -t nat -I postrouting_rule -s 192.168.1.0/24 -d 150.150.150.4 -j SNAT --to 150.150.150.5
iptables -I forwarding_rule -s 192.168.1.0/24 -d 150.150.150.4 -j ACCEPT

Edit: Themen dazu hatte ich allerdings nicht gefunden, habe da durchaus auch gesucht.
 
Das Modem ist egal, wenn im Router. Der muss ja wissen dass 10.A.B.C an den Linux Server soll.

Für TCP geht es wohl noch also Webseiten und so, aber UDP findet den Weg wohl nicht zurück, da der Router nichts mit dem 10er Netz anfangen kann.

In der FB kann ich dir sagen wo es eintragen müsstest, beim openWRT weiß ich es nicht.

http://www.ip-phone-forum.de/showthread.php?t=273702
http://www.ip-phone-forum.de/showthread.php?t=276608

In Linux sollte es etwa so aussehen:
Code:
route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.B
 
Zuletzt bearbeitet von einem Moderator:
Äh, moment. Meinem Verständnis nach ist doch 10.A.B.C "nur" für den Tunnel da. Ich spreche die Fritzbox doch von der App aus einfach auf ihrer "nromalen" 192.168...-IP an, sprich für mich als Nutzer ist doch das "Hilfs-Netzwerk" des Tunnel eigentlich egal. Dann müßte sie doch eigentlich auch an die entsprechende IP des Smartfon antworten? Was verstehe ich da gerade nicht?

Ach ja, und: muß ich die Route nicht in der Fritzbox setzen? Meinem bisherigen (Un)Verständnis nach kommt doch der Router hierbei gar nicht aktiv im Geschehen zum Tragen, oder?
 
Zuletzt bearbeitet:
Jo eben, weil es der Tunnel ist am Linux Server weiß der Router nicht wohin mit den Daten welche die FB zurück schickt.

Die Daten gehen immer an das Gateway und dass ist dein Router und von da weiter.

VPN -> Linux Server -> Router -> FB -> Router -> [kenne Ziel 10.x.x.x nicht] -> error
 
Zuletzt bearbeitet von einem Moderator:
Mhm. Aber ich dachte, Antworten durchlaufen bekannte Routen? Ich muß doch auch keinen Port in einem Router oder einer Firewall öffnen, weil eine Antwort auf eine Anfrage ja als "related" (oder so ähnlich) durchgelassen wird.
 
Mach es doch einfach mal, und dann wirst schon sehen, dass dann auch Fritz Fon App auch wieder geht.

Wie gesagt, kenne es selbst, ohne Route im Router gibt es nur Verbindungsaufbau mit Stille und starke Verzögerung beim Auflegen.
 
Ich mache es gerade, und es geht leider eben nicht. Die Fritz!Fon APP sagt "Anmeldung läuft..." und dann irgendwann "Anmeldung an Fritz!Box gescheitert".

Alles im Router:
Code:
route add -net 10.1.0.0 netmask 255.255.255.0 gw 192.168.1.10
route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         117.0.1.9       0.0.0.0         UG    0      0        0 pppoe-wan
10.1.0.0        192.168.1.10    255.255.255.0   UG    0      0        0 br-lan
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 br-guest
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br-lan
150.150.150.0   0.0.0.0         255.255.255.248 U     0      0        0 eth1
117.0.1.9       0.0.0.0         255.255.255.255 UH    0      0        0 pppoe-wan
 
Dein Linux VPN Server (192.168.1.10) verwendet 10.1.0.0/255.255.255.0?
Also 10.1.0.1-10.1.0.254 für die Clients?

Bei mir und auch paar anderen hier, hat es mit de Route immer prima funktioniert.
 
Zuletzt bearbeitet von einem Moderator:
Mhm, moment. In der openvpn.conf dazu steht:
Code:
port 1194
proto tcp
dev tun
server 10.1.0.0 255.255.255.0
route 10.1.0.0 255.255.255.192
client-to-client
push "route 192.168.1.0 255.255.255.0"
push "route 10.1.0.0 255.255.255.192"
Ich habe die .192 mal in .0 geändert und restartet, glaube aber nicht, das es daran lag.

EDIT: ich kann das Smartfon bzw. dessen VPN-IP vom Heimserver aus anpingen, von anderen Geräten im Netz aus aber nicht. Hilft das in irgendeiner Weise?
 
Zuletzt bearbeitet:
Bei mir steht in der conf keine Route, nur die push Route.
Code:
dev tun
server 192.168.B.0 255.255.255.0
push "route 192.168.A.0 255.255.255.0" (Heimnetz)
push "route 192.168.B.0 255.255.255.0" (VPN Netz)
dev tun
status-version 2
proto udp6
verb 3
port 1194

Ist evt. in der Client conf ein Fehler?
 
Zuletzt bearbeitet von einem Moderator:
Kann ich nicht ausschließen, aber momentan sehe ich hier eher ein routing-Problem in meinem Netz, denn ich kann das Smartfon mit seiner VPN-IP von keinem Endgerät im eigenen Netz anpingen, außer vom Heimserver, auf welchem der openVPN-Server läuft.
 
Dann hast wohl wirklich nen Routing Problem.

Ich kann mein iPhone via openVPN und IPsec anpingen
Code:
C:\>tracert 192.168.B.10

Routenverfolgung zu 192.168.B.10 über maximal 30 Hops

  1    <1 ms    <1 ms    <1 ms  nas.fritz.box [192.168.A.20]
  2   156 ms   133 ms   129 ms  192.168.B.10

Ablaufverfolgung beendet.

ohne Route in der FB
Code:
C:\>tracert 192.168.B.10

Routenverfolgung zu 192.168.B.10 über maximal 30 Hops

  1    <1 ms    <1 ms    <1 ms  fritz.box [192.168.A.1]
  2    17 ms    17 ms    17 ms  217.0.x.x (IP vom Telekom Gateway)
  3     *        *        *     Zeitüberschreitung der Anforderung.
  4     *        *        *     Zeitüberschreitung der Anforderung.
  5     *        *        *     Zeitüberschreitung der Anforderung.
  6     *        *        *     Zeitüberschreitung der Anforderung.
  7     *        *        *     Zeitüberschreitung der Anforderung.
  8     *        *        *     Zeitüberschreitung der Anforderung.
  9     *     ^C
 
Bin nun teilweise weiter gekommen. Smartfon lässt sich trotz gesetzter Route im Router nicht anpingen (außer von auf dem Server, auf dem openVPN läuft, selbst). Das Hinzufügen einer iptables-Regel um NEW forward zu erlauben hat aber immerhin dazu geführt, dass die Fritz!Fon APP komplett grün anzeigt, also Verbindung hergestellt. Funktionieren tut es aber immer noch nicht, die App bemerkt keine eingehenden Rufe, und abgehende Rufe kann ich darüber zwar machen, die Verbindung wird auch hergestellt, aber es werden keine Sprachdaten übertragen, sprich es ist einfach stumm auf beiden Seiten. Außerdem erkennt die App nicht, wenn die Gegenseite aufgelegt hat.
 
Zuletzt bearbeitet:
Mit einem Tracert kannst ja schauen ob der erste Hop der Linux Server ist.

Dann sollte Routing zum Server schon mal passen. Danach wäre Routing vom Server selbst zu prüfen.

Portfreigaben oder Weiterleitung braucht man nicht, daher weiß ich nicht ob iptables hier Problem macht.
 
Ich musste erstmal auf dem openWRT-Router noch masquerade aktivieren. Der erste Hop ist mein Linux-Server, und danach kommen nur noch * * *. Das VPN-Client smartfon kann ich leider immer noch nicht anpingen, Gespräche kann ich auch nicht führen, und Zugriffe von der FritzBox führen laut syslog zu Fehlermeldungen vom Kernel (sowas wie invalid forward, stealth scan oder invalid input).
 
Hast
Code:
route 10.1.0.0 255.255.255.192
entfernt und
Code:
push "route 10.1.0.0 255.255.255.0"
angepasst wie selbst beschrieben hast?

evt. hat ja wer anders ja noch eine Idee.
 
Wenn in Client auch conf angepasst hast, weiß ich auch nicht wieso es bei dir am Linux Server zu Routing Problemen kommt.

Der Router leitet es wohl bereits korrekt weiter, wenn 1. Hop der Linux Server ist aus dem Heimnetz.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.