[Gelöst] LAN-LAN-Koppelung mit nur 1 öffentlichen IP

Bedeutet das jetzt, wenn ich den Parameter auf "no" (ich hasse doppelte Verneinungen) stelle, dann geht auch folgende Freigabe nicht mehr?
Das sollte tatsächlich so sein ... zumindest war es einmal so. Und bei "dont_filter=no" kann ich Deine Abneigung gut verstehen ... ;)

Da es sich bei diesem Netbios-Filter aber meines Wissens um eine eher alte Einrichtung handelt, kann es auch genauso gut sein, daß dadurch nur TCP 139 blockiert wird und nicht der heute überwiegend verwendete TCP 445 ... das weiß ich nicht genau, würde ich aber eher nicht annehmen, da der 445 auch schon mindestens seit Windows 2000 dabei ist.

Generell gehören die Ports TCP/135, UDP/137-138, TCP/139 und TCP/445 zu den "offiziellen" Windows-Freigaben für ein funktionierendes Datei-Netzwerk, der 135 ist ein RPC-Portmapper und für viele andere Zwecke auch noch zu benutzen. Vermutlich wird der eher nicht blockiert, da er nur am Rande mit "NetBIOS" zu tun hat. Ob der "Name Service" auf UDP/137 und der "Datagram Service" auf UDP/138 auch einbezogen sind, ist für mich auch nicht ganz klar, müßte man mal testen.
 
Zuletzt bearbeitet:
Er meinst Broadcast/UPnP
Genau, es lag mir auf der Zunge ;)

Sollte aber auch bekannt sein, Zugriff per IP möglich, über Hostname nicht da der eine DNS nicht Geräte vom anderen kennt.
Bringt es vielleicht etwas, die jeweils andere Fritzbox als sekundären DNS in die Fritzbox einzutragen? Oder stechen die sich gegenseitig die Augen aus?

UPnP/DLNA/Multicast/Broadcast ect. bleibt alles im eigenen Subnet, also nicht per VPN. Müsste man schon wenn gezielt alles ins Fremde Netz weiterleiten lassen.
Habe eine Bastellösung gefunden: Per Windows-PPTP-VPN beide PCs verbinden und die entfernte Box als WINS Server eintragen (kann die Fritzbox das überhaupt?) und Netbios über TCP/IP aktivieren. Welche von beiden Einstellungen für das Funktionieren verantwortlich ist weiß ich nicht, aber Steam in-Home-Streaming findet sich :p
In der VPN-Datei gibt es doch aber folgenden Parameter:
Code:
dont_filter_netbios = yes;
Da könnte man ja glatt denken, daß Netbios doch durchgelassen wird.
Habe schon versucht, an meinem PC hinter Box A (mit einer A-Bereich-IP) einfach Fritzbox B als WINS einzutragen und Netbios über TCP/IP zu aktivieren, bringt leider auch nichts.

Ich kann leider auch nicht im Netz A Fritzbox B als Standardgateway eintragen, so funktioniert gar nichts mehr.
 
Bringt es vielleicht etwas, die jeweils andere Fritzbox als sekundären DNS in die Fritzbox einzutragen? Oder stechen die sich gegenseitig die Augen aus?
Bisher war es Konsens, daß die FRITZ!Box tatsächlich nur einen einzelnen DNS-Server als Standard-Server verwendet (wird im GUI auch so angezeigt). Der zweite wird nur dann befragt, wenn der erste nicht antwortet. Liefert der erste die Antwort "NXDOMAIN", dann wird der zweite nicht gefragt.

Habe schon versucht, an meinem PC hinter Box A (mit einer A-Bereich-IP) einfach Fritzbox B als WINS einzutragen und Netbios über TCP/IP zu aktivieren, bringt leider auch nichts.
Das sollte allerdings tatsächlich funktionieren, wenn der NetBIOS-Filter für die Verbindung ausgeschaltet ist (damit UDP 137-138 definitiv durchgelassen werden) - auf beiden Seiten. Wenn die FRITZ!Box am Standort B einen funktionierenden nmbd im Image hat (es gibt gerade ein paar Images, wo der entweder vergessen oder absichtlich weggelassen wurde), sollte sie wenigstens als NMB-Proxy arbeiten können (ein WINS-Server kann etwas mehr, das ist aber für diesen Zweck uninteressant). Dazu muß aber auf der FRITZ!Box B tatsächlich der NAS-Service eingeschaltet sein, da sonst alle Samba-Daemons (dazu gehört der nmbd) nicht gestartet werden.

Ich kann leider auch nicht im Netz A Fritzbox B als Standardgateway eintragen, so funktioniert gar nichts mehr.
Kannst Du schon, mußt dann aber eine explizite Route dorthin (über FRITZ!Box A) extra anlegen. Aber was sollte das bringen?
 
Kannst Du schon, mußt dann aber eine explizite Route dorthin (über FRITZ!Box A) extra anlegen. Aber was sollte das bringen?
Damit würde ich (hoffentlich) eine IP von Fritzbox B bekommen und dann PC B über UPnP/UDP-Broadcast finden, wenn ich dies gerade benötige. Werde ich wohl mal versuchen, eine Route einzurichten.

Dazu muß aber auf der FRITZ!Box B tatsächlich der NAS-Service eingeschaltet sein
Bei beiden Boxen ist NAS aktiv, Netbios-Filter ist in der cfg deaktiviert (dont_filter_netbios = yes). Mit A-IP und B-DNS (inklusive flushdns) + B-WINS finde ich immer noch nur Geräte aus A.
 
Zuletzt bearbeitet:
Damit würde ich (hoffentlich) eine IP von Fritzbox B bekommen und dann PC B über UPnP/UDP-Broadcast finden, wenn ich dies gerade benötige. Werde ich wohl mal versuchen, eine Route einzurichten.
Nein, da hast Du irgendetwas mißverstanden. Wenn Du tatsächlich einen PC direkt mit seiner IP-Adresse in das entfernte Netz einbinden willst, dann geht das über eine (Kabel-)LAN-Verbindung und die Zuweisung der VPN-Verbindung zu einem bestimmten LAN-Port. Dieser Port ist dann quasi etwas ähnliches wie ein zusätzlicher LAN-Port der entfernten Box und hat keine weitere Verbindung mit dem lokalen Netz. Ob da die für Steam-Streaming notwendigen Sachen dann auch über die VPN-Verbindung gehen, weiß ich nicht, dafür kenne ich den Mechanismus von Steam bei der Suche nach geeigneten Sinks nicht gut genug.

B-WINS finde ich immer noch nur Geräte aus A.
Unter Linux-Clients gibt es dafür Tools, mit denen man einen WINS-Server befragen kann (nmblookup). Eine Ferndiagnose ist schwierig.
 
Bitte erkläre (mir und auch späteren Lesern) doch, was Du damit meinst. Welcher Editor und wie ist das konkret zu lösen?
Die von dir genannten 2 Probleme beim Export der vpn-cfg sind ja nicht schwer per Editor zu lösen: 1. vp.cfg aus den Komplett-Export herauslösen und "vereinzeln" und 2. die Klartext-Keys für den nächsten Import eintragen.

