[Problem] Welche IP Adressen laesst die Fritz Box vom LAN rein? (Eingangsfilter?)

voipd

IPPF-Promi
Mitglied seit
5 Mai 2005
Beiträge
3,187
Punkte für Reaktionen
4
Punkte
38
Hallo zusammen,

ich sitze seit Stunden ueber einem Problem und da die FritzBox (7240 mit letzter Beta mit Telnet 73.06.04-27674) kein tcpdump kennt bin ich zu der Erkenntnis gekommen, dass sie einen Eingangsfilter hat, aber wie und wo? Aus der ar7.cfg werde ich nicht schlau.

Problem (nicht wundern)

ping 192.168.20.103
PC pingt mit 192.168.70.44 an 192.168.20.103 (GW 192.168.70.1 = FB) ---> FB mit 192.168.70.1 ---> OpenVPN 192.168.0.0/16 ---> andere Seite 192.168.20.103 (Ping kommt an)

ping 192.168.20.103 -S 192.168.71.44
PC pingt mit 192.168.71.44 an 192.168.20.103 (GW 192.168.70.1 = FB) ---> FB mit 192.168.70.1 ---> OpenVPN 192.168.0.0/16 ---> andere Seite 192.168.20.103 (Ping kommt NICHT an)

Der PC hat beide IP Adressen (192.168.70.44 und 192.168.71.44), GW ist IMMER die 192.168.70.1 . Die Absender IP kann man mit "ping -S IP Ziel" setzen.
Schon auf der Gegenseit beim empfangenden OpenVPN Geraet ist kein Paket zu sehen, also kommt es nicht aus dem Tunnel raus und schon gar nicht am Zielgeraet (192.168.20.103) an.

Das der andere Weg des Ping nicht geht ist schon klar. Das ganze ist ein Ringrouting und nicht Gegenstand der Betrachtung.

Hat jemand erhellende Ideen warum Pakete mit der 71er Netznummer nicht am Ziel ankommen? Filtert die FritzBox auf der Eingansseite? Wie, was, wo?

Wuerde mich ueber aufhellende Ideen freuen.

voipd.
 
Zuletzt bearbeitet:
voipd schrieb:
Hat jemand erhellende Ideen warum Pakete mit der 71er Netznummer nicht am Ziel ankommen?
Hast Du denn ein Gateway für die "71er Netznummer" ?

G., -#####o:
 
Ja, siehe oben. Die Absender IP ist doch egal. Das Ziel ist entscheidend ob das Paket ans GW geschickt wird oder lokal ausgeliefert wird.

IP: 192.168.70.44 und 192.168.71.44
GW: 192.168.70.1
NM: 255.255.255.0

Alles was nicht 192.168.70.0/24 ist geht ans GW.

BTW: Windows Firewall ist aus.


voipd.
 
Zuletzt bearbeitet:
Systematisch und mit Netzwerk-Mitschnitten eingrenzen ... den Weg, den ein solches Paket nehmen sollte, hast Du ja schon skizziert. Wenn es also an irgendeiner Station auf dem Weg erscheint und danach nicht mehr (OpenVPN läßt sich mittels Option so einstellen, daß jedes Paket protokolliert wird - nicht der Inhalt, aber das Senden/Empfangen an sich), dann geht es wohl an dieser Stelle verloren.

Die "stock firmware" enthält schon länger kein "tcpdump" mehr ... entweder man nimmt das AVM-Packetdump (das schaltet dann i.d.R. auch den PA ab, damit man wirklich alles sieht) oder man nimmt halt ein passendes Binary, das man außerhalb des SquashFS-Images aufruft - dabei darf man dann nicht auf dem Blick verlieren, daß einige Pakete durch den PA gar nicht erst bis zu der Stelle gelangen, an der sie protokolliert werden können.

Einen "Eingangsfilter" hat die Box bestimmt auch (ich tippe auch den MAC-PHY) ... da wird dann mit einem Diskriminator das Eingangssignal von Störungen "gesäubert". In dem Sinne, daß die Box irgendwelche Pakete generell ablehnt, die eine bestimmte IP-Adresse tragen, ist das garantiert nicht der Fall ... schon weil die Pakete per Ethernet hereinkommen (L2) und erst ab L3 überhaupt mit IP-Adressen hantiert wird. Eine Firewall, die die Box selbst nach innen von Netzwerkverkehr isoliert, gibt es (m.W.) nicht ... Deine Pakete gehen also mit hoher Wahrscheinlichkeit eher im Routing verloren und landen auf dem falschen Interface.

Schon die Frage, ob das TUN/TAP-Interface für OpenVPN nun Bestandteil der "lan"-Bridge ist oder nicht, wäre in diesem Zusammenhang von immenser Bedeutung ... genauso wie der Rest der OpenVPN-Konfiguration. Ohne ist das alles wieder das übliche Rätselraten und neben einem Zufallstreffer durch "Mitdenken" und Kenntnis, was die am häufigsten in diesem Falle von anderen gemachten Fehler sind, kann man eben nur allgemeine Ratschläge erteilen, die außer vielen Worten wenig Substantielles enthalten.

Das liegt sicherlich auch am eigenen Anspruch, ob man das jetzt lang und breit erläutert, warum das so ist oder nicht ... man kann es auch wesentlich kürzer fassen und mit zwei, drei Anstrichen auf den Punkt bringen:

- Netzwerk-Mitschnitte an den verschiedenen Punkten anfertigen (fehlen hier)
- komplette Konfigurationen (OpenVPN, Routing-Table, Interface-Konfigurationen) anhängen/einfügen (fehlen hier ebenfalls)
- "Eingangsfilter" gibt es nicht ... wäre bei einem Router auch ziemlich widersinnig, FW für's LAN fehlt auch im FRITZ!OS

Wenn das jetzt als "mangelnde Freundlichkeit" interpretiert wird, hat man aber auch wieder die A****karte gezogen.
 
Hallo PeterPawn,

da war doch schon viel hilfreiches drin. Deine Frage nach Netzwerkmitschnitten hatte ich mir schon gedacht, aber als nicht sinnvoll erachtet. Trotzdem reiche ich mal nach was ich habe.

Der PC: "route print" - Unspanned. PC mit 2 IP Adressen und einem Default GW.

Code:
IPv4-Routentabelle
===========================================================================
Aktive Routen:
     Netzwerkziel    Netzwerkmaske          Gateway    Schnittstelle Metrik
          0.0.0.0          0.0.0.0     192.168.70.1    192.168.70.44    266
        127.0.0.0        255.0.0.0   Auf Verbindung         127.0.0.1    306
        127.0.0.1  255.255.255.255   Auf Verbindung         127.0.0.1    306
  127.255.255.255  255.255.255.255   Auf Verbindung         127.0.0.1    306

     192.168.70.0    255.255.255.0   Auf Verbindung     192.168.70.44    266
    192.168.70.44  255.255.255.255   Auf Verbindung     192.168.70.44    266
   192.168.70.255  255.255.255.255   Auf Verbindung     192.168.70.44    266

     192.168.71.0    255.255.255.0   Auf Verbindung     192.168.70.44    266
    192.168.71.44  255.255.255.255   Auf Verbindung     192.168.70.44    266
   192.168.71.255  255.255.255.255   Auf Verbindung     192.168.70.44    266

        224.0.0.0        240.0.0.0   Auf Verbindung         127.0.0.1    306
        224.0.0.0        240.0.0.0   Auf Verbindung     192.168.70.44    266
  255.255.255.255  255.255.255.255   Auf Verbindung         127.0.0.1    306
  255.255.255.255  255.255.255.255   Auf Verbindung     192.168.70.44    266
===========================================================================
Staendige Routen:
  Netzwerkadresse          Netzmaske  Gatewayadresse  Metrik
          0.0.0.0          0.0.0.0     192.168.70.1  Standard
===========================================================================


Parallel auf dem PC "tcpdump -i any icmp" laufen lassen, waehrend in einem anderem Fenster ein Ping ausgefuehrt wird.

Code:
# ping 192.168.20.103 (Absender ist .70.44) - Es kommt eine Antwort.
16:05:24.764052 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 19, length 40
16:05:24.842056 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 19, length 40
16:05:25.770109 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 20, length 40
16:05:25.910117 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 20, length 40
16:05:26.776167 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 21, length 40
16:05:26.925175 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 21, length 40
16:05:27.782224 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 22, length 40
16:05:27.932233 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 22, length 40

# ping 192.168.20.103 -S 192.168.71.44 (Absender ist .71.44) - [B]Hier kommt keine Antwort, was ja auch zu erwarten ist.[/B]
16:05:43.331114 IP 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 23, length 40
16:05:48.302398 IP 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 24, length 40
16:05:53.300684 IP 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 25, length 40
16:05:58.296970 IP 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 26, length 40

Kann man tcpdump auf dem PC so einstellen, dass man sieht an welche Adresse das IP Paket geschickt wird?
Edit: "tcpdump -e" zeigt den Ethernetheader
Ansonsten ist zwischen dem PC und der Fritzbox nur ein passiver Switch.


Code:
# ping 192.168.20.103 (Absender ist .70.44) ([B]Pakete gehen brav zur Fritzbox[/B] Antworten kommen von dort wie erwartet zurueck)
16:58:04.294766 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 127, length 40
16:58:04.425774 00:1f:3f:e3:92:2b > 18:03:73:25:eb:5f, [...] 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 127, length 40
16:58:05.299824 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 128, length 40
16:58:05.371828 00:1f:3f:e3:92:2b > 18:03:73:25:eb:5f, [...] 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 128, length 40
16:58:06.304881 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 129, length 40
16:58:06.374885 00:1f:3f:e3:92:2b > 18:03:73:25:eb:5f, [...] 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 129, length 40
16:58:07.306939 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 130, length 40
16:58:07.406944 00:1f:3f:e3:92:2b > 18:03:73:25:eb:5f, [...] 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 130, length 40

# ping 192.168.20.103 -S 192.168.71.44 (Absender ist .71.44) ([B]Pakete gehen auch brav zur Fritzbox. Es kommen keine Anworten was auch so erwartet ist[/B])
16:58:19.998665 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 131, length 40
16:58:24.796939 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 132, length 40
16:58:29.795225 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 133, length 40
16:58:34.794511 18:03:73:25:eb:5f > 00:1f:3f:e3:92:2b, [...] 192.168.71.44 > 192.168.20.103: ICMP echo request, id 1, seq 134, length 40

Ethernet-Adapter LAN-Verbindung:
   Physikalische Adresse . . . . . . : 18-03-73-25-EB-5F (MAC Adresse des PC)
