So.
Habe ich mal wieder ein Problem
Evt. (ich hoff es wenigstens) kann mir ja jmd helfen
Habe folgende Konfiguration
ipaq (familiar 0.7) <--> PPP (seriell) <--> Workstation (debian sid, 2.4.22ck2) <--> Proxy <--> web
das komische:
wenn ich auf dem ipaq was downloaden will bekomm ich regelmässig timeout's (mit wget)
ping vom ipaq aus stellt wiederum kein problem dar, auch nicht dann wenn wget auf was wartet
von der workstation aus habe ich mittels wget jedoch keinerlei probleme
Dieses Problem ist nicht dauernd. Dazwischen läuft es wieder ganz I.O. :/
Auf der Workstation hab ich MASQ konfiguriert (um ppp0 nach eth1 zu routen)
Hat jemand eine Idee woher das kommen könnte ??
Oder wie ich das Problem debuggen könnte ??
Gruss
ipaq - masq workstation - proxy - web (timeouts bei wget)
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Achtung: Blinder Tipp...
Es kann sein, dass die unterschiedliche Paketgrössen Dir da einen Strich durch die Rechnung machen. Das gleiche problem besteht, wenn man ein internes Ethernet an eine DSL Leitung klemmt: Ethernet hat eine MTU von 1500 Bytes, PPPoE aber nur von 1492 Byte. Pakete, die kleiner sind als 1492 Byte sind kein Problem, aber einige sind halt grösser, und da gibt's dann Ärger. Bei "klassischem" PPP ist die Paketgrösse sogar noch deutlich darunter (576 Byte IIRC).
Evtl. könntest Du z.B. mit der MTU in der pppd Config herumspielen, oder auf Deiner Workstation iptables mit der --clamp-mss-to-pmtu Regel passend zurechtstutzen.
Patrick
Es kann sein, dass die unterschiedliche Paketgrössen Dir da einen Strich durch die Rechnung machen. Das gleiche problem besteht, wenn man ein internes Ethernet an eine DSL Leitung klemmt: Ethernet hat eine MTU von 1500 Bytes, PPPoE aber nur von 1492 Byte. Pakete, die kleiner sind als 1492 Byte sind kein Problem, aber einige sind halt grösser, und da gibt's dann Ärger. Bei "klassischem" PPP ist die Paketgrösse sogar noch deutlich darunter (576 Byte IIRC).
Evtl. könntest Du z.B. mit der MTU in der pppd Config herumspielen, oder auf Deiner Workstation iptables mit der --clamp-mss-to-pmtu Regel passend zurechtstutzen.
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
Ist zwar schon alt, kram es aber doch raus, weil Problem heute gefunden
Habe mal aus Jux die MTU des IPAQ's angeschaut, und gesehen dass diese zu hoch ist.
Dachte, dass die MTU via PPP ausgehandelt und vom Initiator beidseitig gsetzt wird.
Miep. Falsch gedacht.
Auf dem ipaq /etc/ppp/options die mtu angepasst auf 1492 und schon gehts tip top
Habe mal aus Jux die MTU des IPAQ's angeschaut, und gesehen dass diese zu hoch ist.
Dachte, dass die MTU via PPP ausgehandelt und vom Initiator beidseitig gsetzt wird.
Miep. Falsch gedacht.
Auf dem ipaq /etc/ppp/options die mtu angepasst auf 1492 und schon gehts tip top
*brmpf*
War's nicht.
Kann mit den MTU's machen was ich will.
Momentan hab ich 1000 gesetzt.
Hat jemand eine Idee was da los sein könnte ??
TCP <-- host --> IPAQ
...gut...
...gut...
...gut...
Will heissen:
Proxy quasselt mit IPAQ
dann:
SRC: IPAQ / DEST: PROXY / TCP www [FIN,ACK]
SRC: PROXY / DEST: IPAQ / TCP www > 1068 ACK
SRC: IPAQ / DEST: WORKSTATION / Encrypted reponse
SRC: WORKSTATION / DEST: IPAQ / ssh [ACK]
SRC: IPAQ / DEST: PROXY / TCP www [FIN,ACK]
..und jetzt kommt nix mehr..
Ich hab keinen blassen wieso.
Mal gehts, mal gehts nicht.
Der Output auf der Shell:
*ärger*
Weiss einer wieso das sein kann ?
Ist evt. die SSH Verbindung mitschuld ??
Noch das 1. Paket auf welches keine Antwort mehr kommt, decodiert:
Src Port: 1069
Dest Port: 80
Seq: 449486635
Flags: SYN
Window Size: 3840
Maximum segment size: 960 bytes
SACK permitted
Window Scale: 0
Muss ich den MTU bei der ipaq-host verbindung > 1500 oder < 1500 setzen (gehe ja zwischen workstation und proxy über ein ethernet)
War's nicht.
Kann mit den MTU's machen was ich will.
Momentan hab ich 1000 gesetzt.
Hat jemand eine Idee was da los sein könnte ??
TCP <-- host --> IPAQ
...gut...
...gut...
...gut...
Will heissen:
Proxy quasselt mit IPAQ
dann:
SRC: IPAQ / DEST: PROXY / TCP www [FIN,ACK]
SRC: PROXY / DEST: IPAQ / TCP www > 1068 ACK
SRC: IPAQ / DEST: WORKSTATION / Encrypted reponse
SRC: WORKSTATION / DEST: IPAQ / ssh [ACK]
SRC: IPAQ / DEST: PROXY / TCP www [FIN,ACK]
..und jetzt kommt nix mehr..
Ich hab keinen blassen wieso.
Mal gehts, mal gehts nicht.
Der Output auf der Shell:
Code: Alles auswählen
~ # ipkg -V 3 update
Downloading http://familiar.handhelds.org/releases/v0.7.2/base/armv4l/Packages
Updated list of available packages in /usr/lib/ipkg/lists/base
Downloading http://www.handhelds.org/feeds/2.4.19/Packages
wget: Unable to connect to remote host (10.0.254.21): Connection timed out
ipkg_download: ERROR: Command failed with return value 1: `wget --passive-ftp -q -P /tmp/ipkg-svTcHq http://www.handhelds.org/feeds/2.4.19/Packages'
hash_table[pkg-hash] n_buckets=1423 n_elements=1570 max_conflicts=5 n_conflicts=431
hash_table[file-hash] n_buckets=1423 n_elements=0 max_conflicts=0 n_conflicts=0
hash_table[obs-file-hash] n_buckets=1423 n_elements=0 max_conflicts=0 n_conflicts=0
Weiss einer wieso das sein kann ?
Ist evt. die SSH Verbindung mitschuld ??
Noch das 1. Paket auf welches keine Antwort mehr kommt, decodiert:
Src Port: 1069
Dest Port: 80
Seq: 449486635
Flags: SYN
Window Size: 3840
Maximum segment size: 960 bytes
SACK permitted
Window Scale: 0
Muss ich den MTU bei der ipaq-host verbindung > 1500 oder < 1500 setzen (gehe ja zwischen workstation und proxy über ein ethernet)
Ich schmeiss den IPAQ jetzt dann bald zum Fenster hinaus...
Einmal gehts... einmal gehts nicht...
Kann sein, dass er 20-30 Pakete herunterladen kann und plötzlich wieder so...
Würde dem Problem ja gerne selber auf die Spur.
Bräuchte aber hilfe beim tracken...
tcpdump ethereal und konsorten sind mir für diesen Fall zu unübersichtlich...
..nett wäre ein tool das in dieser Art funktioniert:
track_connection src_ip dest_ip
time, irgendwelche interessanten flags
---------------->
<----------------
---------------->
etc...
Bin am verzweifeln
IPAQ fault vor sich hin... *seufz*
//update
*mirandenkopfpatsch*
tcpdump
Kann mir evt. jemand sagen was daran faul sein könnte ??
Ab 12:37:06.660533 bekomm ich nix mehr zurück :/
Einmal gehts... einmal gehts nicht...
Kann sein, dass er 20-30 Pakete herunterladen kann und plötzlich wieder so...
Code: Alles auswählen
Downloading http://opie.handhelds.org/feed/ipaq/stable/latest//task-opie-minimal_1.0.3_arm.ipk
wget: Unable to connect to remote host (10.0.254.21): Connection timed out
ipkg_download: ERROR: Command failed with return value 1: `wget --passive-ftp -P /tmp/ipkg-Rv4Y7D http://opie.handhelds.org/feed/ipaq/stable/latest//task-opie-minimal_1.0.3_arm.ipk'
Bräuchte aber hilfe beim tracken...
tcpdump ethereal und konsorten sind mir für diesen Fall zu unübersichtlich...
..nett wäre ein tool das in dieser Art funktioniert:
track_connection src_ip dest_ip
time, irgendwelche interessanten flags
---------------->
<----------------
---------------->
etc...
Bin am verzweifeln
IPAQ fault vor sich hin... *seufz*
//update
*mirandenkopfpatsch*
tcpdump
Kann mir evt. jemand sagen was daran faul sein könnte ??
Code: Alles auswählen
12:37:00.130070 192.168.1.101.ssh > 192.168.1.100.32897: P 43841:43889(48) ack 144 win 7200 <nop,nop,timestamp 1129873 12394162> (DF)
12:37:00.130120 192.168.1.100.32897 > 192.168.1.101.ssh: . ack 43889 win 32640 <nop,nop,timestamp 12394857 1129873> (DF) [tos 0x10]
12:37:00.135061 192.168.1.101.1056 > 10.0.254.21.www: F 156:156(0) ack 479551 win 18012 <nop,nop,timestamp 1129873 732746088> (DF)
12:37:00.135623 10.0.254.21.www > 192.168.1.101.1056: . ack 157 win 5792 <nop,nop,timestamp 732746128 1129873> (DF)
12:37:01.655842 192.168.1.101.ssh > 192.168.1.100.32897: P 43889:44017(128) ack 144 win 7200 <nop,nop,timestamp 1130026 12394857> (DF)
12:37:01.655944 192.168.1.100.32897 > 192.168.1.101.ssh: . ack 44017 win 32640 <nop,nop,timestamp 12396383 1130026> (DF) [tos 0x10]
12:37:01.675423 192.168.1.101.ssh > 192.168.1.100.32897: P 44017:44113(96) ack 144 win 7200 <nop,nop,timestamp 1130028 12394857> (DF)
12:37:01.675534 192.168.1.100.32897 > 192.168.1.101.ssh: . ack 44113 win 32640 <nop,nop,timestamp 12396402 1130028> (DF) [tos 0x10]
12:37:06.654413 192.168.1.101.ssh > 192.168.1.100.32897: P 44113:44577(464) ack 144 win 7200 <nop,nop,timestamp 1130523 12396402> (DF)
12:37:06.654537 192.168.1.100.32897 > 192.168.1.101.ssh: . ack 44577 win 32640 <nop,nop,timestamp 12401382 1130523> (DF) [tos 0x10]
12:37:06.660533 192.168.1.101.1057 > 10.0.254.21.www: S 3806793363:3806793363(0) win 3840 <mss 960,sackOK,timestamp 1130525 0,nop,wscale 0> (DF)
12:37:09.628637 192.168.1.101.1057 > 10.0.254.21.www: S 3806793363:3806793363(0) win 3840 <mss 960,sackOK,timestamp 1130825 0,nop,wscale 0> (DF)
12:37:15.628943 192.168.1.101.1057 > 10.0.254.21.www: S 3806793363:3806793363(0) win 3840 <mss 960,sackOK,timestamp 1131425 0,nop,wscale 0> (DF)
12:37:27.628907 192.168.1.101.1057 > 10.0.254.21.www: S 3806793363:3806793363(0) win 3840 <mss 960,sackOK,timestamp 1132625 0,nop,wscale 0> (DF)
12:37:51.629240 192.168.1.101.1057 > 10.0.254.21.www: S 3806793363:3806793363(0) win 3840 <mss 960,sackOK,timestamp 1135025 0,nop,wscale 0> (DF)
12:38:39.628944 192.168.1.101.1057 > 10.0.254.21.www: S 3806793363:3806793363(0) win 3840 <mss 960,sackOK,timestamp 1139825 0,nop,wscale 0> (DF)