Aber das ist ja nur rein akademisch, da ich bei LAN-zu-LAN-VPNs allein zwischen Fritzboxen nur den WebIF-Assistenten benötige und an den nicht per WebIF erreichbaren Einstellungen nie was editieren muss. Ändern kann man z.B. mal die IP-Adresse der Gegenseite nach dem (für diese Aufgabenstellung hier mal unnötigen aber sehr empfohlenen) Adresswechsel der Box von der 178er auf eine 10er Adresse. Dass mann sich die (möglichst guten) Keys für den Assisten irgendwo speichern muss, sollte vollkommen klar sein, das AVM-Tool macht das ja auch in %APPDATA%\AVM\FRITZ!Fernzugang\box1_meinddns_tld\fritzbox_box1_meinddns_tld.cfg etc. etc..

Mit dem aktuellen FBEditor (FBEditor-0.7.2.jar) gibt es eigentlich keine Re-Import-Probleme mehr und der funktioniert im Gegensatz zum AVM-Tool nicht nur unter Windows.

Beide Methoden haben ihre Vor- und Nachteile. Bei 2-3 Boxen würde ich wohl beim WebIF bleiben, bei meinen 14 Boxen ist das Tool unverzichtbar. Mit dem Tool habe ich nur das Problem, dass die Oberfläche außer Neu, Löschen und Export fast nichts kann, um so erstaunlicher ist es, dass z.B. IP-Änderungen von einzelnen Boxen per vpnadmin.cfg über alle betroffenden .cfgs "verbreitet" werden und andere manuelle Änderungen nicht zurückgesetzt werden. Es benötigt dringend mal einen Expertenmodus und einen Facelift.


Dein Workaround mit dem Auslassen von "Verbindung dauerhaft halten" funktioniert eben auch nicht in jeder Situation, ...
Das ist ja kein Workaround, sondern vermutlich die von AVM vorgesehene Methode. Der Workaround war die Dummy-IP-Nr. Die Kollisionen bei dem VPN-Startversuch durch die DSL-Box gehen übrigens nach ein paar Minuten Nichtbenutzung vorbei. Ein "Verbindung dauerhaft halten" versehentlich auf der falschen Box kann das VPN dagegen sogar tagelang blockieren - gerade erst erlebt! Erst das Abschalten der Option auf dieser Box und eine SIP-Registrierung aus der Gegenrichtung mit dem richtigen Timing hat mir da den eher umständlichen Teamviewer-Einsatz erspart.


Ansonsten würde ich mir auch gern die HOSTS-Dateien für alle PCs ersparen, aber z.B. Outlook 2013 lässt sich bei der Exchange-Server-Adresseinrichtung nicht mit einer IP-Abspeisen. Jetzt habe ich mal mit der der Variante "Diese FRITZ!Box mit einem Firmen-VPN verbinden" - leider völlig erfolglos - experimentiert, um evtl. mit der Option "Bestimmte DNS-Anfragen immer über den VPN-Tunnel auflösen" die HOSTS-Variante zu ersetzen. Hat das jemand mal zum Laufen gebracht?
 
Zuletzt bearbeitet von einem Moderator:
Die von dir genannten 2 Probleme beim Export der vpn-cfg sind ja nicht schwer per Editor zu lösen: 1. vp.cfg aus den Komplett-Export herauslösen und "vereinzeln" und 2. die Klartext-Keys für den nächsten Import eintragen.
Was ich da jetzt zugegebenermaßen nicht verstehe ... warum dann nicht gleich mit einer Datei starten und die erst (mehr oder weniger mühsam, da kann man ja gerne unterschiedlicher Meinung sein) zusammenfrickeln?

Aber das ist ja nur rein akademisch, da ich bei LAN-zu-LAN-VPNs allein zwischen Fritzboxen nur den WebIF-Assistenten benötige und an den nicht per WebIF erreichbaren Einstellungen nie was editieren muss.
Das gilt aber offensichtlich nicht für jeden Anwender der FRITZ!Box und hier war es von Beginn an klar (so auch meine Aussage), daß der GUI-Editor der FRITZ!Box die Anforderungen eben gerade nicht erfüllen kann.

Mit dem aktuellen FBEditor (FBEditor-0.7.2.jar) gibt es eigentlich keine Re-Import-Probleme mehr und der funktioniert im Gegensatz zum AVM-Tool nicht nur unter Windows.
Gut, der FBEditor hat zwar auch das "Editor" im Namen, den konnte man (ich zumindest) aber nicht aus dem "Per Editor ..."-Teilsatz herauslesen. Da er aber tatsächlich die Prüfsumme korrigieren kann ab einer bestimmten Version, ist er meines Wissens auch die einzige portable Anwendung, mit der sich eine Export-Datei überhaupt noch bearbeiten läßt. Es gibt dann irgendwo noch eine PHP- oder Perl-Bibliothek (so genau weiß ich das nicht) und ein paar Shell-Skripte, die die Prüfsumme korrigieren können.

Wobei dann immer noch die Wahl zwischen Pest und Cholera bleibt ... der "Vollimport" mit dem FBEditor (oder hat der inzwischen auf die Möglichkeit, einzelne VPN-Files an die Box zu senden?) erfordert einen Neustart und der Einzelimport das Zerlegen der Export-Datei/Ersetzen der verschlüsselten Daten (mit anschließendem manuellen Import) und spätestens dann wird man sich diese Arbeit des Zerlegens nur ein einziges Mal machen wollen und die einzelnen Dateien dauerhaft irgendwo ablegen.

Die gesamte VPN-Konfigurationsverwaltung hat ja auch eine Entwicklung hinter sich ... als erstes brauchte man immer eine komplette VPN-Datei mit allen Verbindungen auf einen Schlag, die man dann importieren konnte, dann kam irgendwann die Möglichkeit des einzelnen Imports und der Verwaltung anhand des Namens und erst mit der 06.xx (glaube ich jedenfalls mich zu erinnern) der eingebaute einfache Editor.

Beide Methoden haben ihre Vor- und Nachteile. [...] Es benötigt dringend mal einen Expertenmodus und einen Facelift.
Ich vermute mal, mit Tool meinst Du "FRITZ!Fernzugang konfigurieren", oder? Kann das denn inzwischen (ich habe es schon sehr lange nicht mehr benutzt) auch einzelne Dateien für den Import erzeugen oder ist das immer noch eine monolithische Konfigurationsdatei, die anhand der irgendwo abgelegten Datenbank zu den verschiedenen Boxen immer komplett zusammengebaut wird?

Das ist ja kein Workaround, sondern vermutlich die von AVM vorgesehene Methode.
Das glaube ich nicht, das ist nur eine Zweckentfremdung dieser Einstellung, wenn man damit den einseitigen Verbindungsaufbau (solange die andere Seite keine Daten übertragen will, denn dann scheitert das ja) bewirken will. Die Einstellung dient - meine Interpretation anhand des Namens und der verwendeten Variablen in der Konfigurationsdatei - eigentlich dazu, auch dann eine VPN-Verbindung aufzubauen und aufrecht zu erhalten, wenn da eigentlich gar keine Daten zu übertragen sind. Ansonsten würde die Verbindung ja erst beim ersten zu übertragenden Paket aufgebaut und irgendwann (nach Ablauf der Lifetime) dann auch wieder geschlossen, wobei ein NAT-Timeout unterwegs auch schon einen früheren Abbruch (wegen DPD) verursachen könnte.