# arp -a
Schnittstelle: 192.168.70.44
  Internetadresse       Physische Adresse     Typ
  192.168.70.1          00-1f-3f-e3-92-2b     dynamisch (MAC Adresse der FritzBox)

Wegen besserer Lesbarkeit: [...] ersetzt diesen String "ethertype IPv4 (0x0800), length 74"


Die FritzBox. O2 (Alice) All-IP Anschluss mit 2. PVC fuer Telefonie. Die 77* 62* und 10* Adressen ist von Alice und haengen am DSL Interface.
192.168.39.62 ist die OpenVPN Verbindungs IP
192.168.0.0/16 Alles was 192.168er Netz ist und nicht lokal bleibt wird in den Tunnel gesteckt.

Code:
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt
# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
77.2.xxx.xxx    *               255.255.255.255 UH    2      0        0 dsl
192.168.180.1   *               255.255.255.255 UH    2      0        0 dsl
62.1xx.xxx.1    *               255.255.255.255 UH    2      0        0 dsl
192.168.39.62   *               255.255.255.255 UH    0      0        0 tun0 (Tunnel IP)
192.168.180.2   *               255.255.255.255 UH    2      0        0 dsl
62.1xx.xxx.2    *               255.255.255.255 UH    2      0        0 dsl
10.192.xxx.98   *               255.255.255.255 UH    3      0        0 dsl
10.192.xxx.102  *               255.255.255.255 UH    3      0        0 dsl
10.66.xxx.61    *               255.255.255.255 UH    3      0        0 dsl
192.168.179.0   *               255.255.255.0   U     0      0        0 guest
192.168.70.0    *               255.255.255.0   U     0      0        0 lan
169.254.0.0     *               255.255.0.0     U     0      0        0 lan
192.168.0.0     192.168.39.62   255.255.0.0     UG    0      0        0 tun0 (Tunnelrouting)
default         *               0.0.0.0         U     2      0        0 dsl
#

Auf der Fritzbox sehe ich eben leider nix. Nachdem ich nun den Mitschnitt nun auch auf mein FB hinbekommen habe (Richtige FB URL genutzt habe), hier der Beweis, dass am "lan" Interface der FritzBox beide Pakettypen ankommen. (Auch als Wireshark Screenshot angehaengt)

70_kommt_an.png71_kommt_an.png

Code:
# PC ping 192.168.20.103 (Absender ist .70.44)
16	0.490923	192.168.70.44	192.168.20.103	ICMP	74	Echo (ping) request  id=0x0001, seq=146/37376, ttl=128 (reply in 18)
18	0.560440	192.168.20.103	192.168.70.44	ICMP	74	Echo (ping) reply    id=0x0001, seq=146/37376, ttl=61 (request in 16)

# PC ping 192.168.20.103 -S 192.168.71.44 (Absender ist .71.44)
195	2.154848	192.168.71.44	192.168.20.103	ICMP	74	Echo (ping) request  id=0x0001, seq=252/64512, ttl=128 (no response found!)

Hier noch die unspannende OpenVPN Config von der Fritzbox. Wie gesagt: OpenVPN und das Routing funktionieren einwandfrei in jede Richtung!

Code:
nobind
remote dns-server-ip port (Gegenstelle)
route 192.168.0.0 255.255.0.0 (Was man in der Routingtabelle der FB sieht)
keepalive 10 60
persist-tun
persist-key
log-append openvpn.log (Wird nicht geschrieben. Warum weiss ich nicht)
proto udp
dev tun
ifconfig 192.168.39.61 192.168.39.62 (Verbindungs IP)
secret /var/media/secret.bin

<-- Bis zu dieser Stelle sieht alles gut aus. -->

Ich habe mal die "Routing-Schnittstelle" der FB mitgeschnitten. Da man vor lauter Traffic nicht wirklich sehen kann was da im Tunnel ruebergeht, habe ich mal mit uebergrossen Ping Paketen experimentiert um zu sehen ob man die auf der "Routing-Schnittstelle" wiederfinden kann. Kann man. ;-) Siehe auch Screenshot.

Code:
# PC: ping 192.168.20.103 -l 65500 (Absender ist .70.44)

70_fragmented.png

Wenn man HINGEGEN mit der Absenderadresse .71.44 ein grosses Pingpaket erzeugt ( ping 192.168.20.103 -l 65500 -n 1 -S 192.168.71.44 ), taucht es nicht in der "Routing-Schnittstelle" auf.

Code:
# ping 192.168.20.103 -l 65500  -n 1 (Absender ist .70.44)
594	8.781374	192.168.70.1	EXTERNE-IP	IPv4	1500	Fragmented IP protocol (proto=UDP 17, off=0, ID=c2b4) [Reassembled in #595]

# ping 192.168.20.103 -l 65500  -n 1 -S 192.168.71.44 (Absender ist .71.44)
[B]Es werden keine Fragmented IP Pakete auf der "Routing-Schnittstelle" gefunden. [/B]

Bedeutet das nun, dass diese Pakete gar nicht verarbeitet werden und schon gar nicht in den Tunnel gesteckt werden? Nicht das ich mir mit dem "Big Packets" ein Bein stelle?

Auf der OpenVPN Gegenseite kommt im ersten Fall was an und im zweiten Fall nichts.

Code:
# PC ping 192.168.20.103 (Absender ist .70.44)
16:28:41.823654 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 38, length 40
16:28:41.843249 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 38, length 40
16:28:42.866981 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 39, length 40
16:28:42.886808 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 39, length 40
16:28:43.834615 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 40, length 40
16:28:43.853953 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 40, length 40
16:28:44.841640 IP 192.168.70.44 > 192.168.20.103: ICMP echo request, id 1, seq 41, length 40
16:28:44.860921 IP 192.168.20.103 > 192.168.70.44: ICMP echo reply, id 1, seq 41, length 40

# PC ping 192.168.20.103 -S 192.168.71.44 (Absender ist .71.44)
Nix. :-(
[B]Hier sollten zumindest die (Absender-)Pakete (echo request) vom PC zu sehen sein, auch wenn der Rueckweg (echo reply) nicht funktioniert.
[/B]

So weit erstmal. Damit ist bewiesen sein, dass beide Typen von Paketen an der FritzBox ankommen und hinter der FritzBox aber der zweite Typ nicht rauskomt. Wo verschwindet er?

Vermutung im Moment: Verarbeitet die FritzBox doch nur Pakete die eine Absenderadresse aus dem eigenen (Sub-) Netz haben? (Also ein aehnliches Prinzip wie es die Windows Firewall anwendet)


Debugging mit OpenVPN? Habe ich noch nicht gemacht.


voipd.
 
Zuletzt bearbeitet:
Wohin ein Paket im Netzwerk gesendet wird, entscheidet ja die MAC-Adresse in diesem Paket. Da hilft also die ausführlichere Anzeige der Pakete - es gibt passende Optionen für tcpdump, wobei ich hier eher auf Wireshark setzen würde, da dort eben auch nachträglich das genauere Hinsehen auf den Inhalt der gespeicherten Pakete möglich ist ... notfalls kann man auch nachträglich mit Wireshark eine von "tcpdump" geschriebene Datei analysieren.

Wenn die "echo request"-Pakete nicht ankommen, werden sie wohl das tun0-Interface in der FRITZ!Box nicht erreichen (oder nicht in Pakete für diese Gegenstelle umgesetzt werden) ... wenigstens ob die überhaupt am "lan"-Interface der lokalen FRITZ!Box ankommen, solltest Du aber klären, sonst können sie ja gar nicht in den Tunnel wandern. Die sind dann allerdings auch in einem Packetdump für das "lan"-Interface der FRITZ!Box zu sehen und das wäre - neben dem Mitschnitt auf dem PC-Interface, ob die Pakete das System mit der MAC-Adresse der FRITZ!Box als Ziel verlassen - der nächste Schritt, der zu gehen wäre. Kommen sie auf der FRITZ!Box an, sieht man auch, welchen Inhalt sie haben. Dann kann man mit einem parallelen ausführlichen Log der OpenVPN-Instanz eben auch sehen, ob ein Paket gesendet wird - das wäre dann der Fall, wenn das per LAN ankommende Paket tatsächlich auf "tun0" landet und von der dann ins Spiel kommenden OpenVPN-Instanz auch tatsächlich an den richtigen Empfänger gesendet werden (die man dann auch wieder auf der "Routing-Schnittstelle" der FRITZ!Box in einem Packetdump sehen kann). Wie bereits geschrieben ... selbst wenn man den verschlüsselten Inhalt nicht mehr sieht, kann man immer noch erkennen, ob überhaupt ein Paket erzeugt wird, wenn man das Protokoll-Level beim OpenVPN entsprechend einstellt oder einen Mitschnitt mit den FRITZ!Box-Mitteln startet.

Warum Du dann auf der FRITZ!Box "nichts siehst" (oder hat die tatsächlich kein "packetdump"? - fritz.box/capture.lua), verstehe ich nicht ...
 
Hallo PeterPawn,

ich habe da mal was ergaenzt und oben eingefuegt. ;-)

Sowohl die Ethernetzieladresse (die FB) auf dem PC wird (wie erwartet) richtig gesetzt und auf der FritzBox kommen die Pakete am "lan" Interface auch richtig an. Siehe Wireshark.

... wenn das per LAN ankommende Paket tatsächlich auf "tun0" landet und von der dann ins Spiel kommenden OpenVPN-Instanz auch tatsächlich an den richtigen Empfänger gesendet werden (die man dann auch wieder auf der "Routing-Schnittstelle" der FRITZ!Box in einem Packetdump sehen kann).

In beiden Mitschnitten von "lan" finden sich keine Pakete die auf den OpenVPN -Tunnel hindeuten. D.h. selbst bei den dem funktionierenden 70er Ping kommen die eingepackten Pakete nicht (wieder) am "lan" Interface der FB vorbei. Das "tun" Interface der FB kann ich mit der FB nicht mitschneiden obwohl es in der Uebersicht in der Web Gui auftaucht.

Nachdem ich jetzt verstanden habe :???: verstehe ich es auch. Auf der "Routing-Schnittstelle" ist aber zu viel Traffic, da dortrueber auch die Remote VNC Sitzung ruebergeht und ich diese nicht filtern kann (Ist ja Sinn und Zweck des Tunnels). Der OpenVPN Tunnel ist auch noch mit weiteren Verbindungen belegt und es geht kontinuierlich Traffic darueber.

Gibt es da noch eine Idee wie ich diese eingepackten ICMP Pakete aufspueren kann? Mit der Groesse der Pakete vielleicht? Ich habe mal mit Grossen Paketen experimentiert um zu sehen ob man die auf der "Routing-Schnittstelle" wieder finden kann. Kann man? Siehe oben. Solange ich keinen Fehler gemacht habe, wuerde das bedeuten, dass die Pakete mit der .71.44 nicht im Tunnel auftauchen.


voipd.
 
Zuletzt bearbeitet:
Ne, das ist mir tatsächlich zu unübersichtlich ... das mit den weiteren Verbindungen über den OpenVPN-Tunnel habe ich mir schon fast gedacht.

Entweder Du stellst Dir einen Versuchsaufbau hin, bei dem eben kein weiterer Verkehr über den fraglichen Tunnel geht (dann kann man sich das mit den übergroßen Paketen ja klemmen, dann kann man anhand der IP-Adresse der OpenVPN-Gegenstelle filtern bei der Anzeige) oder Du mußt Dir eben etwas anderes einfallen lassen. Der dritte Screenshot ist jedenfalls gfA, da kann man nicht einmal erkennen, was da von wo nach wo übertragen werden soll ... sprich, ob das nun die interne Seite von "dev dsl" (aka Routingschnittstelle) oder die externe (aka 1. Internetverbindung) ist ... ich würde zwar auf ersteres tippen, weil da noch reservierte IP-Adressen zu sehen sind, aber wieso da von der 70.1 irgendwelche fragmentierten UDP-Pakete irgendwohin gehen sollten, verstehe ich beim besten Willen nicht.

Eigentlich müßte das bereits vom OpenVPN in kleinere Pakete (entsprechend der Tunnel-MTU) aufgeteilt werden, wenn das tatsächlich für den OpenVPN-Tunnel eingepackter Traffic ist. Damit dürfte (nach meinem Verständnis, aber Du hast sicherlich die Gegenprobe mit den überlangen Paketen von der 70.44 ebenfalls gemacht und nur vergessen, deren Ergebnis zu erwähnen oder das ist - zumindest für mich - aus den Ergebnissen irgendwelcher Kommandos, die erkennbar nicht das Produkt des davor stehenden Kommandos sein können, nicht ersichtlich) das eher nicht für den Tunnel bestimmt sein. Ist das denn nun verschlüsselter Payload oder nicht, auch das kann man ja nur erraten.

Wie gesagt, hier verliere ich auch die Lust am Mitdenken ... dann mußt Du eben mal die anderen Receiver bzw. die Verbindungen dorthin abschalten, damit Du das richtig testen kannst. Wenn da nichts anderes über OpenVPN unterwegs ist, erscheint mit passenden OpenVPN-Einstellungen für jedes gesendete und empfangene UDP-Paket eine Meldung im OpenVPN-Protokoll (vielleicht solltest Du ja auch das erst einmal auf die Reihe bringen).
 
Ne, das ist mir tatsächlich zu unübersichtlich ... das mit den weiteren Verbindungen über den OpenVPN-Tunnel habe ich mir schon fast gedacht.Entweder Du stellst Dir einen Versuchsaufbau hin, bei dem eben kein weiterer Verkehr über den fraglichen Tunnel geht (dann kann man sich das mit den übergroßen Paketen ja klemmen, dann kann man anhand der IP-Adresse der OpenVPN-Gegenstelle filtern bei der Anzeige) oder Du mußt Dir eben etwas anderes einfallen lassen.

Eben und das habe ich gemacht indem ich mit grossen Paketen agiert habe.

Der dritte Screenshot ist jedenfalls gfA [Anm.: was ist gfA], da kann man nicht einmal erkennen, was da von wo nach wo übertragen werden soll ... sprich, ob das nun die interne Seite von "dev dsl" (aka Routingschnittstelle) oder die externe (aka 1. Internetverbindung) ist ... ich würde zwar auf ersteres tippen, weil da noch reservierte IP-Adressen zu sehen sind, aber wieso da von der 70.1 irgendwelche fragmentierten UDP-Pakete irgendwohin gehen sollten, verstehe ich beim besten Willen nicht.

Schwarz uebermalt ist immer die IP Adresse der OpenVPN Gegenstelle. ;-) Die Pakete die da ausgetauscht werden erkennt man auch am Protokoll UDP. Die anderen Zeilen sind aber spannender.
Die Pakete mit dem Protokoll "IPV4" sind die fragmentierten Pakete. Und hier wird es Spannend. Man muss den Tunnel im ersten Moment garnicht betrachten! Die Pakete tauchen NUR auf wenn ich mit 192.168.70.44 ein Paket zur Fritzbox schicke. Wenn ich aber ein Paket mit 192.168.71.44 zur Fritzbox schicke tauchen diese Zeilen erst garnicht auf!
Soll heissen: Die Fritzbox bearbeitet gar keine Pakete mit der .71.44 als Absenderadresse! Da wird wohl doch vorher ausgesiebt?!?!

