Allow forcing and or fallback to use of EPSV over IPv4
I just had a case where an FTP server i was trying to use, had an incorrect response to the PASV command, causing connections to it to fail.
Obviously the server _should_ be configured right, but it's not mine… What to do…
I found EPSV, a feature _meant_ for IPv6, apparently, that works for this server, instant connection, instant directory listing, and 60ish MB/s for a 20GB file, no proooooblem…
ok, a bit of a problem no ftp client except lftp allow you to force use of EPSV over IPv4Except
Filezilla bug: https://trac.filezilla-project.org/ticket/10301 -- over 10 year old… no comments…
I found literally no posts on this in regards to WinSCP.
p.s. Obviously i prefer encrypted connections, but, again, not my server.
redacted TCPDump output:
Obviously the server _should_ be configured right, but it's not mine… What to do…
I found EPSV, a feature _meant_ for IPv6, apparently, that works for this server, instant connection, instant directory listing, and 60ish MB/s for a 20GB file, no proooooblem…
ok, a bit of a problem no ftp client except lftp allow you to force use of EPSV over IPv4Except
Filezilla bug: https://trac.filezilla-project.org/ticket/10301 -- over 10 year old… no comments…
I found literally no posts on this in regards to WinSCP.
p.s. Obviously i prefer encrypted connections, but, again, not my server.
redacted TCPDump output:
# # tcpdump was running on router between client and server, no encryption possible with server :'( # tcpdump -pnni eth6 'host example.com' 16:26:16.683810 IP 192.0.2.1.21 > 198.51.100.1.60544: Flags [P.], seq 424:439, ack 92, win 8195, options [nop,nop,TS val 3435580973 ecr 2892720621], length 15: FTP: 230 Logged on 16:26:16.683992 IP 198.51.100.1.60544 > 192.0.2.1.21: Flags [P.], seq 92:97, ack 439, win 501, options [nop,nop,TS val 2892720624 ecr 3435580973], length 5: FTP: PWD 16:26:16.686152 IP 192.0.2.1.21 > 198.51.100.1.60544: Flags [P.], seq 439:470, ack 97, win 8195, options [nop,nop,TS val 3435580973 ecr 2892720624], length 31: FTP: 257 "/" is current directory. 16:26:16.686494 IP 198.51.100.1.60544 > 192.0.2.1.21: Flags [P.], seq 97:103, ack 470, win 501, options [nop,nop,TS val 2892720626 ecr 3435580973], length 6: FTP: PASV 16:26:16.689652 IP 192.0.2.1.21 > 198.51.100.1.60544: Flags [P.], seq 470:521, ack 103, win 8195, options [nop,nop,TS val 3435580979 ecr 2892720626], length 51: FTP: 227 Entering Passive Mode (203,0,113,1,216,229) 16:26:16.730890 IP 198.51.100.1.60544 > 192.0.2.1.21: Flags [.], ack 521, win 501, options [nop,nop,TS val 2892720671 ecr 3435580979], length 0 16:28:17.231490 IP 192.0.2.1.21 > 198.51.100.1.60544: Flags [P.], seq 521:548, ack 103, win 8195, options [nop,nop,TS val 3435701524 ecr 2892720671], length 27: FTP: 421 Connection timed out. 16:28:17.231490 IP 192.0.2.1.21 > 198.51.100.1.60544: Flags [F.], seq 548, ack 103, win 8195, options [nop,nop,TS val 3435701524 ecr 2892720671], length 0 16:28:17.231743 IP 198.51.100.1.60544 > 192.0.2.1.21: Flags [.], ack 548, win 501, options [nop,nop,TS val 2892841172 ecr 3435701524], length 0 16:28:17.231931 IP 198.51.100.1.60544 > 192.0.2.1.21: Flags [F.], seq 103, ack 549, win 501, options [nop,nop,TS val 2892841172 ecr 3435701524], length 0 16:28:17.235511 IP 192.0.2.1.21 > 198.51.100.1.60544: Flags [.], ack 104, win 8195, options [nop,nop,TS val 3435701528 ecr 2892841172], length 0 vs 16:49:40.696171 IP 192.0.2.1.21 > 198.51.100.1.43250: Flags [P.], seq 424:439, ack 92, win 8195, options [nop,nop,TS val 3436985024 ecr 2894124634], length 15: FTP: 230 Logged on 16:49:40.696667 IP 198.51.100.1.43250 > 192.0.2.1.21: Flags [P.], seq 92:97, ack 439, win 501, options [nop,nop,TS val 2894124637 ecr 3436985024], length 5: FTP: PWD 16:49:40.698676 IP 192.0.2.1.21 > 198.51.100.1.43250: Flags [P.], seq 439:470, ack 97, win 8195, options [nop,nop,TS val 3436985024 ecr 2894124637], length 31: FTP: 257 "/" is current directory. 16:49:40.699283 IP 198.51.100.1.43250 > 192.0.2.1.21: Flags [P.], seq 97:103, ack 470, win 501, options [nop,nop,TS val 2894124639 ecr 3436985024], length 6: FTP: EPSV 16:49:40.701861 IP 192.0.2.1.21 > 198.51.100.1.43250: Flags [P.], seq 470:518, ack 103, win 8195, options [nop,nop,TS val 3436985029 ecr 2894124639], length 48: FTP: 229 Entering Extended Passive Mode (|||55302|) 16:49:40.702370 IP 198.51.100.1.45294 > 192.0.2.1.55302: Flags [S], seq 955069495, win 64240, options [mss 1460,sackOK,TS val 2894124643 ecr 0,nop,wscale 7], length 0 16:49:40.704474 IP 192.0.2.1.55302 > 198.51.100.1.45294: Flags [S.], seq 2225977054, ack 955069496, win 65535, options [mss 1460,nop,wscale 8,sackOK,TS val 3436985032 ecr 2894124643], length 0 16:49:40.705007 IP 198.51.100.1.45294 > 192.0.2.1.55302: Flags [.], ack 1, win 502, options [nop,nop,TS val 2894124645 ecr 3436985032], length 0 16:49:40.705059 IP 198.51.100.1.43250 > 192.0.2.1.21: Flags [P.], seq 103:109, ack 518, win 501, options [nop,nop,TS val 2894124645 ecr 3436985029], length 6: FTP: LIST 16:49:40.708460 IP 192.0.2.1.21 > 198.51.100.1.43250: Flags [P.], seq 518:573, ack 109, win 8195, options [nop,nop,TS val 3436985036 ecr 2894124645], length 55: FTP: 150 Opening data channel for directory listing of "/" 16:49:40.708618 IP 192.0.2.1.55302 > 198.51.100.1.45294: Flags [P.], seq 1:148, ack 1, win 8195, options [nop,nop,TS val 3436985036 ecr 2894124645], length 147 16:49:40.708618 IP 192.0.2.1.55302 > 198.51.100.1.45294: Flags [F.], seq 148, ack 1, win 8195, options [nop,nop,TS val 3436985036 ecr 2894124645], length 0 16:49:40.708904 IP 198.51.100.1.45294 > 192.0.2.1.55302: Flags [.], ack 148, win 501, options [nop,nop,TS val 2894124649 ecr 3436985036], length 0 16:49:40.708929 IP 198.51.100.1.45294 > 192.0.2.1.55302: Flags [F.], seq 1, ack 149, win 501, options [nop,nop,TS val 2894124649 ecr 3436985036], length 0 16:49:40.709585 IP 192.0.2.1.21 > 198.51.100.1.43250: Flags [P.], seq 573:607, ack 109, win 8195, options [nop,nop,TS val 3436985037 ecr 2894124645], length 34: FTP: 226 Successfully transferred "/"