Wenn AVM diesen Fall tatsächlich vorgesehen hätte, müßte er "Nur auf eingehende Verbindung warten" oder so ähnlich heißen und dann eben genau weder "remotehostname" noch "remoteip" setzen. Der avmike kann damit sehr gut umgehen und baut dann nur diese Verbindungen nicht selbst auf, d.h. er ist nur noch Responder für diese Verbindungen und ansonsten funktioniert alles reibungslos ... und zwar inklusive Keepalive-Ping, was bei aufgebauter Verbindung ja dann wieder NAT-Connections am Leben halten kann und soll.

Die Kollisionen bei dem VPN-Startversuch durch die DSL-Box gehen übrigens nach ein paar Minuten Nichtbenutzung vorbei. Ein "Verbindung dauerhaft halten" versehentlich auf der falschen Box kann das VPN dagegen sogar tagelang blockieren - gerade erst erlebt! Erst das Abschalten der Option auf dieser Box und eine SIP-Registrierung aus der Gegenrichtung mit dem richtigen Timing hat mir da den eher umständlichen Teamviewer-Einsatz erspart.
Es beruhigt mich, daß Du diese Kollisionen auch hast und sie nicht nur bei mir auftreten, wenn ich eine ungeeignete Konfiguration verwende. Wenn Du nach der von mir beschriebenen Methode vorgehst, kannst Du diese Kollisionen aber komplett vermeiden, dann braucht es kein Timing mehr. Auch ein "dauerhaft halten" zu einer Box mit einer nicht-öffentlichen IP-Adresse spielt dann keine Rolle mehr, da das dabei eingesetzte ICMP-Paket ganz einfach verworfen wird, denn die Box kann mangels Ziel die Verbindung nicht aufbauen (sie versucht es auch erst gar nicht, wenn man nach dem Log in /var/tmp/ike.log urteilen will).

mit der Option "Bestimmte DNS-Anfragen immer über den VPN-Tunnel auflösen" die HOSTS-Variante zu ersetzen. Hat das jemand mal zum Laufen gebracht?
Ich glaube nicht, daß das eine erfolgsversprechende Variante ist. Wenn mich der GUI-Editor nicht täuscht, behandelt er genau drei Fälle von IPSec-VPNs:

1. Transport-Mode mit XAUTH und Config-Mode, FRITZ!Box ist der Server -> das sind die Verbindungen für "Benutzer" und die Box baut nie selbst solche Verbindungen auf
2. Transport-Mode mit XAUTH und Config-Mode, FRITZ!Box ist der Client -> Verbindung mit Firmennetzwerk und die Box muß solche Verbindungen selbst aufbauen
3. Tunnel-Mode (leider nur mit PSK und ohne Zertifikate), FRITZ!Box ist halt ein Endpunkt -> LAN-LAN-Kopplung und ob/wann da Verbindungen aufgebaut werden, hängt von der konkreten Konfiguration ab

Im Fall 2 besteht dann unter Umständen die Notwendigkeit, einem per VPN eingewählten Client andere Adressen für (interne) Dienste anzubieten, als einem externen ... ein Mail-Server ist ein häufiges Beispiel, gerne auch mal ein Intranet-Webserver anstelle der öffentlichen Website. Da bei der Konfiguration des VPN-Tunnels per "Config-Mode" auch ein DNS-Server automatisch konfiguriert werden kann, kann man dann bestimmte Domains festlegen, für die eine Namensabfrage über den Tunnel zum DNS-Server der Firma gehen soll und nicht über den Standard-DNS der Box. Das ist vermutlich nicht das, was Du erreichen willst, denn erstens würde das keine Tunnel-Mode-Connection mehr sein und zweitens muß das dann tatsächlich immer mit FQDN abgefragt werden.

Wenn Dich das mit dem Domain-Namen nicht stört, kannst Du ja auch einen externen DNS-Server (auf einem vServer irgendwo z.B.) betreiben und die FRITZ!Boxen auf diesen DNS-Server ansetzen. Wenn dieser DNS-Server dann für alles jenseits seines Horizonts als Forwarder arbeitet (oder auch gleich selbst rekursiv abfragt), dann kannst Du das zumindest für die Abfragen der FRITZ!Box so regeln.
Das Problem sind eigentlich meist eher die Windows-Clients, aber auch da gibt es eine Lösung, die zwar etwas einmaligen Konfigurationsaufwand erfordert, sich aber wunderbar an Änderungen anpaßt und eigentlich auch sehr gut skaliert. Wenn Windows-PCs tatsächlich ihren jeweiligen Domain-Namen über DHCP beziehen und der kommt von der FRITZ!Box, dann heißt die Domain überall "fritz.box" und so wird das dann eher nichts. Wenn man sich aber eine Domain (Name ist ziemlich egal, wir nehmen mal "meinedomain.de" an) zulegt und für jeden FRITZ!Box-Standort dort eine Subdomain anlegt (box_a.meinedomain.de, box_b.meinedomain.de, usw.) und dann auf den Windows-Clients explizit eine Domain-Reihenfolge für Namensauflösung festlegt, genauso wie einen Domain-Suffix für die Netzwerkkarte, dann meldet sich sogar der Windows-PC ganz ordentlich mit einem Versuch der Aktualisierung seiner eigenen IP-Adresse beim DNS-Server für diese Domain und versucht sie zu aktualisieren. Wenn dann also ein PC z.B. "pc1.box_b.meinedomain.de" heißt und auf einen genauso konfigurierten PC (pc2) bei Box A zugreifen soll, dann funktioniert das sogar mit der Angabe "pc2", wenn nur kein anderer "pc2" in irgendeiner Domain weiter vorne in der Suchreihenfolge existiert. Für Linux-Clients läßt sich das natürlich genauso realisieren, Knackpunkt ist halt, daß der Client seine eigene Adresse registriert und nicht auf die ansonsten übliche DHCP-DNS-Integration vertraut wird.

Problem bleibt halt der eigene DNS-Server. Den kann man allerdings theoretisch sogar auf einer definierten FRITZ!Box oder einem NAS hinter einer Box o.ä. laufen lassen. Dann muß man aber tatsächlich auf allen anderen Boxen die Benutzung dieses DNS-Servers konfigurieren (das ginge sogar mit der internen Adresse, dann braucht es eben eine funktionierende VPN-Verbindung für die Namensauflösung) und parallel dazu jeweils einen DNS-Server des Providers, der solange genutzt wird, wie der eigene DNS-Server mal nicht funktioniert bzw. vor dem Aufbau der VPN-Verbindung, wenn man die interne Adresse nimmt. Da dabei auch die Server-Adresse des Providers als zweiter Server statisch eingetragen werden muß, ist man allerdings bei Änderungen seitens des Providers gekniffen. Die gerne genommene Variante, da einfach einen Google-DNS-Server einzusetzen, finde ich persönlich suboptimal, die kriegen ohnehin schon zuviel mit.

Wenn sich AVM mal dazu entschließen könnte, die per DHCP ausgelieferte Domain konfigurierbar zu machen und den DNS-Server (nach innen) ebenso, wäre das alles wesentlich simpler zu lösen (besonders die Konfiguration zweier statischer DNS-Server in der FRITZ!Box kann ein echter Fallstrick sein). Aber ansonsten ist auch die Lösung mit dnsmasq eine denkbare Alternative, auch dafür braucht man nicht gleich immer unbedingt ein Freetz-Image. Das ist aber natürlich alles nicht für lau und ohne Beschäftigung mit der Materie zu haben und dürfte daher für die allermeisten eher ein paar Nummern zu groß sein. Aber für einen kleinen IT-Dienstleister, der den Überblick über die von ihm betreuten Schäfchen behalten will und dabei auch mal mehrere kleine Filialen o.ä. vernetzen muß, ist das m.E. eine gangbare Lösung, wenn man es mit FRITZ!Boxen realisieren will.
 