Du kannst es selber ausprobieren: Schick ein grosses Paket wie "ping 192.168.20.103 -l 65500" an/durch die Fritzbox und schau dir die "Routing-Schnittstelle" an. Dann siehst du an dieser Stelle eben diese Zeilen.

Eigentlich müßte das bereits vom OpenVPN in kleinere Pakete (entsprechend der Tunnel-MTU) aufgeteilt werden, wenn das tatsächlich für den OpenVPN-Tunnel eingepackter Traffic ist. Damit dürfte (nach meinem Verständnis, aber Du hast sicherlich die Gegenprobe mit den überlangen Paketen von der 70.44 ebenfalls gemacht und nur vergessen, deren Ergebnis zu erwähnen oder das ist - zumindest für mich - aus den Ergebnissen irgendwelcher Kommandos, die erkennbar nicht das Produkt des davor stehenden Kommandos sein können, nicht ersichtlich) das eher nicht für den Tunnel bestimmt sein. Ist das denn nun verschlüsselter Payload oder nicht, auch das kann man ja nur erraten.

Ich habs doch so schoen zusammengefasst. ;-) Und die Infos im Beitrag passen schon. Hier nochmal in Kurzform:

Code:
PC: ping 192.168.20.103 -l 65500  -n 1 (Absender ist .7[B]0[/B].44) - Erzeugt im Routinginterface die "Fragmented IP" Zeilen

PC: ping 192.168.20.103 -l 65500  -n 1 -S 192.168.71.44 (Absender ist .7[B]1[/B].44) - Erzeugt im Routinginterface [B]KEINE[/B] "Fragmented IP" Zeilen. Also keine Verarbeitung der Pakete!

Aus meiner Sicht sind wir da noch nicht im Tunnel.


Wie gesagt, hier verliere ich auch die Lust am Mitdenken ... dann mußt Du eben mal die anderen Receiver bzw. die Verbindungen dorthin abschalten, damit Du das richtig testen kannst. Wenn da nichts anderes über OpenVPN unterwegs ist, erscheint mit passenden OpenVPN-Einstellungen für jedes gesendete und empfangene UDP-Paket eine Meldung im OpenVPN-Protokoll (vielleicht solltest Du ja auch das erst einmal auf die Reihe bringen).

Schade. ;-) Das kann ich vielleicht machen wenn ich vor Ort bin und nicht ueber den Tunnel zugreifen muss, ABER aus meiner Sicht ist der Tunnel (noch) aussen vor, da bereits Pakete mit der .71.44 nicht verarbeitet werden. - Wie das mit dem OpenPVN Logfile und der Ablage auf dem USB-SD-Karte an der Fritzbox geht muss ich aber noch herausfinden.



BTW: Querverweis zu dem Beitrag wo die Fritzbox am LAN Interface zwangsweise ein Passwort abfragt, wenn die IP Adresse NICHT aus dem eigenen Subnetz stammt!
Damit ist bewiesen, das zumindest in diesem Fall die Absender IP einen Einfluss auf die Verarbeitung in der Fritzbox hat, auch wenn die Anfrage auf der gleichen Schnittstelle (Ethernet) reinkommt und die gleiche Funktion (Web Gui) aufruft wird eine andere Aktion ausgefuehrt. Zum einen der Login ohne Passwortabfrage (wenn so konfiguriert) und zum anderen der Login zwangsweise immer mit Passwort.




Erstmal Danke fuer die Ideen.


voipd.
 
Zuletzt bearbeitet:
Du kannst es selber ausprobieren: Schick ein grosses Paket wie "ping 192.168.20.103 -l 65500" an/durch die Fritzbox und schau dir die "Routing-Schnittstelle" an. Dann siehst du an dieser Stelle eben diese Zeilen.
Wenn das also die "Routing-Schnittstelle ist, wo diese Pakete auftauchen, dann ist das eigentlich falsch. Diese Pakete kommen über "dev lan" herein und müßten jetzt eigentlich vom Routing-Code (nicht mit "Routing-Schnittstelle" verwechseln) an das "dev tun0" gesendet werden. Von dort kriegt sie dann die OpenVPN-Instanz, die ihrerseits das ganze in UDP-Pakete kapselt und dabei bereits selbst irgendwelche Fragmentierungen behandeln sollte. Diese UDP-Pakete gehen dann (mit der internen IP der FRITZ!Box) an die externe Adresse des OpenVPN-Peers und dabei werden sie zuerst auf der Routing-Schnittstelle sichtbar. Nachdem die FRITZ!Box dann die interne IP gegen die externe Adresse ausgetauscht hat, tauchen die Pakete auf der "1. Internetverbindung" auf.
Wenn jetzt ein OpenVPN-Tunnel nur eine MTU von 1380 hat, macht es ja keinen Sinn, da 1500 Byte und mehr durchzujagen (so sieht das jedenfalls im dritten Screenshot aus), weil die gar nicht über diese zugrunde liegende Transport-Verbindung gehen könnten. Solche Techniken wie PMTU-Discovery funktionieren auch nur dann, wenn die Antworten der Gegenstelle den Absender überhaupt erreichen können.

Also keine Verarbeitung der Pakete!
Aus meiner Sicht sind wir da noch nicht im Tunnel.
Vielleicht begründest Du diese Sicht ja dann auch einfach einmal, anstatt sie nur zu postulieren - wieso sollte denn ein Paket, das noch gar nicht "im Tunnel ist", die interne IP der FRITZ!Box (70.1) anstelle der des Absenders (70.44) haben, wenn es nicht schon durch OpenVPN durch ist? Auf die Antwort bin ich mal mächtig gespannt ...

Die logischere Erklärung wäre hier für mich erst einmal, daß einfach das OpenVPN nicht mit dem Paket klarkommt und es deshalb verwirft. Auch dann dürfte auf der "Routing-Schnittstelle" eben nichts ankommen, weil da kein Paket vom OpenVPN erzeugt wird, das an irgendeine externe Adresse gehen soll. Sollte das so sein, steht bestimmt etwas dazu im OpenVPN-Protokoll (ab ausreichendem Loglevel) ... insofern ist das mit dem funktionierenden Protokoll die Basis irgendwelcher Tests und nichts, was man mal bei Gelegenheit suchen kann.

