SDB:Problem mit der Herstellung einer TCP/IP Verbindung in openSUSE 10.2
aus openSUSE, der freien Wissensdatenbank
Version: 10.2
Inhaltsverzeichnis |
Situation
Der Verbindungsaufbau des Browser zu bestimmten Webseiten schlägt in der standard Installation von OpenSuSE 10.2 fehl.
Beispiele von nicht erreichbaren Seiten:
http://www.keh.com/
http://www.marymount.edu/
http://www.packetstormsecurity.org/
http://furniture33.com/
Problem Beschreibung
Der Grund für dieses Verhalten ist eine Netzwerk Funktionen im Linux Kernel Namens "TCP window scaling". Window Scaling ist eine TCP-Erweiterung für schnellere Netzwerkverbindung. Weitere Informationen zu diesem Thema finden Sie in der RFC 1323.
Olaf Kirch zufolge (Bug#229848) liegt das Problem an Routern/Filtern vor dem Ziel-Host, die die Option des "TCP window scaling" nicht beherrschen, und deshalb diese Pakete verwerfen.
Der nachfolgende (englische) Text ist ein Auszug von Kommentar #24 des BUGs #229848 auf Novells Bugzilla
[...] This is neither a bug in our stack nor in the destination system's stack - I assume there's a connection tracking router/filter at the remote site that does not understand window scaling. This problem has been cropping up for quite some time on the netdev mailing list and in other places. Essentially what happens is that the router happily passes all TCP options during the SYN handshake, including the options announcing window scaling. However, the router doesn't understand window scaling, so when it sees the Linux client announcing a window of "47" (which is really (47 << some scaling factor), it will discard any packets that are not fully inside that 47 byte window. [...]
Lösungen
Eine schnelle
von Anders Johanssonecho "0" > /proc/sys/net/ipv4/tcp_window_scaling
Wenn dies automatisch bei jedem Systemstart gesetzt werden soll kann man die Datei /etc/sysctl.conf editieren und die folgende Zeile hinzufügen:
net.ipv4.tcp_window_scaling = 0
Eine andere
von Karsten Keil
Diese Lösung schränkt nicht die Fenster auf 64k ein. Sie können eine spezielle route für die problem Seite hinzufügen.
ip route add IP.ADD.RE.SS/32 via <Ihr standard gateway> window 65535
IP.ADD.RE.SS ist die IP addresse von der problematischen Seite.
Links
https://bugzilla.novell.com/show_bug.cgi?id=229848
http://kerneltrap.org/node/6723
http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122newft/122t/122t8/tcpwslfn.htm
http://www.ietf.org/rfc/rfc1323.txt
Keywords: TCP connection problem 10.2 openSUSE