Zuletzt bearbeitet:
EDIT 20.06.2015:
MEINE FESTSTELLUNG BZGL. DES VOM KEEPALIVE_IP-PARAMETER ERZEUGTEN TRAFFICS KANN ICH IM MOMENT NICHT REPRODUZIEREN, DEN UNTEN STEHENDEN TEXT ZU DEN 128 BYTE ICMP-PAKETEN ALLE 4 SEKUNDEN ALSO BITTE ERST EINMAL IGNORIEREN, SOLANGE ICH DAS NICHT BELEGEN KANN, WAS ICH IM JANUAR OFFENBAR VERSÄUMT HABE.
DIE RECHENBEISPIELE ZU DEN ANDEREN PAKETGRÖSSEN/-INTERVALLEN BERÜCKSICHTIGEN DEN IPSEC-OVERHEAD AUCH NOCH NICHT, ES WIRD NUR DER LOKAL ERZEUGTE TRAFFIC VOR DER KAPSELUNG BERÜCKSICHTIGT.

Ich habe gerade noch ein wenig mit VPN-Konfigurationen gespielt und dabei festgestellt, daß die Verwendung von "keepalive_ip" durchaus nicht in jedem Falle eine gute Idee sein muß.

Mit dieser Option wird offenbar alle 4 Sekunden (7490 mit 06.23 zu 7390 mit 06.20) ein ICMP-Echo-Request mit einer Länge von 128 Byte gesendet, das zugehörige Reply-Paket hat dann natürlich auch eine Länge von 128 Byte. Das macht dann alle 4 Sekunden 256 Byte oder alle 16 Sekunden 1 KByte, was am Ende 15 * 256 Byte in der Minute = 3,75 KByte sind. Das klingt erst einmal nicht viel, aber wenn man dann weiter rechnet auf den Monat (60 Minuten x 24 Stunden x 30 Tage), sind das stolze 158 MByte alleine für die Keepalive-Pings. Bei einem kleinen Mobilfunk-Kontingent an Volumen (300 MByte gibt es schon mal irgendwo dazu), ist das schon mehr als die Hälfte des monatlichen Highspeed-Volumens nur für diese Keepalive-Pings. Mir war schon klar, daß da auch Daten übertragen werden müssen für diese Keepalives, aber ich hatte mehr mit einem Paket in 60 oder 90 oder sogar 120 Sekunden gerechnet und nicht mit 30 in 120 Sekunden. Für ein kleineres Mobilfunk-Volumen (selbst bei 1 GB sind das ja immerhin 15% des monatlichen Volumens) würde ich also auf die Verwendung von keepalive_ip tatsächlich verzichten und mir etwas anderes einfallen lassen. Ein per Script ausgelöstes Ping alle 120 (vielleicht sogar nur alle 180) Sekunden sollte für das Offenhalten von NAT-Connections locker ausreichen. Dann noch ein kurzes Paket (29 Byte für Request + 29 Byte für Reply bei einem Byte Payload für ICMP) und man hat den Keepalive-Overhead auf (29 * 2) * 30 * 24 * 30 Byte (~ 1,2 MByte) pro Monat gedrückt. Von Vorteil finde ich aber schon mal, daß offenbar nur von einer Seite aus der Ping erfolgt ... warum kann ich mir allerdings auch nicht so richtig erklären, denn keepalive_ip war auf beiden Seiten gesetzt.

Auch bei SIP-Nummern-"Mißbrauch" sollte man (bei Mobilfunk, woanders gibt es solche Volumenbeschränkungen ja fast nicht mehr) noch einmal innehalten und den Verbrauch schon im "Standby" einfach mal überschlagen. Ich habe z.B. einen Asterisk-Server, der checkt alle bei ihm angemeldeten Clients (auch solche, die per VPN über Mobilfunk registriert sind) im Abstand von 120 Sekunden (qualify=120). Dabei werden an jeden Client 626 Byte gesendet und 977 Byte empfangen. Das macht pro Rufnummer rund 33 MByte/Monat, alleine für die Überprüfung der Erreichbarkeit und der Roundtrip-Time. Das sind (VPN-Overhead mal dazu gerechnet und auf 40 Mbyte gerundet) 4% des monatlichen Volumens der an einer Stelle eingesetzten 1&1-Notebook-Flat mit 1GB pro Monat. Wenn der Asterisk-Server dort mit der Standardeinstellung für "qualify" arbeiten würde (das sind 60 Sekunden), wären das schon im Leerlauf fast 8% des monatlich zu Verfügung stehenden Highspeed-Volumens.

Und wie sieht es ohne Asterisk aus ? Eine Registrierung einer FRITZ!Box an einer anderen FRITZ!Box als SIP-Registrar wird im Abstand von 260 Sekunden erneuert, dabei fallen dann insgesamt 6 Pakete mit zusammen knapp 4 KByte an. Das macht dann im Monat auch wieder knapp 40 MByte ... zusammen mit einem Keepalive-Ping für eine VPN-Verbindung ergeben sich also für eine SIP-Registrierung einer FRITZ!Box an einer anderen alleine schon im Standby-Betrieb (da ist noch nicht ein einziges Sprachpaket oder ein Anruf dabei) knapp 200 MByte pro Monat, bei einem 1 GB-Tarif also schon 20% des Highspeed-Volumens. Da rechnet es sich also durchaus, wenn man diese Mechanismen etwas besser anpaßt. Ob die 260 Sekunden für die Erneuerung der Registrierung irgendwo einstellbar sind, weiß ich nicht, genauso wenig, ob der Verbrauch bei einer erfolgreichen Registrierung insgesamt höher ist oder ob es nicht beim Mißbrauch einer SIP-Registrierung als Initialzündung für eine VPN-Verbindung sogar günstiger ist, wenn da keine Antwort erfolgt, also bei einem nicht existierenden Registrar angefragt wird. Andererseits würde ich beschwören wollen, daß bei nicht erfolgreicher Registrierung das Intervall bis zum nächsten Versuch immer weiter verlängert wird und damit verliert diese Registrierung dann ja auch den angenehmen Nebeneffekt des "keepalive" (was dann sowohl für die Mobilfunk-Verbindung als auch für die VPN-Verbindung gilt). Interessanterweise werden die Registrierungen am Asterisk-Server von der FRITZ!Box nicht alle 260 Sekunden erneuert, da von dort ja die OPTION-Requests für "qualify" eintreffen. Ich würde also darauf tippen, daß das irgendein Timeout-Counter für die letzte Aktivität für jeden SIP-Account in der FRITZ!Box läuft und dieser die Reregistrierung nach den 260 Sekunden steuert, wenn solange keine Daten gesendet/empfangen wurden.