Meines Wissens prüft die FRITZ!Box aber (solange der PA nicht im Spiel ist) auch gar keine IP-Adressen, es dürfte also keinen Konflikt geben, weil das Paket von der 192.168.71.44 auf einer Schnittstelle hereinkommt, wo es eigentlich nichts zu suchen hat, denn nach Deiner Routing-Tabelle ist dieses Netz ja hinter "dev tun0".

Den "Querverweis" verstehe ich nicht mal annähernd von seinem Zusammenhang her ... das sind zwei vollkommen verschiedene Paar Schuhe. Bei der "Login"-Entscheidung wird u.a. auch herangezogen, über welches Interface das anfragende System zu erreichen ist. Wenn das (wie bei Dir dann offenbar) eben nicht "dev lan" ist, dann wird halt ein Login gefordert. Bei Dir wäre das ja eindeutig "dev tun0", dem jeder Absender aus 192.168.0.0/16 zugeordnet würde und auch bei jeder (AVM-)VPN-Verbindung für einen FRITZ!Box-Benutzer existiert eben ein dedizierter Eintrag in der Routing-Tabelle, der für die IP-Adresse dieses VPN-Clients "dev dsl" als Ziel vorgibt.

Wenn Du jetzt eine Route zur 192.168.71.44 (egal ob als Host oder Subnetz) einrichtest, die wieder auf "dev lan" zeigt, dann gäbe es (mit einiger Sicherheit) auch keine Login-Abfrage mehr, wenn Du von der 71.44 ein Login aus dem LAN versuchst - zumindest sollte das so sein. Welche FRITZ!OS-Version Du allerdings verwendest, habe ich auch bei dritten Lesen des gesamten Threads nicht gefunden (oder ich bin doch zu blöd, es zu verstehen) - aber von derartigen Unterschieden innerhalb einer Version habe ich bisher auch noch nichts gehört; zwischen verschiedenen Versionen allerdings schon.

So ein fehlender Eintrag in der Routing-Table der FRITZ!Box könnte auch problemlos der Grund sein, warum Dein PC gar keine Antwort erhält. Selbst irgendwelche ICMP-Pakete, die über Probleme bei der Übertragung von Paketen informieren könnten (u.U. auch vom OpenVPN generiert), landen ja an der falschen Stelle, wenn sie von der oder über die FRITZ!Box kommen, weil sie von dieser wieder in den Tunnel geschickt würden.

Diese 88-Byte-Pakete nach den 1500-Byte-Paketen sehen jedenfalls auch extrem komisch aus im dritten Screenshot (vielleicht gelingt Dir ja doch noch die Angabe, von welcher Schnittstelle dieser Mitschnitt denn nun stammt und welches Kommando auf dem PC er darstellen soll) ... aus der nachgeschobenen Erklärung kann man zwar raten, daß wir da vermutlich den Fall des Pings mit diesen Riesenpaketen von der 70.44 sehen (da hätte einfach eine klipp und klare Erklärung, welcher Verkehr da tatsächlich sichtbar ist, geholfen - genau das habe ich mit meiner Bemerkung, daß man eben dem Screenshot nicht ansehen kann, welchen Fall er nun darstellen soll, gemeint und dabei bleibe ich auch), aber raten ist nun mal nicht wissen.

Da dürfte trotzdem niemals eine Antwort auf diese überlangen Pakete von der Gegenstelle auftauchen, selbst wenn Du die von der 70.44 verschickst ... auch dazu ist nichts in Deinem Text zu finden und die beiden ersten Screenshots zeigen ja "normal große" ICMP-Pakete (hier fehlt auch der Zusammenhang zum dritten). Für mich sieht das eher danach aus, daß da vom OpenVPN irgendwelche Pakete erzeugt werden, die schon von der Größe her (1500 Byte) nicht über die WAN-Leitung gehen könnten und die entsprechenden ICMP-Pakete für irgendwelche Paketverluste (dest unreachable) werden dann ganz brav in ein OpenVPN-Paket verpackt und über den Tunnel an den Absender 192.168.71.44 als Information gesendet. Vielleicht schneidest Du ja einfach mal auf dem OpenVPN der Gegenseite mit (das wird ja hoffentlich nicht auch remote sein), welche Pakete sich denn in diesen UDP-Paketen von 88 Byte Länge verbergen - wenn die auf der anderen Seite dekodiert werden und es handelt sich um ICMP Typ 3, dann weißt Du, was Sache ist. Wenn das in den 88 Byte die Fortsetzung für jeweils ein verpacktes "ICMP-Paket" ist (so ein Paket von 65000 Byte geht selbst mit "jumbo packets" nicht über das Ethernet-Kabel vom PC zur FRITZ!Box, da wird schon vom PC fragmentiert, damit es für den Link zur FRITZ!Box paßt) und die 1500 Byte langen sind jeweils der erste Teil eines solchen OpenVPN-Pakets, dann ist erkennbar die Tunnel-MTU falsch, denn 1588 Byte wären in jedem Falle zuviel.

Selbst wenn das ein Kabelanschluß mit der vollen MTU von 1500 sein sollte, erklärt das immer noch nicht, um was für Pakete es sich bei den "IPv4"-Paketen mit 1500 Byte Länge im dritten Screenshot handeln soll (BTW: gfA = glatt für'n A****) - dankenswerterweise zeigt auch die Detailansicht im unteren Teil ein Datenpaket, was erkennbar weder mit den fragmentierten Paketen noch mit den 88 Byte langen UDP-Paketen etwas zu tun hat. Ein ordentlich konfiguriertes OpenVPN hat eine MTU für den Tunnel und gibt die auch bei PMTU-Discovery weiter, so daß die beteiligten Peers ihrerseits dafür sorgen können, daß alle Datenpakete, die zu tunneln sind, eine Größe haben, die Platz für die zusätzliche UDP-Kapselung (und die Protokoll-Informationen des OpenVPN selbst) läßt. Ein ganz entscheidender Satz in der OpenVPN-Dokumentation ist es für mich nämlich, daß dort "OpenVPN requires that packets on the control or data channels be sent unfragmented." steht. Wenn mich die Erinnerung nicht täuscht, darf einfach niemand nach dem OpenVPN selbst mehr an den Paketen herumspielen (auch nicht ein Paket in zwei Fragmente zerlegen), weil dann die Integritätsprüfung auf der anderen Seite beim Empfang das Paket schon verwirft und diese zwei Fragmente gar nicht wieder zu einem einzelnen Paket assembliert werden. Was errechnet denn Deine OpenVPN-Instanz für eine "tun_mtu", wenn Du offenbar keine eigene Angabe machst und damit von einer "link_mtu" von 1500 ausgegangen wird (was dann auch zur Paketgröße im dritten Screenshot passen könnte)? Bist Du denn sicher, daß diese Pakete auch tatsächlich in voller Schönheit an der Gegenstelle ankommen (sprich, daß dort ebenfalls eine MTU von 1500 auf der physikalischen Verbindung verwendbar ist und es sich dort nicht etwa um einen DSL-Anschluß mit einer kleineren MTU (1492 wegen des zusätzlichen PPPoE-Headers oder sogar noch weniger bei einigen Providern, wenn da zusätzliche Kapselungen verwendet werden) handelt?

Wenn Du angesichts dieser offenen Fragen meine Unlust für irgendwelche Ratespielchen nicht nachvollziehen kannst, tut es mir leid ... anhand Deiner Schilderung kann ich jedenfalls nicht einmal klar erkennen, was tatsächlich das Ergebnis eines Tests ist (bzw. welches Ergebnis zu welchem Test gehört) und was davon Deine eigene Interpretation anderer Ergebnisse ist und vor allem welche anderen Ergebnisse Dich zu solchen Schlußfolgerungen gebracht haben. Der "Fettdruck" nach dem blauen Text oben führt jedenfalls bei mir zu dem Eindruck, daß Du Deine ziemlich feststehende Ansicht hast, die FRITZ!Box müsse da irgendetwas "filtern" (und es liegt nicht nur an einer Fehlkonfiguration Deinerseits) und jetzt interpretierst Du alle Feststellungen immer fleißig so, daß sie zu dieser Ansicht passen. Da ist es dann schade um die Zeit, ggf. sogar schon um diese - wieder zu ausführliche - Antwort.

Wenn Du ergebnisoffene Tests machen willst und dann auch die dabei benutzten Schritte und die erzielten Ergebnisse so erläutern willst, daß man Dir folgen kann (vielleicht können es ja andere tatsächlich, so wie es oben schon steht, begreifen - ich kann es eben nicht bzw. ich habe keine Lust zum "Interpretieren"), dann denke ich auch wieder mit ... ansonsten bringt das ohnehin wenig bis nichts. Wieso Du solche überlangen IP-Pakete (die irgendwo ja wieder in handliche Portionen zerlegt werden müssen) für eine valide Anzeige hältst, ob da nun ein Paket beim OpenVPN ankommt oder nicht, will ich lieber gar nicht erst fragen (gerade angesichts der MTU-Problematik bei solchen VPN-Geschichten, wo man schon vorsichtshalber die jeweiligen MTUs reduzieren sollte, falls PMTUD nicht funktioniert) ... da alle Deine Screenshots ja erkennbar das Ergebnis eines Anzeigefilters sind (steht ja schön in grün oben drin), kann man auch nicht mal ansatzweise einschätzen, was so ein Paket für zusätzliche Reaktionen ausgelöst haben könnte. Wenn Du einen validen Test mit ausreichend großen Paketen willst (warum ICMP als Protokoll für die Unterscheidung nicht ausreichend ist, wirst Du sicherlich auch noch erklären), dann teste ordentlich mit einem Ping und "don't fragment", bis Du eine definitive max. Paketgröße hast, die über diese Verbindung übertragen werden kann ... dann kannst Du später auch die Absenderadresse wechseln.
 
Zuletzt bearbeitet:
@voipd: Vielleich habe ich hier einen Denkfehler, aber das kann doch gar nicht funktionieren.

Wenn Du das PC-Netzwerkinterface 192.168.70.44 deaktivierst und dann die FB 192.168.70.1 mit dem verbleibenden Interface
192.168.71.44 anpingst, gehe ich davon aus, dass Du auch keine Antwort bekommst.
Wie soll das auch gehen, wenn die FB nicht weiß, wie sie Daten in das 192.168.71er Netz senden soll? Dazu müsste sie eine statische Route haben und einen GW in ihrem Netz kennen, der ins 192.168.71er Netz führt.
 
Zuletzt bearbeitet:
@DieWilde13: siehe #2 ff. Das ist es wohl nicht.

G., -#####o:
 
@scolopender: Doch, doch.

Was hat voipd konfiguriert:

1) Unter Windows hat er seiner LAN-Karte eine feste IP 192.168.70.44 mit Subnet 255.255.255.0 und FB als Gateway 192.168.70.1 gegeben.
2) Nun hat er dieser LAN-Karte eine weitere IP-Adresse zugeordnet nämlich 192.168.71.44/255.255.255.0 ... kann man ja unter Windows so konfigurieren.