Als Fazit würde ich bei einer VPN-Verbindung, an der eine per Mobilfunk angebundene FRITZ!Box beteiligt ist, die auch noch ein begrenztes Volumen hat (da ist es eigentlich fast egal, ob das 300 MB oder 5 GB sind), auf beide Formen des Aufbaus einer VPN-Verbindung (also sowohl keepalive_ip als auch SIP-Registrierung) verzichten und lieber auf die wesentlich sparsamere Version mit einem 1-Byte-Ping alle 120 Sekunden setzen. Das läßt sich ziemlich gut in einem Skript abhandeln (die 120 Sekunden sind kein exorbitant langes "sleep") ... bleibt am Ende nur noch die Aufgabe, das irgendwie auf einer Box mit neuer Firmware und ohne debug.cfg ausführen zu lassen.

Auch die Sache mit der FRITZ!Box als WINS-Ersatz habe ich noch einmal getestet. Bei passender Konfiguration des NetBIOS-Filters für die VPN-Verbindung läßt sich tatsächlich der nmbd der entfernten Box ansprechen und auch bei Windows-Clients als WINS-Server hinterlegen. Wenn dann auch noch der Knotentyp für NetBIOS auf H-Node steht, wird zuerst per Broadcast in der lokalen Broadcast-Domain nach einem Windows-Namen gesucht und anschließend der WINS-Server befragt. Zumindest bei einem VPN mit nur einer Verbindung (also zwei gekoppelte Boxen) kann das als Weg genutzt werden, um auf die Geräte auf beiden Seiten der VPN-Verbindung über ihre Windows-Namen zuzugreifen (die nicht zwingend mit den DNS-Namen übereinstimmen müssen).

Das löst auch lange noch nicht alle Broadcast-Probleme, aber es stellt einen halbwegs einheitlichen NetBIOS-Namensraum bereit. Dann noch auf der FRITZ!Box einen vernünftigen DNS-/DHCP-Server wie dnsmasq und man kann sich die einzelne Konfiguration der Clients sparen, wenn man gleich per DHCP einen passenden WINS-Server mit bekanntmachen kann (das kann dann auch ein Samba-nmbd sein), inkl. des passenden NetBIOS-NodeTypes.
 
Zuletzt bearbeitet:
@PeterPawn: Meinst du mit SIP-Nummern-"Mißbrauch" die Lösung, die @andilano als "Dummy-VoiP-Nummer" in der UMTS-Fritzbox vorgeschlagen hat?

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

Dies sollte auf jeden Fall sparsamer im Datenverbrauch sein als die "keepalive_ip"-Sache und erfordert kein extra Ping-Skript, welches bei neueren Firmwares ohne debug.cfg nur schwer zu integrieren ist.
 
Meinst du mit SIP-Nummern-"Mißbrauch" die Lösung, die @andilano als "Dummy-VoiP-Nummer" in der UMTS-Fritzbox vorgeschlagen hat?
Jein.

Das Prinzip ist zwar dasselbe (Traffic verursachen, damit die VPN-Verbindung aufgebaut wird), aber da neuere Firmware auch die Zeitdauer zwischen zwei SIP-REGISTER-Versuchen bei Fehlschlägen sukzessive verlängert, ist das mit einer nicht existenten SIP-Nummer nicht unbedingt eine zuverlässige Lösung (so verstehe ich den von Dir verlinkten Thread). Ich würde so etwas also (unter Inkaufnahme der 40 MB/Monat) mit einer existierenden Telefon-Registrierung in der Gegenstelle (ich nehme mal an, wir reden hier von zwei FRITZ!Boxen, aber das gilt ansonsten für einen Asterisk-Server als Gegenstelle genauso) realisieren, allerdings würde ich - da wo ich es beeinflussen kann - auf der Server-Seite auf zusätzliches "qualify" für diesen Client verzichten, wenn das "Offenhalten" einer Verbindung durch die regelmäßigen SIP-Pakete der (UMTS-)FRITZ!Box ausreichend ist.

Und noch einmal, ich rede hier eigentlich nur über "Mobilfunk-Verbindungen", bei DSL dürfte das Volumen dieser Mechanismen heutzutage keine Rolle mehr spielen.

Zum "Zuverlässigkeitsproblem": Wenn aus irgendeinem Grund die UMTS-Verbindung neu gestartet wird (damit ist in aller Regel auch die UDP-NAT-Connection für das VPN beim Provider zu), dann kann es nach entsprechender Zahl von vorherigen Fehlversuchen schon mal eine Weile dauern, bis da eine neue Registrierung durch den voipd versucht wird, das hängt u.a. davon ab, ob der voipd über die Unterbrechung und Wiederaufnahme der Verbindung vom dsld benachrichtigt wird und daraus die Notwendigkeit eines neuen Versuchs (unabhängig von den bisherigen Fehlversuchen) ableitet (was meist nur passiert, wenn sich die "public IP" geändert hat, wenn ich das richtig getestet habe).

Findet seitens des voipd dann nicht sofort ein neues SIP-REGISTER statt, wird die VPN-Verbindung nicht neu gestartet (denn wir haben in diesem Kontext ja keine keepalive_ip konfiguriert, sonst müßten wir darüber ja gar nicht "reden").

Ob tatsächlich über IPSec-DPD bei "always_renew=yes" eine neue Verbindung aufgebaut wird (den DPD-Traffic habe ich oben ja genauso wenig berücksichtigt wie den Overhead durch eine VPN-Verbindung), hängt auch davon ab, ob das quasi "auf Anhieb" klappt ... wenn irgendwie während solch eines DPD-Versuchs die UMTS-Verbindung länger unterbrochen ist (so daß der Versuch des erneuten Aufbaus nach DPD-Timeout auch noch fehlschlägt), dann bleibt die VPN-Verbindung auch erst einmal "dicht", bis wieder ein Paket darüber übertragen werden soll. Meines Wissens gibt es dort keine "automatische Verbindung", solange "keepalive_ip" nicht gesetzt ist und "always_renew" wirkt (habe ich in einem anderen Beitrag mal getestet, irgendwas mit den "54 Minuten") irgendwie "komisch". Ich persönlich würde mich jedenfalls nicht darauf verlassen.

Dies sollte auf jeden Fall sparsamer im Datenverbrauch sein als die "keepalive_ip"-Sache und erfordert kein extra Ping-Skript, welches bei neueren Firmwares ohne debug.cfg nur schwer zu integrieren ist.
???
Ich dachte, das hätte ich oben "vorgerechnet", daß selbst SIP-Register mit funktionierendem Account mit ca. 40 MB sparsamer ist als "keepalive_ip". Wo stehe ich da jetzt auf dem Schlauch? Auch auf das Problem mit der debug.cfg bei neuerer Firmware habe ich doch hingewiesen? Ich bin im Moment etwas ratlos, was Du mir (oder uns) eigentlich sagen willst ... :noidea:

Meinung:
Ich habe selbst so eine FRITZ!Box auf dem WE-Grundstück im Einsatz und muß ehrlich sagen, daß ich mir das ohne eigene Skripte (das geht bei der Überwachung der UMTS-Verbindung los, denn die braucht schon ab und an mal "einen Schubs", notfalls sogar mit Box-Reboot, wenn der Stick komplett hängt) eigentlich nur sehr schwer vorstellen kann ... aber das muß ja jeder selbst wissen. Der "Einbau" der debug.cfg in eine Firmware ist ja nun eher keine große Sache ...
 
Zuletzt bearbeitet:
Vielen Dank für deine ausführliche Antwort.
Kurz noch eine Erläuterung, was ich vorhabe. Die UMTS-FRITZ!Box 7270 (OS 6.05) soll in Spanien stehen und per LAN-LAN-Kopplung mit meiner DSL-FRITZ!Box 7360 (OS 6.20) in Deutschland verbunden werden. Nur die DSL-Box hat eine öffentliche IP, die direkt über das Internet erreichbar ist. VoIP in der UMTS-Box wird nicht genutzt. Es geht mir alleinig darum, dass ich mich ab und zu von Deutschland aus auf das Netz in Spanien schalten kann und der Grunddatenverkehr durch den VPN-Tunnel soll einigermaßen gering sein. Mit dem AVM-Windows-Tool habe ich die Konfig-Dateien für die LAN-LAN-Kopplung angelegt (mit dem WebIF ging es nicht, da es in OS 6.20 Änderungen gegeben hat, die nicht mit dem OS 6.05 kompatibel sind). In der Konfig-Datei für die UMTS-FRITZ!Box habe ich "always_renew = yes eingetragen" und die Sache mit der "Dummy-VoIP"-Nummer. Das funktioniert bei meinen bisherigen Tests schon recht gut. Die UMTS-Box in Spanien soll später auch an einer Zeitschaltuhr hängen und somit gehe davon aus, dass diese auch nach einem Verbindungsausfall immer wieder erreiche. Ein Ziel von mir war auch, dass die Eingriffe in der FRITZ!Box minimal sind und somit eine spätere Firmware-Aktualisierung gewährleistet ist (ok, bei der 7270 kommt kein neues Update mehr). Die FRITZ!Box soll Ende dieses Monats nach Spanien geliefert werden und ich habe noch etwas Zeit für weitere Tests und eventuell lasse ich mich doch zu einem Reboot-Skript überreden. Aber bei einer Zeitschaltuhr fühle mich doch wohler.
 
das zugehörige Reply-Paket hat dann natürlich auch eine Länge von 128 Byte.
Das ist richtig, aber braucht man das denn? Zur Aufrechterhaltung des VPN sollte doch die Anfrage genügen.

Wenn man dort eine IP angibt die es nicht gibt, so spart man sich doch schon mal den halben Traffic, oder liege ich da falsch?
 
Das ist richtig, aber braucht man das denn? Zur Aufrechterhaltung des VPN sollte doch die Anfrage genügen.

Wenn man dort eine IP angibt die es nicht gibt, so spart man sich doch schon mal den halben Traffic, oder liege ich da falsch?

Deine Vermutung ist richtig. Wenn man im WeIF die Option "VPN-Verbindung dauerhaft halten" aktiviert, dann wird im Netz auf der Gegenstelle eine IP angepingt, die es nicht gibt z. B. 192.168.10.2 und somit spart man sich den halben Traffic
 
Wenn man dort eine IP angibt die es nicht gibt, so spart man sich doch schon mal den halben Traffic, oder liege ich da falsch?
Solange das AVM-VPN aus der fehlenden Antwort keine Schlüsse zieht (das macht es im Moment in der Tat nicht), halbiert das den Traffic.

Aber es ist am Ende immer noch wesentlich mehr, als es bei einem 1-Byte-Ping sein müßte ... grob geschätzte 160 MB (mit Antwort) oder 80 MB (ohne Antwort) sind immer noch ein heftiger Unterschied zu 1,2 MB (und zwar inkl. Antwort und damit inkl. Information, daß die VPN-Verbindung noch steht). Wenn einem die Arbeit bei der Modifikation der Firmware zu viel ist, muß man halt in den sauren (Traffic-)Apfel beißen.

Die Angaben oben zu den Datenmengen darf man auch nicht zu genau nehmen, die berücksichtigen ja den IPSec-Overhead noch gar nicht und sind damit ein wenig eine Milchmädchenrechnung, das ist schon klar, oder?

Das kleinste ICMP-Echo-Paket hat schon mal inkl. IP-Header 29 Byte - wie oben geschrieben. Das sind 20 Byte IPv4-Header + 8 Byte ICMP-Header + 1 Byte "Nutzlast".

Schon der minimale "Aufschlag" für eine Beförderung eines solchen Paketes per IPSec sind mal locker 66 Byte (AES/SHA - ohne Padding) ... wenn man das mal rechnen will, findet man hier Unterstützung.

Bei einer Mobilfunk-Verbindung kommen dann ggf. auch noch mal Encapsulations dazu (meist PPP, das wären weitere 8 Byte pro Paket), das berechnet so ein Provider eben alles in das übertragene Volumen mit ein (war jedenfalls bei T-D1 so, als ich das mal aufgedröselt habe, da hieß der Provider aber tatsächlich noch so, ist also eher nicht brandaktuell).

Damit wäre also schon mein 1-Byte-Ping am Ende nicht mehr bei 29 Byte pro Paket, sondern grob beim Vierfachen (104 Byte). Aber das sind - wenn ich mich nicht fürchterlich verhauen habe - immer noch deutlich weniger als die 158 MB (schon ohne Overhead) des AVM-Keepalives. Um auch das noch mal genauer zu rechnen (das Intervall kann man m.W. nicht einstellen):

Paketgröße: 128 Byte (ICMP-Paket mit allen Headern bis IPv4 nehme ich mal an (kann gerade nichts mitschneiden zur Kontrolle), das wären dann 100 Byte Payload, der Rest wären die Header) + 80 Byte IPSec-HeaderOverhead + 8 Byte PPP = 216 Byte pro Paket

Das dann alle 4 Sekunden = 15x pro Minute = 900x pro Stunde = 21.600x pro Tag = 648.000x pro Monat (30 Tage) ergibt in der Summe 648.000 x 216 = 139.968.000 Byte (133 MByte) nur für eine Richtung und es verdoppelt sich natürlich bei einer Antwort der Gegenstelle.

Das entscheidende Moment ist hier aber ohnehin nicht der IPSec-Overhead zzgl. des Overheads im Mobilfunk ... die hohe Frequenz dieser Pakete sorgt für die nicht unerhebliche Datenmenge. Selbst wenn man mit derselben Größe "pingt" und das auf 1 Paket in 120 Sekunden reduziert, sinkt damit ja der erzeugte Traffic schon so weit, daß man im gesamten Monat nur das verbraucht, was sonst an einem einzigen Tag aufläuft (4 Sekunden / 120 Sekunden = 1/30 des ursprünglichen Traffics).

EDIT:
Wenn man im WeIF die Option "VPN-Verbindung dauerhaft halten" aktiviert, dann wird im Netz auf der Gegenstelle eine IP angepingt, die es nicht gibt z. B. 192.168.10.2 und somit spart man sich den halben Traffic
Wie kommst Du auf diese Idee bzw. wie hast Du das angestellt? Normalerweise wird bei der VPN-Konfiguration über das GUI bei "dauerhaft halten" die erste IP im entfernten Netz als "keepalive_ip" verwendet. Wenn bei Dir da tatsächlich die .2 genommen wird, hast Du vermutlich das entfernte Netz falsch konfiguriert und für dieses die 192.168.10.1 anstelle der 192.168.10.0 angegeben?
 
Zuletzt bearbeitet:
Und das trügerische ist noch: Ich sehe diesen Traffic nicht im Online-Zähler der FB.
Dort wird wohl nur der Nutz-Traffic gezählt?
 
Dort wird wohl nur der Nutz-Traffic gezählt?
Eher nicht ... bleibt die Frage, welche Box es ist und welche Firmware installiert ist.

Vielleicht hat ja auch die Firmware an der Stelle einen Fehler und zählt nur den über den PA "beschleunigten" Traffic korrekt?