Dies ergibt exakt das "route print"-Ergebnis aus Beitrag #5.

Nun weiß Windows, wie es Pakete zwischen den Netzen 192.168.70.0 und 192.168.71.0 routen muss, aber die Fritzbox nicht! Antworten von außerhalb an das Netz 192.168.71.0 kann sie nicht zuordnen; evtl. wird es schon beim Senden nach Außen zu gar keinem NAT-Eintrag kommen, wenn die FB nicht weiß, wie sie das ihr fremde interne Netz erreichen kann. Was ihr fehlt ist ein statischer Route Eintrag:

Netz 192.168.179.0/255.255.255.0 ist über Gateway 192.168.70.44 zu erreichen. In meiner 6360 als auch 7390 kann ich so etwas konfigurieren.
 
Zuletzt bearbeitet:
Diese Antwort auf das Ping an die lokale FRITZ!Box wird tatsächlich nicht eintreffen, denn die Box würde eine Antwort wegen der Route 192.168.0.0/16 über tun0 verschicken wollen - so die Routing-Table im vierten Kasten in #5 stimmt. Wenn sich #2 tatsächlich auf die Route/das Gateway auf dem sendenden System (PC mit der .44 hinten) bezog, ist die Aussage in #3 schon richtig ... Pakete an Adressen, die nicht zum lokalen Segment gehören (wo per ARP aufgelöst wird), werden an das Standardgateway auf L2 adressiert (d.h. die IP-Adressen auf L3 bleiben unverändert, aber es wird per ARP nach der MAC-Adresse des Gateway anhand von dessen IP-Adresse gesucht und diese MAC-Adresse dann in das Ethernet-Paket übernommen) und das kann dann sehen, was es damit macht.

Wenn sich der Einwand in #2 wie der in #11 auf die FRITZ!Box bezog, ist er richtig ... Pakete mit einer 192.168.71.0/24-Adresse auf L3 kann die FRITZ!Box nicht an den PC zustellen, auch keine "echo reply"-Pakete.

Das ist aber wohl gar nicht das Ziel, ich kann jedoch mit dem Begriff des "Ringroutings" aus #1 auch nichts wirklich anfangen - habe nur meine eigene Vorstellung, was das sein könnte.

Letztlich könnte es tatsächlich funktionieren, in einem Verbund von drei Standorten A, B und C i.V.m. einem Client "Anton" am Standort A ein Paket für eine Adresse an B zu senden, bei dem die fällige Antwort (oder sogar das Paket selbst, wenn sich das Ziel gar nicht bei B befindet) über C an A und von dort an Anton zurück gelangt. Das kann aber natürlich nur dann klappen, wenn alle Abschnitte dieses Weges gleichzeitig funktionieren.

Im Moment denkt voipd offenbar eher daran, erst einmal nur einen einzelnen Abschnitt (von A nach B) in Betrieb zu nehmen ... damit gehen natürlich sämtliche Fehlermeldungen auch verloren, denn die gelangen eben von A nach B (die Box bei A denkt ja, der Absender 192.168.71.44 befände sich irgendwo dort) und solange der Rest des Weges nicht ebenfalls funktioniert und dort auch noch ein Rewrite der Adresse auf das bei A verwendete Segment erfolgt (ich nehme mal an, deshalb ist es dieselbe Zahl im niederwertigsten Adressbyte - 192.168.70.44 und 192.168.71.44, damit man das umschreiben kann), damit die Box bei A das dann wieder einfängt (wenn das überhaupt gewünscht ist).

Das muß natürlich nicht auf drei Standorte beschränkt sein ... wenn man es richtig macht und es funktioniert, kann man so ein einzelnes Paket auf die Reise schicken, was auf seinem Weg zum Ziel so eine "Ringstruktur" passiert und dabei dann ggf. auf jedem System unterwegs gedoppelt werden kann, womit der Payload dann zur Nutzung zur Verfügung steht.

Deshalb gehe ich hier eher davon aus, daß es gar nicht um das Einfangen einer Antwort geht, bekanntermaßen/gerüchteweise wird beim TO ja etwas betrieben, was hier im Forum nicht diskutiert werden soll und darf und ich nehme mal an, daß inzwischen die Last durch explizite Abfragen so groß geworden ist, daß einfach an der Stelle mit dem Kartenleser und den Karten ein UDP-Paket mit irgendwelchen Inhalten an eine Station geschickt werden soll (das ist praktisch eine Art Broadcast, worauf gar keine Antwort erwartet wird), von der es dann weiter geht und von dort wieder weiter usw. - ob das jetzt noch ein ambitionierter Amateur oder schon ein Profi ist (meine ich in Bezug auf die Anwendung, nicht auf das Netzwerk), wage ich nicht zu beurteilen ... aber ich will auch nicht meine Freizeit in solche Projekte investieren (so spannend so etwas aus Netzwerksicht auch sein mag).

Ich halte so ein "Ringrouting" (wenn meine Vorstellung überhaupt stimmen sollte) ohnehin für viel zu fragil, weil dann eine nicht funktionierende Strecke auf diesem Ring schon zu Problemen führt. Genau für solche Zwecke gibt es ja Multicast-Protokolle, wo ein einzelnes Paket an mehrere Adressaten (auf Subscription-Basis) geht.
 
Hallo zusammen,

erstmal vielen Dank fuer die Unterstuetzung. Ich kaempfe mich durch die Antworten und weiteren Fragen und versuche die zu Beantworten.

Ringrouting: Unter Ringrouting verstehen wir hier, dass ein Paket UND DESSEN ANTWORTPAKET von Rechner A zu Rechner B nicht den gleichen Weg nimmt.

Code:
Ping-Request: PC A --> Router/Route X --> PC B
Ping-Reply:   PC B --> Router/Route Y --> PC A

Ein Paket UND DESSEN ANTWORTPAKET nimmt auch dem Hinweg einen andere Weg als auch dem Rueckweg. Das Antwortpaket von dem PC, aus dem obigen Beispiel, wenn mit der 192.168.71.44 gesendet wird, muesste auf einem anderen Weg dorthin wieder zurueck kommen. Die Fritzbox kaeme in der vorliegenden Konfiguration damit nicht klar.

Ueber den "Rueckweg" wollte ich mich hier nicht auslassen weil es die Sache unnoetig kompliziert macht. Es reicht ja schon wenn der Hinweg nicht laeuft. ;-) [Um ein Beispiel zu nennen: Hinweg per DSL VPN und Rueckweg per UMTS VPN]

@DieWilde13: Der PC routet nicht zwischen den .71.x und 70.x Netzen, sondern ist Ende, bzw. Anfang der Paketstrecke mit eben 2 IP Adressen.

Wenn ich es schaffe eine Zeichnung zu machen stelle ich sie gerne mal ein.
Edit: Ich habe mal ein PDF mit dem kompletten Routing angehangen. Fuer das im Ausgangsthread beschriebene Problem reicht die Betrachtung der "rechten" Haelfte.

Bezueglich der internen Verarbeitung der Fritzbox muss ich mir die Infos von PeterPawn noch mehrmals durchlesen und es wirklich zu verstehen.


Edit: Folgende 4 Situationen gibt es.

- Der PC oben kann ohne Probleme den PC 192.168.20.103 erreichen und bekommt Antworten wenn er (defaultmaessig) die .70.40 als Absender setzt.
[ping 192.168.20.103] - Funktioniert

- Der PC unten kann ohne Probleme den PC 192.168.70.44 erreichen und bekommt Antworten
[ping 192.168.70.44] - Funktioniert

- Der PC oben kann NICHT den PC 192.168.20.103 erreichen und wenn der .71.40 als Absender setzt, da die Fritzbox das Problem macht. Problem in diesem Thread.
[ping 192.168.20.103 -S 192.168.71.44] - Funktioniert nicht (Das ist auch nicht der Usecase. S.u.)