Da der beim "Eintritt" in die FRITZ!Box von der LAN-Seite ja noch nicht als "für extern bestimmt" identifiziert werden kann, ist es sicherlich davon abhängig, wann und wie dort die Zähler aktualisiert werden.

Da ja mit dem Packet-Accelerator ein großer Teil der Daten gar nicht mehr "durch" die FRITZ!Box geht (deshalb stimmen auch immer die Paket-Zähler in den "normalen" Linux-Tools nicht, wenn man die auf der FRITZ!Box verwendet), kann das eigentlich nicht an der Stelle erfolgen, wo der Verkehr in das "dev dsl" als Interface "eingespeist" wird, denn das wird bei "beschleunigten Paketen" ja umgangen. Dort werden aber wieder die IPSec-Pakete eingespeist und die sehen dann genauso aus wie von der Box selbst erzeugter Traffic. Ob der tatsächlich richtig gezählt wird (ist bei den meisten ja - wenn man VPN mal außer acht läßt - auch zu vernachlässigen, was die Box selbst an Traffic produziert), kannst Du ja wieder mit einem Download direkt von der Box aus testen. Wenn es um den Verkehr in Upstream-Richtung und die korrekte Zählung geht, könnte ein Upload über den "Online-Speicher" der Box ein interessanter Vergleich sein, denn der kommt eigentlich auch "aus der Box" und nicht vom LAN-Client - jedenfalls aus der Sicht des Netzwerks.
 
bleibt die Frage, welche Box es ist und welche Firmware installiert ist.
Die selbe wie bei der CGN Frage ;) FB7362SL mit 131.06.03

Ich werde die heute mal den ganzen Tag dran lassen ohne selber Traffic zu erzeugen und dann schau ich morgen mal, was der Zähler zeigt. Sollten ja nach deinen Schätzungen so ca. 5MB/Tag sein.

EDIT:
Ich habe gerade mal mitgetract.
Also bei mir heißt der NAT-keepalive und läuft nur aller 20s.
= 3x pro Minute = 180x pro Stunde = 4.320x pro Tag = 129.600x pro Monat (30 Tage)
also nur 1/5 deiner Datenmenge.

Der Parameter dafür müßte aber "use_nat_t = yes;" sein.
Denn der stand vor Jahren mal auf no, und da bauten sich meine DSL-VPN-LAN-Verbindungen noch ab. Das war noch eine ältere .exe zum einrichten.

Seit der neuen .exe steht der Parameter immer auf yes und kein VPN baut sich mehr ab.
Und im Trace sehe ich auf allen VPN Verbindungen (4*FB7170) aller 20s den NAT-keepalive,
immer von der FB die den VPN aufgebaut hat.

Bei der UMTS FB steht bei mir aber "always_renew = no",
trotzdem baut sie sofort nach boot oder Stick neu anstecken die Verbindung auf und hält sie.

EDIT2:
Bei mir sind diese ipsec-nat-keepalive Pakete auch so was von klein:
Ohne ATM: 52/51 Byte
Mit ATM: 62/61 Byte
Da komme ich bestimmt mit einigen KB pro Tag hin.

Mit ATM: (hab nur die MAC und IP zur Hälfte ausgeixt)
Request (aller 20s):
Code:
0000  aa aa 03 00 80 c2 00 07  00 00 00 1f 3f xx xx xx
0010  00 25 9e xx xx xx 88 64  11 00 28 59 00 1f 00 21
0020  45 00 00 1d ab 29 00 00  36 11 97 f9 02 c8 xx xx
0030  5c c8 xx xx 11 94 11 94  00 09 00 00 ff 00
Reply (0,15s nach Request):
Code:
0000  aa aa 03 00 80 c2 00 07  00 00 00 25 9e xx xx xx
0010  00 1f 3f xx xx xx 88 64  11 00 28 59 00 1f 00 21
0020  45 00 00 1d 53 38 00 00  40 11 e5 ea 5c c8 xx xx
0030  02 c8 xx xx 11 94 11 94  00 09 00 00 ff

Meine Schätzung liegt bei 16MB/Monat und das kann ich noch verkraften, auch mit der nur 100MB SIM.
Ich glaube weniger schaffst du auch kaum.
 
Zuletzt bearbeitet:
Das sind unterschiedliche Mechanismen ... "use_nat_t" hat mit dem von mir beschriebenen nichts zu tun (nur ggf. mit einem weiteren Keepalive für den NAT-Eintrag in irgendwelchen Routern dazwischen).

Das schaltet nur von der Benutzung von UDP 500 + ESP auf die (NAT-verträgliche) Form mit ausschließlicher Benutzung von UDP 4500 (ohne ESP als IP-Protokoll) um bzw. "erlaubt" diese, wenn beide Seiten feststellen, daß NAT-T (NAT traversal) verwendet werden sollte. Ob das AVM-"use_nat_f" nun ein "force_nat_t" ist oder nicht, ist mir auch nicht absolut klar, weil es ziemlich schwierig ist, eines "native" IPSec-Verbindung zu erzwingen und bei meinen Verbindungen eigentlich immer auch NAT-T verwendet wird (ist ohnehin "firewall-verträglicher" - nur ein Port - aber auch mit etwas mehr Overhead (8 Byte pro Paket) verbunden). Ich habe aber auch nie getestet, ob die Einstellung "use_nat_t = no;" nun die Verwendung von NAT-T "verbietet", auch wenn der Einsatz erforderlich wäre oder ob das mehr als "Hinweis" zu interpretieren ist. Das GUI erzeugt jedenfalls nur Verbindungen mit "use_nat_t = yes;", es gibt m.W. auch keine Einstellmöglichkeit dafür.

Wird dann NAT-T verwendet, braucht es dann auch einen "NAT-Keepalive" (wenn kein anderer Traffic vorhanden ist), damit eben die NAT-Router auf der Strecke diese Verbindung nicht schließen. Es gibt bei UDP ja kein "echtes Schließen" wie bei TCP (was dort mit FIN-Flasg in Paketen angezeigt wird) und so werden solche "UDP connections" in der Regel nach einer festgelegten Zeit ohne Traffic (aber vom Router und nicht in irgendeinem Standard festgelegt) als beendet entsorgt.

Das Keepalive, welches ich meinte, wird in der VPN-Konfiguration über den Parameter "keepalive_ip = <adresse im lan der gegenseite>;" ausgelöst (im GUI über die Einstellung "dauerhaft halten") und sollte - wenn AVM nichts geändert hat - in den erwähnten 4 Sekunden-Intervallen erfolgen.

Wenn Du das mit 7170 (und somit sehr alter Firmware) testest, können die Ergebnisse aber durchaus unterschiedlich sein (vielleicht funktioniert da "keepalive_ip" noch nicht einmal richtig bzw. so wie jetzt, denn "richtig" gibt es mangels Standardisierung nicht), denn meine Angaben beziehen sich auf die 7490 zum Zeitpunkt des Schreibens.

Wenn ich das früher nicht falsch getestet habe, wurde das Keepalive vom avmike erst dann gestartet, wenn da wirklich etwas zu "keepen" war (also die Verbindung schon aufgebaut war). Wie gesagt, die bei der 7170 anzunehmende 04.88 war beim VPN noch wesentlich anders, als es heute der Fall ist.

Kurz noch mal die Parameter (nach meiner Lesart und meinen Test, ich nehme Korrekturen gerne zur Kenntnis):

- use_nat_t -> NAT-Traversal (UDP/4500 anstelle von UDP/500+ESP) -> Auswirkungen etwas unklar, die verschiedenen Kombinationen müßte man mal testen, ich erzwinge in der Regel (wenn die Gegenstelle die Einstellung ermöglicht) NAT-T sogar
- keepalive_ip -> Start eines ICMP-Echo-Requests alle 4 Sekunden zu der angegebenen Adresse
- always_renew -> nach meiner Interpretation die Aufforderung, eine ablaufende SA auch dann zu erneuern (und damit die Verbindung fortzuführen), wenn kein weiterer Traffic "ansteht" -> funktioniert nach meiner Erfahrung nicht mehr reibungslos, u.a. wegen der vorzeitigen Erneuerung seitens der FRITZ!Box nach 54 Minuten

Also: use_nat_t hat damit nur am Rande zu tun und wenn man von seiten einer FRITZ!Box mit einer nicht erreichbaren Adresse einen zuverlässigen Verbindungsaufbau wünscht, sollte man auf der öffentlich erreichbaren FRITZ!Box keinen "remotehostname" konfigurieren (damit wartet diese Box auf eingehende IPSec-Verbindungen) und auf der Box ohne erreichbare Adresse irgendwelchen Traffic in Richtung der Gegenstelle automatisch (und regelmäßig, das "Wachstum" des Intervalls zwischen zwei erfolglosen SIP-Anmeldungen steht diesem "Mißbrauch" von SIP entgegen, wenn die Zeit bis zum Aufbau der IPSec-Verbindung relevant ist) erzeugen. AVM bietet dafür den "keepalive_ip"-Parameter an, wenn der Traffic eine Rolle spielt, sollte man den aber nicht benutzen.

Warum die UMTS-Box die Verbindung überhaupt startet (always_renew hat auf den ersten Verbindungsaufbau - meine Meinung, ich kenne aber die AVM-Quellen eben auch nicht - keinen Einfluß), wäre ggf. zu klären - einen "keepalive_ip"-Parameter verwendest Du ja wohl nicht. Manchmal reicht schon die Angabe des eines NTP-Servers auf der Gegenseite (von SIP ganz zu schweigen), um das für den Verbindungsaufbau erforderliche Paket in Richtung des Peers zu erzeugen.

EDIT: Einige Vertipper ... aber keine Zeit für Korrekturen, sorry - sonst nicht meine Art.
 
Zuletzt bearbeitet:
Wenn Du das mit 7170 (und somit sehr alter Firmware) testest, können die Ergebnisse aber durchaus unterschiedlich sein
Am UMTS ist aber eine FB7362SL (siehe erster Satz in #37), kann doch die FB7170 gar nicht OOTB.
Die habe ich über GUI eingerichtet mit und ohne Haken für "Verbindung halten".
Ohne Haken baut sie selbständig nach dem boot keine Verbindung auf. (keepalive_ip = 0.0.0.0)
Mit Haken baut sie sofort die Verbindung auf und hält sie auch (nun schon 20h). (keepalive_ip = 192.168.10.1)
Und so teste ich es z.Z. Dabei kann ich deine 4s Pings nicht feststellen.
Gegenseite am DSL ist allerdings eine FB7170. Liegt es daran?

Ja, in FB7170 habe ich den Parameter keepalive_ip nicht drin, das liegt aber an der .exe, die kennt den noch nicht.
Den Parameter gibt es erst seit man die Konfig mit der GUI erzeugen kann.

Und bei diesen ipsec-nat-keepalive Paketen bin ich mir eben nicht sicher, ob die im Online-Zähler mitgezählt werden.

Also ich bin mit meinem Testaufbau sehr zufrieden und kann gar nicht mehr verstehen wieso andere da solche Schwierigkeiten haben.

Aber gut, daß du auf die Problematik aufmerksam gemacht hast.
Vertrauen ist gut, Kontrolle ist besser.
Und so weiß ich, daß es zumindest bei mir unproblematisch ist.
 
Zuletzt bearbeitet:
Ich kann im Moment diese ICMP-Pakete tatsächlich auch nicht mehr finden (und dabei habe ich extra noch einmal die angegebenen Versionen der Firmware reaktiviert) - ja, das geht sogar so weit, daß ich trotz vorhandener keepalive_ip-Einstellung gar keine entsprechenden regelmäßigen Pakete innerhalb von 5 Minuten auf der "Routing-Schnittstelle" der 7490 mitschneiden konnte.

Auch auf der "1. Internet-Schnittstelle" (wo das ja nur noch als ESP zu sehen ist) finden sich keine regelmäßigen Pakete, die auf irgendein Keepalive (auch nicht die von Dir festgestellten 20 Sekunden) hinweisen würden. Allerdings ist das bei mir im Moment auch die UDP/500+ESP-Variante (also kein NAT-T), wie man im Mitschnitt sieht, wenn da anstelle eines UDP-Pakets von/an 4500 ein ESP-Paket verwendet wird.

In einem Mitschnitt von 163 Sekunden (1. Internetschnittstelle) finden sich nur 3 ESP-Pakete bei 106 Sekunden, 5 bei 108, 3 bei 112 und jeweils 2 bei 122, 123, 145 und 146 Sekunden. Da kann ich kein Schema für die Keepalives erkennen, für einen längeren Mitschnitt fehlt mir im Moment auch die Geduld/das Interesse.

Auf der anderen Seite bin ich mir ziemlich sicher, daß die damals beobachteten Pakete keine Fata Morgana waren und es sich auch nicht um einfache Ping-Aufrufe von irgendwelchen Netzwerk-Clients handelte.

Die Paketlänge war für "normales Ping" zu groß (Windows: 32 Byte ohne Änderungen = 60 Byte für das Paket, Linux: 56 Byte ohne weitere Angaben = 84 Byte pro Paket) und wenn ich das noch richtig in Erinnerung habe, stand da anstelle des üblichen Inhalts (bei Linux irgendwas in Hex mit monoton steigender Folge von 0x08 bis 0x37 drin und bei Windows die Kleinbuchstaben a bis w (23 Zeichen) und noch mal a bis i (9 Zeichen)) auch eine ständig wiederholte Zeichenfolge "PING" im Payload.

Das macht mich jetzt ein wenig ratlos, was ich da mitgeschnitten hatte. Andererseits kann ich die Verbindung, auf der der Mitschnitt erfolgte, im Moment nicht benutzen ... wenn die wieder zur Verfügung steht, schaue ich mir das glatt noch einmal an.

Ich bin mir schon relativ sicher, daß es keine zusätzlichen Prozesse gab, die diese Pakete erzeugt haben könnten - selbst ein SSH-Keepalive kommt eigentlich nicht in Frage, dafür gibt es eigene Mechanismen. Ich muß mal in Backups suchen, ob ich den Mitschnitt, auf dessen Basis ich den oben stehenden Beitrag geschrieben habe, noch finden kann - ich will ja keinen Unsinn stehen lassen, wenn ich mich tatsächlich vertan haben sollte. Wenn ich den Mitschnitt nicht mehr habe, muß ich versuchen, die Rahmenbedingungen korrekt zu reproduzieren. Ich setze dieses Problem hier auf Wiedervorlage und sehe es mir an, wenn ich mal wieder Langeweile habe.
 
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.