- Der PC unten kann den PC 192.168.71.44 zwar erreichen aber die Antwortpakete kommen eben nicht an, da als Absender die .71.40 gesetzt wird.
[ping 192.168.71.44] - Funktioniert nicht auf dem Rueckweg (Das ist der Eigentlich Usecase. Mit diesem schlichten Ping soll der ganze Weg kontrolliert werden.

Danke.

voipd.
 

Anhänge

Zuletzt bearbeitet:
Wenn das also die "Routing-Schnittstelle ist, wo diese Pakete auftauchen, dann ist das eigentlich falsch. Diese Pakete kommen über "dev lan" herein und müßten jetzt eigentlich vom Routing-Code (nicht mit "Routing-Schnittstelle" verwechseln) an das "dev tun0" gesendet werden. Von dort kriegt sie dann die OpenVPN-Instanz, die ihrerseits das ganze in UDP-Pakete kapselt und dabei bereits selbst irgendwelche Fragmentierungen behandeln sollte. Diese UDP-Pakete gehen dann (mit der internen IP der FRITZ!Box) an die externe Adresse des OpenVPN-Peers und dabei werden sie zuerst auf der Routing-Schnittstelle sichtbar. Nachdem die FRITZ!Box dann die interne IP gegen die externe Adresse ausgetauscht hat, tauchen die Pakete auf der "1. Internetverbindung" auf.
Wenn jetzt ein OpenVPN-Tunnel nur eine MTU von 1380 hat, macht es ja keinen Sinn, da 1500 Byte und mehr durchzujagen (so sieht das jedenfalls im dritten Screenshot aus), weil die gar nicht über diese zugrunde liegende Transport-Verbindung gehen könnten. Solche Techniken wie PMTU-Discovery funktionieren auch nur dann, wenn die Antworten der Gegenstelle den Absender überhaupt erreichen können.

Vielleicht begründest Du diese Sicht ja dann auch einfach einmal, anstatt sie nur zu postulieren - wieso sollte denn ein Paket, das noch gar nicht "im Tunnel ist", die interne IP der FRITZ!Box (70.1) anstelle der des Absenders (70.44) haben, wenn es nicht schon durch OpenVPN durch ist? Auf die Antwort bin ich mal mächtig gespannt ...

Vielleicht habe ich mich da unklar ausgedrueckt. Ich will damit sagen, dass das Problem vor dem Tunnel liegt. S.u.

Die logischere Erklärung wäre hier für mich erst einmal, daß einfach das OpenVPN nicht mit dem Paket klarkommt und es deshalb verwirft.

Damit bin ich erstmal einverstanden. Damit waere aber auch bewiesen, dass das Problem vor dem OpenVPN liegt, denn wenn ich ein Paket "ping 192.168.20.103 -n 65500 -S 192.168.71.44" erzeuge erscheinen die Fragmentierungsmeldungen NICHT. Nach deiner/meiner Meinung kommen die Fragmentierungsmeldungen von OpenVPN Code, wenn der mit den grossen Paketen nicht karkommt. Kommen eben keine solchen Meldungen bei gleich grossen Paketen, aber mit andere Absender IP (.71.44) dann koennen sie noch nicht im Tunnel gewesen sein.
Das bedeutet aber auch, dass die Absenderadresse eine Rolle spielt bei der Verarbeitung in der Fritzbox bevor es in den Tunnel geht.


Auch dann dürfte auf der "Routing-Schnittstelle" eben nichts ankommen, weil da kein Paket vom OpenVPN erzeugt wird, das an irgendeine externe Adresse gehen soll. Sollte das so sein, steht bestimmt etwas dazu im OpenVPN-Protokoll (ab ausreichendem Loglevel) ... insofern ist das mit dem funktionierenden Protokoll die Basis irgendwelcher Tests und nichts, was man mal bei Gelegenheit suchen kann.

Doch, sofern man die Gelegenheit hat oder bekommt. Zum einen bin ich nicht vor Ort und kann den VNC Traffic nicht aus dem Tunnel raushalten. Zum anderen scheint die debug Option von OpenVPN selbst auch keine Eingrenzung (IP/Groesse/Ziel) zu kennen. Somit bleibt fuer eine "OpenVPN Trafficzaehlung" nur die Moeglichkeit vor Ort zu arbeiten. Aber ist das wirklich noch notwendig, nach den Rueckschluessen, dass das Problem vor dem OpenVPN Code liegen muss oder bist du davon (noch) nicht ueberzeugt?


Meines Wissens prüft die FRITZ!Box aber (solange der PA nicht im Spiel ist) auch gar keine IP-Adressen, es dürfte also keinen Konflikt geben, weil das Paket von der 192.168.71.44 auf einer Schnittstelle hereinkommt, wo es eigentlich nichts zu suchen hat, denn nach Deiner Routing-Tabelle ist dieses Netz ja hinter "dev tun0".

Den "Querverweis" verstehe ich nicht mal annähernd von seinem Zusammenhang her ... das sind zwei vollkommen verschiedene Paar Schuhe. Bei der "Login"-Entscheidung wird u.a. auch herangezogen, über welches Interface das anfragende System zu erreichen ist. Wenn das (wie bei Dir dann offenbar) eben nicht "dev lan" ist, dann wird halt ein Login gefordert. Bei Dir wäre das ja eindeutig "dev tun0", dem jeder Absender aus 192.168.0.0/16 zugeordnet würde und auch bei jeder (AVM-)VPN-Verbindung für einen FRITZ!Box-Benutzer existiert eben ein dedizierter Eintrag in der Routing-Tabelle, der für die IP-Adresse dieses VPN-Clients "dev dsl" als Ziel vorgibt.

Ne! ;-) Das ist eine andere Baustelle, sollte aber nur beweisen, dass die Source-IP beim WebUI ueber LAN "beruecksichtigt" wird.

Habe hier eine andere Fritzbox (7390 mit aktueller Beta) als IP-Client OHNE Passwortabfrage konfiguriert. Darum geht es in dem verwiesenen Thread. Das mit dem Login ist ein anderes Problem, soll aber heissen, dass AVM die Source-IP abfragt und darueber Entscheidungen faellt, AUCH wenn man ueber den gleichen Weg (LAN-Anschluss) in die Box kommt.

Die die Infografik: Der lokale PC kann das FB-UI ohne Passwort erreichen, der entferne PC nicht, obwohl beide ueber den LAN Stecker der Fritzbox reinkommen!

Code:
FB-IP-Client---LAN--Switch--Lokaler-PC [gleiches Subnetz] (PC kann FritzboxUI ohne Passwort erreichen)
                      |
                      |
                      +--VPN----+
                                |
                                |
                                |
                               PC [anderes (Sub-)Netz] (Fritzbox macht Zwangspasswortabfrage


Welche FRITZ!OS-Version Du allerdings verwendest, habe ich auch bei dritten Lesen des gesamten Threads nicht gefunden (oder ich bin doch zu blöd, es zu verstehen) - aber von derartigen Unterschieden innerhalb einer Version habe ich bisher auch noch nichts gehört; zwischen verschiedenen Versionen allerdings schon.

Steht im ersten Satz. Habe es jetzt Fett gemacht und die (Sub-)Version hinzugefuegt. ;-) "7240 mit letzter Beta mit Telnet" "version=73.06.04&subversion=27674"


Diese 88-Byte-Pakete nach den 1500-Byte-Paketen sehen jedenfalls auch extrem komisch aus im dritten Screenshot (vielleicht gelingt Dir ja doch noch die Angabe, von welcher Schnittstelle dieser Mitschnitt denn nun stammt und welches Kommando auf dem PC er darstellen soll)
... aus der nachgeschobenen Erklärung kann man zwar raten, daß wir da vermutlich den Fall des Pings mit diesen Riesenpaketen von der 70.44 sehen (da hätte einfach eine klipp und klare Erklärung, welcher Verkehr da tatsächlich sichtbar ist, geholfen - genau das habe ich mit meiner Bemerkung, daß man eben dem Screenshot nicht ansehen kann, welchen Fall er nun darstellen soll, gemeint und dabei bleibe ich auch), aber raten ist nun mal nicht wissen.


Hatte ich doch oben geschrieben ;-):
Ich habe mal die "Routing-Schnittstelle" der FB mitgeschnitten. Da man vor lauter Traffic nicht wirklich sehen kann was da im Tunnel ruebergeht, habe ich mal mit uebergrossen Ping Paketen experimentiert um zu sehen ob man die auf der "Routing-Schnittstelle" wiederfinden kann. Kann man. Siehe auch Screenshot.

Aber ich werde das nochmal ueberarbeiten und sauberer formulieren und diesen Teil unten nochmals gesondert in einen Beitrag schreiben.

Selbst wenn das ein Kabelanschluß mit der vollen MTU von 1500 sein sollte, erklärt das immer noch nicht, um was für Pakete es sich bei den "IPv4"-Paketen mit 1500 Byte Länge im dritten Screenshot handeln soll (BTW: gfA = glatt für'n A****) - dankenswerterweise zeigt auch die Detailansicht im unteren Teil ein Datenpaket, was erkennbar weder mit den fragmentierten Paketen noch mit den 88 Byte langen UDP-Paketen etwas zu tun hat.

Da laeuft doch noch der ganze VNC Traffic durch den Tunnel ohne den ich gar nicht darauf zugreifen koennte. ;-)


Wenn Du ergebnisoffene Tests machen willst und dann auch die dabei benutzten Schritte und die erzielten Ergebnisse so erläutern willst, daß man Dir folgen kann (vielleicht können es ja andere tatsächlich, so wie es oben schon steht, begreifen - ich kann es eben nicht bzw. ich habe keine Lust zum "Interpretieren"), dann denke ich auch wieder mit ... ansonsten bringt das ohnehin wenig bis nichts. Wieso Du solche überlangen IP-Pakete (die irgendwo ja wieder in handliche Portionen zerlegt werden müssen) für eine valide Anzeige hältst, ob da nun ein Paket beim OpenVPN ankommt oder nicht, will ich lieber gar nicht erst fragen

Eben durch den Umkehrschluss, dass Paket die mit .71.44 abgesendet werden dort nicht auftauchen. Siehe oben.


Danke. :-)


voipd.
 
@voipd:
Das mit der Anmeldung habe ich versucht zu erklären. Zu dem Zeitpunkt, wo es um die Entscheidung "Login erforderlich oder nicht" geht, liegt die Information, über welches Interface ein Paket kam, gar nicht mehr vor. Zwar wird dieses Interface tatsächlich am Beginn im Paket vermerkt (für den PA, dafür ändert AVM sogar die sk_buff-Struktur im Kernel), aber zum Zeitpunkt der Abfrage beim ctlmgr liegt nur noch die IP-Adresse des Rechners vor, von dem das Login ausgehen soll. Ob das jetzt intern oder extern ist, wird bei AVM schon fast traditionell anhand der Frage entschieden, welches Interface dasjenige ist, über das eine bestimmte Adresse (in diesem Falle eben die Adresse der neuen Sitzung) erreichbar ist. Daß AVM die IP-Adresse an dieser Stelle heranzieht, ist doch aber weder neu noch besonders verwunderlich ... diese IP-Adresse wird ja sogar einer GUI-Sitzung explizit zugewiesen - wenn man eine SID mit der falschen IP-Adresse verwenden will, wirft die Box alle existierenden Sitzungen weg (von dieser IP-Adresse). Auch daß im Routing noch der Zugriff auf die komplette sk_buff-Struktur möglich ist, ist doch unbestritten - da könnte also tatsächlich noch die Absenderadresse herangezogen werden, aber warum sollte man das machen, wenn es nur um das Routing eines IP-Pakets geht? Was verspricht man sich davon?

Die Schlußfolgerungen im zweiten Absatz lehne ich immer noch ab ... aber ehe ich mich jetzt mit Dir darum streite, was "im Tunnel" heißen soll und was jetzt vor und nach dem OpenVPN ist, sollten wir uns vielleicht darauf einigen, das aus der Sicht von Interfaces zu betrachten und dann gibt es ganz klare Abgrenzungen. Ein Paket, was vom System an das "Pseudo-Netzwerkgerät" tun0 übermittelt wird, ist von diesem Zeitpunkt an beim OpenVPN-Code angekommen. Dieser erzeugt dann seinerseits die gekapselten Pakete (EDIT: und sendet die aber eben nicht über tun0 wieder aus, sondern gibt sie seinerseits ans Routing ab doch, eigentlich macht er das genau so, denn das, was das OpenVPN seinerseits nach "tun0" schreibt, landet eben wieder im Linux-Kernel - war blöd und mißverständlich formuliert) und dann werden diese Pakete anhand ihrer Zieladresse an das nächste zuständige Interface übermittelt. Das läßt sich ziemlich einfach testen, denn so ein OpenVPN-Peer kann durchaus auch über "dev lan" erreichbar sein und das funktioniert dann auch.

Wenn Du jetzt einen Mitschnitt der FRITZ!Box von "dev lan" vorweisen könntest, bei dem diese Pakete mit Source-Adresse 192.168.71.44 auch nicht auftauchen, dann würde ich Dir vielleicht sogar zustimmen ... aber Du selbst hast bei den alten Screenshots im zweiten Bild gezeigt (auch wenn der inzwischen fehlt), daß die Pakete auf "dev lan" der FRITZ!Box ja sehr wohl ankommen (das ist dann schon "im System" der FRITZ!Box, wenn es protokolliert werden kann), egal von welcher Source-Adresse sie stammen.

Der nächste Schritt im logischen Ablauf ist es nun eben festzustellen, ob diese Pakete vom Routing-Code an das "dev tun0" übermittelt werden. Findet das nicht statt, ist es irgendetwas im FRITZ!OS, was das verhindert .. ansonsten kann das OpenVPN damit eben nichts anfangen. Auch wenn Du durchaus recht hast, daß man im OpenVPN-Protokoll eben nur erkennen kann, ob ein Paket gesendet/empfangen wird und nicht seinen Inhalt (genau das hatte ich ja schon geschrieben), ist eben schon diese Information ein Anhaltspunkt, wo es klemmt.

Den Teil mit der Versionsnummer hast Du - entgegen dem, was Du da schreibst - auch erst nachträglich ergänzt in #1, vorher stand da nur etwas von "letzter Beta" und auch da gibt es lt. AVM die 06.06 als "letzte Version" seit ca. 1 Monat - hätte es tatsächlich deutlich dort gestanden, hätte ich es auch ohne "Fettdruck" gefunden.

Das, was da auf der Routingschnittstelle zu sehen ist, sind auch nicht Deine überlangen Pakete, das ist mit einiger Wahrscheinlichkeit eben eine falsche MTU auf dem Weg zur Gegenstelle - ob die beiden Pakete (1500 + 88 Byte) nun zusammengehören oder nicht, hast Du meines Wissen auch nicht bestätigt oder bestritten.

Ich bin mir nicht so richtig sicher, ob Du den Mechanismus mit der internen Fragmentierung beim OpenVPN durchschaut hast ... vielleicht siehst Du ja noch einmal nach den Parametern "link_mtu", "tun_mtu" und "fragment" und dem Zusammenhang zwischen diesen Werten.

Eben durch den Umkehrschluss, dass Paket die mit .71.44 abgesendet werden dort nicht auftauchen. Siehe oben.
Dieser Umkehrschluß "verrät" Dir aber eben noch nicht, ob die Pakete nicht auf tun0 und damit zum OpenVPN gelangen oder ob das OpenVPN für diese Pakete keinen UDP-Traffic zu irgendeinem Peer erzeugt hat.

Du vertrittst nach wie vor die Überzeugung (der Beweis steht eben noch aus), daß es ersteres ist ... das ist aber bisher durch nichts belegt.

Was passiert denn, wenn Du mit der 192.168.71.44 als Absender ein normales Ping an eine Adresse ausführst, die sich nicht hinter tun0 verbirgt? Dabei würde das Paket dann vom Routing nicht an tun0, sondern direkt an "dev dsl" übergeben (eine Antwort kriegst Du natürlich trotzdem nicht, weil die wieder in den Tunnel geht, selbst wenn sie auf der FRITZ!Box ankommen sollte).

Wenn so ein Paket dort tatsächlich auch nicht auftauchen sollte, könnte man wieder den PA verdächtigen, daß er wirklich an der Absenderadresse etwas auszusetzen hat.

Wenn es erst auf der 1. Internetschnittstelle nicht auftaucht (aber vorher auf der Routingschnittstelle noch sichtbar ist), dann könnte das Connection-Tracking sich daran stören, daß die Absenderadresse dieses Pakets nicht im LAN ist ... glaube ich aber eigentlich auch nicht dran, das beträfe dann auch jeden VPN-(User-)Client beim AVM-IPSec oder jede entfernte Adresse bei LAN-LAN-Kopplungen - dort gibt es ja auch kein internes NAT.

So einen Test hast Du aber meines Wissens bisher genauso wenig ausgeführt (oder Du hast das Ergebnis weggelassen oder nachträglich ergänzt und ich habe es nicht gelesen) wie Du den Vorschlag umgesetzt hast, eine Route für 192.168.71.0/24 in der FRITZ!Box anzulegen, damit Du wenigstens vorübergehend mal die Fehlermeldungen in Form von ICMP-Paketen auch tatsächlich erhältst ... vermutlich wirst Du diese Route später ohnehin irgendwann mal brauchen und stören dürfte sie auch nicht, wenn das bisher von Dir Geschriebene alles korrekt war. Du willst ja die 192.168.20.103 erreichen, da stört eine Route für 192.168.71.0/24 nach "dev lan" ja irgendwie nicht.

Stattdessen machst Du diesen "Blödsinn" (ich muß es so nennen) mit knapp 64K in irgendwelchen Paketen (die schon der sendende PC fragmentieren muß und die nicht etwa das OpenVPN bereits wieder zusammensetzt) und die tatsächlichen "Basics" (Tunnel-Einstellungen, insb. zur MTU) hast Du auch auf ausdrückliche Nachfrage nicht beantwortet.

Wieso Du einen Test für einen Beweis hältst, der auch bei der Verwendung von 192.168.70.44 als Absenderadresse nicht funktioniert (oder antwortet da die 192.168.20.103 etwa richtig bei "-l 65000"?), verstehe ich immer noch nicht ... Du leitest aus dem Fehlen der vom OpenVPN verpackten Pakete auf "dev dsl" (die bei Verwendung von 192.168.70.44 vorhanden sind) die Schlußfolgerung ab, daß das OpenVPN diese Pakete gar nicht erst erhält.

Das ist für mich noch lange nicht ausgemacht ... es kann eben immer noch genauso gut sein, daß das OpenVPN diese Pakete nicht will - genauso gut kann es sein, daß Du tatsächlich recht hast (und die Pakete nicht nach tun0 gehen, wobei ich dann immer noch nicht verstehe, woran das liegen sollte), bei 50:50 ist diese Chance durchaus vorhanden.

Aber die verwendete Methodik beim Testen gibt das - zumindest bisher und anhand der von Dir veröffentlichten Ergebnisse - noch nicht her (wenn ich nicht irgendwelche Ergänzungen übersehen haben sollte, das macht nebenbei bemerkt auch wenig Spaß, sich immer wieder die vorherigen Beiträge erneut durchlesen zu müssen und dann aus dem Gedächtnis die Unterschiede zu rekapitulieren).

Dieser "Filter", den Du da vermutest, würde jedenfalls auch bei anderen Netzwerk-Konfigurationen (eben z.B. auch einer LAN-LAN-Kopplung zweier FRITZ!Boxen, bei der die eine FRITZ!Box über die Internetverbindung der anderen arbeiten soll - natürlich nicht für den IPSec-Traffic) ja im Wege sein ... wenn die lokale FRITZ!Box die 192.168.178.0/24 verwendet und die entfernte die 192.168.177.0/24, dann sieht ja jedes Paket aus dem entfernten Netz für die lokale FRITZ!Box wie "aus einem anderen Netz" aus und auch da funktioniert das Connection-Tracking, wie man erstens anhand der Funktion so einer Konstruktion und zweitens anhand der Einträge im procfs überprüfen kann.

Ich habe aber keine 7240 und verstehe auch nicht, warum man irgendeine alte Beta-Version benutzen muß oder will ... bei der 06.06 der 7270v3 funktioniert das mit dem CT jedenfalls definitiv auch dann, wenn ein Paket für eine ausgehende Verbindung eine nicht-lokale Absenderadresse hat.
 
Zuletzt bearbeitet:
Hallo PeterPawn,

danke fuer deine Muehen, aber bevor ich ins Detail gehen ein paar Anmerkungen bitte:

Die 7240 wird deshalb benutzt, weil sie nicht mir gehoert, dort seit Jahren in Betrieb ist. Die Urspruengliche Aussage "7240 mit letzter Beta mit Telnet" bezeichnet ganz genau nur eine einzige Version. Wir wissen alle, dass das eine FW von vor ein paar Monaten war als AVM telnet und debug.cfg rausgenommen hat. Ich habe aber artig die Version noch hinzugefuegt, wobei es fuer den Thread keine wirkliche Rolle spielt . Da duerfte alle Versionen seit mindestens 6.xx betreffen. (FritzBox 7240 mit FW 73.06.04-27674) Wenn ich nur die Nummer geschrieben haette, haette trotzdem noch begruenden muessen warum ich diese alte Beta nutze. (Wegen telnet und debug.cfg)

Ich weiss nicht ob wir beim Thema Zwangspasswortabfrage aneinander vorbei reden?
Wie bereits geschrieben kommt je nach Absenderadresse (LAN oder entferntes LAN) eine Passwortabfrage auch wenn beide Anfragen bei der FritzBox auf dem selben LANx Stecker eingehen. (Es geht um eine FB7390 (84.06.36-31823 BETA) die als IP-Client NUR am LAN1 haengt) - Da gibt es fuer die Fritzbox nicht zu entscheinden ueber welches Interface Pakete raus gehen. Das ist immer das LAN nur mit unterschiedlicher Adresse. Siehe auch meine ASCII Zeichung oben.
Und du meinst das ist richtig so und schon immer so gewesen?

--

Warum die Sache mit den grossen Paketen? Wie soll ich Traffik auf dem Routing-Interface erkennen wenn parallel jede Menge andere Daten (VNC) darueber fliessen? Da kam mir die Idee mit dicken Paketen um die zu erkennen. (Wenn ich die Temperatur von Wasser nicht messen kann, aber sehe, dass es gefroren ist, dann weiss ich zumindest, dass die Temperatur unter 0 Grad ist. Das reicht fuer die Einschaetzung um die Badehose zu Hause zu lassen ;) )
Da in dem einen Fall eine Reaktion zu sehen war und in dem anderen Fall nicht, habe ich Rueckwaerts auf das andere geschlossen. Das ist eine, ausmeiner Sicht gute, aber nicht 100% richtige Annahme. Exact kann man es erst vor Ort klaeren, wenn man keinen VNC Traffic darin hat.

Das du die Idee mit den grossen Paketen als Bloedsinn abtuts finde ich nicht in Ordnung. Natuerlich ist das eigentlich sinnlos, aber von hier habe ich keine andere Moeglichkeit Pakete dort zu erkennen. Muss erstmal vor Ort sein um das sauber zu sehen.

Die Sache mit der gesonderten .71 Route verstehe ich nicht. Aber muss ich mir nochmals durchlesen.

Gibt es eine Zeichung zu den internen Routing der FB und den einzelnen Schnittstellen? Da komme ich nicht so ganz mit.

Soweit eine Kurzantwort erstmal.


voipd.
 
@voipd:
Das Blödsinn steht in Anführungszeichen und ich habe bereits zweimal erklärt, warum ich das so sehe.

Selbst wenn da nebenbei VNC über diese OpenVPN-Verbindung geht, kann man auch normal lange ICMP-Pakete immer noch an ihrem Protokoll erkennen ... das ist eben ICMP, während VNC mit TCP arbeiten dürfte. Einem VPN-Paket sieht man dann ohnehin nicht mehr an, ob es nun ICMP oder TCP oder UDP oder irgendetwas anderes exotisches als Payload hat ... das ist alles UDP und fertig.

Wenn Du die Tunnel-MTU kennen würdest und genau die "echo request"-Pakete in der gerade noch gängigen Größe erzeugen lassen würdest, dann hättest Du auch diese maximale Länge der Pakete als "Kennzeichnung" und trotzdem käme wenigstens eine Reaktion vom OpenVPN-Peer zustande und nicht schon per se vom lokalen OpenVPN (vermutlich) eine Ablehnung - wobei deren Existenz auch nur Vermutung ist, denn genau die sieht man bei Dir ja nicht, weil die FRITZ!Box nicht weiß, wie sie ein Paket zur 192.168.71.44 schicken soll (nicht zu verwechseln mit einem Paket von dieser Adresse - womit dann auch gleich noch einmal die Idee hinter dem passenden Eintrag in der Routing-Table der FRITZ!Box zusätzlich vertieft wäre).

Ein Test, der auch für den "gültigen Fall" nicht funktioniert und nur anhand des Vorhandenseins von Paketen im Packetdump Rückschlüsse ziehen will, ist eben deutlich weniger aussagekräftig und "handhabbar" als einer, bei dem für von der 192.168.70.44 gesendete Pakete eben sogar eine Antwort eintreffen kann.

Gerade auch die Tatsache, daß für eine Verbindung von der 192.168.71.44 der Mechanismus der "PMTU Discovery" bei Dir nicht funktionieren kann (anders als bei der 70.44), macht solche Tests sehr fragwürdig.

Da bei PMTU-Discovery ja genau die ICMP-Pakete vom Typ 3 benötigt werden, macht die fehlende Route auf der FRITZ!Box das Ganze praktisch unbrauchbar - selbst wenn irgendein Gateway unterwegs mit ICMP-Typ 3/Code 4 (Fragmentation needed) antworten würde, erreicht diese Antwort den sendenden PC niemals in Deiner derzeitigen Konfiguration.

Ich könnte mir sogar vorstellen, daß der damit seinerseits (wenn die Netzwerkkarten das hergeben) mit "jumbo packets" arbeitet (er kriegt ja nie die Info: Paket zu groß) und die FRITZ!Box diese Pakete dann nicht mal auf "dev lan" im L2 empfängt. Auch das hast Du meines Wissens bisher nicht getestet (ob diese großen Pakete bei "-l 65000" von der 71.44 überhaupt auf "dev lan" der FRITZ!Box erscheinen) oder auch hier vergessen, die Ergebnisse anzugeben. Der früher mal vorhandene Screenshot vom "dev lan" der Box drehte sich jedenfalls nur um kurze "echo request"-Pakete - einmal von der 70 und einmal von der 71 (so hießen die Screenshots dann auch).

EDIT: Noch einmal in aller Deutlichkeit: Du hast irgendwann mal getestet, daß kurze "echo request"-Pakete von beiden Adressen des PC auf der FRITZ!Box eintreffen (die beiden verschwundenen Screenshots). Diesen Test hast Du aber für die extragroßen Pakete (ping mit -l 65000) weder für die 70er- noch für die 71er-Adresse wiederholt und auch nicht festgestellt, welche Größe die jeweiligen Pakete überhaupt haben, wenn sie den PC verlassen. Die Pakete von der 70er-Adresse treffen ja offenbar auch dann an der FRITZ!Box ein, wenn sie die MTU auf diesem Link ausschöpfen (das sieht man im Mitschnitt auf "dev dsl") ... für die 70er-Adresse funktioniert aber PMTU-Discovery auch, was bei der 71er-Adresse nicht funktionieren kann wegen des fehlenden Eintrags in der Routing-Table der FRITZ!Box. Damit führt diese Verwendung von sehr großen Paketen eben zu vollkommen neuen Punkten, die dabei eine erfolgreiche Übertragung ver- oder behindern können und genau das ist es, was ich daran kritisiere. Wenn Du die Testbedingungen änderst, mußt Du das auch für beide Fälle identisch ändern - Du führst hier aber neue potentielle Fehlerquellen ein, wenn bei bekanntermaßen nicht funktionierender PMTU-Discovery maximal große Chunks (auf L2) noch größerer IP-Pakete (auf L3) verschickt werden sollen. Wenn Dein PC "jumbo frames" unterstützt (reine Spekulation, das weiß ich ja nicht) und diese wegen fehlender "too big"-Signalisierung bei der PMTU-Discovery auch verwendet, wenn er von der 192.168.71.44 sendet, wird die FRITZ!Box solche Pakete nicht mal richtig auf "dev lan" empfangen, denn meines Wissens unterstützt sie keine "jumbo frames" auf L2.

-Anyway ...

Bei der Login-Abfrage reden wir vielleicht wirklich aneinander vorbei ... wobei so ein IP-Client immer eine spezielle Herausforderung für das FRITZ!OS ist, weil da einiges anders läuft (ja, anders laufen muß - wenn ich mich recht erinnere, gibt es gar kein "dev dsl"). Hier wird eben anhand der Zugehörigkeit zum lokalen Netzwerksegment entschieden, ob das lokal ist oder nicht - ob das schon immer so war, weiß ich nicht und es interessiert mich auch nicht wirklich.

Beim IP-Client kann es tatsächlich eine Frage der Weltanschauung sein, ob es überhaupt einen "externen Zugriff" auf das GUI geben kann oder nicht - beim Router-Betrieb ist das absolut eindeutig. Im parallelen Thread habe ich ja auch schon attestiert, daß es bei Dir im IP-Client-Betrieb vielleicht unerwünscht sein mag - die Festlegung, daß alles, was nicht lokal ist, dann eben extern sein muß, kann man trotzdem nachvollziehen.

Ich habe auch nie behauptet, daß sich diese Abfrage im GUI-Lua-Code (gl.from_internet) ausschließlich aus dem Interface speist, auf dem ein Request hereinkommt ... ganz im Gegenteil, ich habe immer wieder betont, daß dafür (vermutlich) die Feststellung herangezogen wird, über welches Interface der Absender zu erreichen ist (jedenfalls wird diese These dadurch unterstützt, daß man mit der passenden Route im Router-Modus tatsächlich diese Abfrage verhindern kann oder zumindest konnte). Das ist zwar im Falle des IP-Clients wieder das "lan"-Interface (weil es schlicht kein anderes gibt), aber das heißt ja noch nicht, daß das die einzige Grundlage für die Entscheidung "from_internet" bildet (vielleicht sollte das auch eher "not_from_local" heißen, aber das ist ja für den Normalnutzer ohnehin nicht sichtbar - von der Logik her paßt diese Bezeichnung allerdings besser, denn alles was nicht per "ARP" erreichbar ist, ist dann eben "nicht lokal", wobei das bei VPN-Clients auch wieder nicht über ARP geregelt sein kann (wenn solche Zugriffe auch "extern" sein sollten), denn da macht die Box Proxy-ARP).

Wann das Login als "extern" angesehen wird, kann man in der Datei /usr/www/avm/lua/check_sid.lua nachlesen ... dort wird entschieden, ob die login.lua aufzurufen ist oder nicht und in der login.lua werden dann - ebenfalls in Abhängigkeit davon, ob der Zugriff als extern eingestuft wird oder nicht - andere HTML-Elemente generiert (SELECT-Box oder normales Text-Control für den Benutzernamen). Eine reine Abfrage, ob die Adresse im lokalen Netz liegt, kann es eigentlich auch nicht sein, denn dann müßte jeder VPN-(User-)Zugriff automatisch als lokal eingestuft werden (ob das tatsächlich so ist, will ich jetzt nicht testen - meiner Meinung nach hat sich das im letzten Jahr geändert). Wie ausführlich dieser Test am Ende jetzt wirklich ist, weiß ich auch nicht ... wäre mal einen Test wert. Wenn man bei einer Einstellung der Box auf 192.168.178.0/24 eine zusätzliche Route für 192.168.178.64/26 konfiguriert über ein Gerät hinter "dev lan", wird es ja schon wieder zur "Ansichtssache", ob das nun "lokal" oder "extern" ist, obwohl der Absender aus 192.168.178.64/26 natürlich auch in das Segment 192.168.178.0/24 fallen würde.

Wenn es beim Login nach mir gehen würde, würde ich jede Anmeldung ohne Kennwort aus dem lokalen Netz ohnehin komplett verbieten ... das ist nichts anderes als eine riesige Sicherheitslücke, die nur aus reiner Sentimentalität noch mitgeschleppt wird (A20 läßt grüßen) ... besonders spaßig finde ich es immer, wenn sich Leute auf der einen Seite über mangelnde Sicherheit von Firmware aufregen und dann aus reiner Bequemlichkeit auf die Benutzung der "full blown"-Accountverwaltung in der FRITZ!Box verzichten - egal ob das nun Router- oder IP-Client-Modus ist. Da reicht dann schon eine böswillige App auf einem Smartphone, um das gesamte Netz zu kompromittieren.

Daher ist mein Plädoyer an dieser Stelle eindeutig: Alles, was weniger als Benutzername und Passwort beim Login in der FRITZ!Box benötigt, konsequent abschaffen oder zumindest so weit verstecken und erschweren, daß der "Normalnutzer" lieber ständig Benutzernamen und Kennwort verwendet anstatt sich die Mühe des "Abschaltens" derselben zu machen. Schon die SELECT-Box mit den Konten ist eigentlich ein Kompromiß für die "faulen Benutzer", den ich am liebsten per Checkbox abschalten möchte ... das wäre problemlos auf der "Anmeldung im Heimnetz"-Seite noch unterzubringen (solange es diese gibt) und würde z.B. lokalen Nutzern/Lauschern/Angreifern schon das "Auflisten" aller gültigen Konten für eine Anmeldung erschweren (wenn der Admin das will und lieber die Anstrengung der Eingabe des Nutzernamens auf sich nimmt - wenn er den nicht ohnehin gleich in der URL mit übergibt, das spart dann auch die manuelle Eingabe und ist von extern ohnehin die einzige Möglichkeit, sich die Tipperei zu sparen).
 
Zuletzt bearbeitet:
Kostenlos!

Statistik des Forums

Themen
248,881
Beiträge
2,303,891
Mitglieder
378,556
Neuestes Mitglied
1491585