Timeout on listing

Need help with FileZilla Client? Something does not work as expected? In this forum you may find an answer.

Moderator: Project members

Post Reply
Message
Author
virtualpps
500 Command not understood
Posts: 2
Joined: 2021-05-24 23:00
First name: Scott
Last name: D

Timeout on listing

#1 Post by virtualpps » 2021-05-24 23:40

Hello Support,
I have a similar issue making a connection to an external server. The connection occurs but cannot list the remote directory. Receive a timeout error.
Version 3.54.1

The Connection/FTP/Passive mode option to "Use the servers external IP address instead" is selected.

I've extracted the relevant section of the error log showing going into passive mode and using the server peer address.

Response: 227 Entering Passive Mode (10,110,0,254,35,66).
Trace: CFtpRawTransferOpData::ParseResponse() in state 2
Status: Server sent passive reply with unroutable address. Using server address instead.
Trace: Reply: 10.110.0.254, peer: xxx.110.123.90
Trace: CControlSocket::SendNextCommand()
Trace: CFtpRawTransferOpData::Send() in state 4
Trace: Binding data connection source IP to control connection source IP xxx.168.1.71
Trace: tls_layer_impl::client_handshake()
Trace: Trying to resume existing TLS session.
Command: LIST
#Error: Connection timed out after 20 seconds of inactivity


FULL LOG FROM CONNECTING

Status: Connecting to xxx.110.123.90:50111...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 Welcome to VPPS FTP service.
Trace: CFtpLogonOpData::ParseResponse() in state 1
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 2
Command: AUTH TLS
Trace: CFtpControlSocket::OnReceive()
Response: 234 Proceed with negotiation.
Trace: CFtpLogonOpData::ParseResponse() in state 2
Status: Initializing TLS...
Trace: tls_layer_impl::client_handshake()
Trace: tls_layer_impl::continue_handshake()
Trace: TLS handshake: About to send CLIENT HELLO
Trace: TLS handshake: Sent CLIENT HELLO
Trace: tls_layer_impl::on_send()
Trace: tls_layer_impl::continue_handshake()
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: TLS handshake: Received HELLO RETRY REQUEST
Trace: TLS handshake: Processed HELLO RETRY REQUEST
Trace: TLS handshake: About to send CLIENT HELLO
Trace: TLS handshake: Sent CLIENT HELLO
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: TLS handshake: Received SERVER HELLO
Trace: TLS handshake: Processed SERVER HELLO
Trace: TLS handshake: Received ENCRYPTED EXTENSIONS
Trace: TLS handshake: Processed ENCRYPTED EXTENSIONS
Trace: TLS handshake: Received CERTIFICATE REQUEST
Trace: TLS handshake: Processed CERTIFICATE REQUEST
Trace: TLS handshake: Received CERTIFICATE
Trace: TLS handshake: Processed CERTIFICATE
Trace: TLS handshake: Received CERTIFICATE VERIFY
Trace: TLS handshake: Processed CERTIFICATE VERIFY
Trace: TLS handshake: Received FINISHED
Trace: TLS handshake: Processed FINISHED
Trace: TLS handshake: About to send CERTIFICATE
Trace: TLS handshake: Sent CERTIFICATE
Trace: TLS handshake: About to send FINISHED
Trace: TLS handshake: Sent FINISHED
Trace: TLS Handshake successful
Trace: Protocol: TLS1.3, Key exchange: ECDHE-SECP256R1-RSA-PSS-RSAE-SHA384, Cipher: AES-256-GCM, MAC: AEAD
Trace: tls_layer_impl::verify_certificate()
Status: Verifying certificate...
Trace: CFtpControlSocket::SetAsyncRequestReply
Status: TLS connection established.
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 6
Command: USER virtualpps
Trace: CFtpControlSocket::OnReceive()
Trace: TLS handshake: Received NEW SESSION TICKET
Trace: TLS handshake: Processed NEW SESSION TICKET
Trace: gnutls_record_recv returned spurious EAGAIN
Trace: TLS handshake: Received NEW SESSION TICKET
Trace: TLS handshake: Processed NEW SESSION TICKET
Trace: gnutls_record_recv returned spurious EAGAIN
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 331 Please specify the password.
Trace: CFtpLogonOpData::ParseResponse() in state 6
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 6
Command: PASS *********
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 230 Login successful.
Trace: CFtpLogonOpData::ParseResponse() in state 6
Status: Server does not support non-ASCII characters.
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 11
Command: PBSZ 0
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 200 PBSZ set to 0.
Trace: CFtpLogonOpData::ParseResponse() in state 11
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 12
Command: PROT P
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 200 PROT now Private.
Trace: CFtpLogonOpData::ParseResponse() in state 12
Status: Logged in
Trace: Measured latency of 50 ms
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Trace: CFtpLogonOpData::Reset(0) in state 15
Trace: CFileZillaEnginePrivate::ResetOperation(0)
Trace: CControlSocket::SendNextCommand()
Trace: CFtpListOpData::Send() in state 0
Status: Retrieving directory listing...
Trace: CFtpChangeDirOpData::Send() in state 0
Trace: CFtpChangeDirOpData::Send() in state 1
Command: PWD
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 257 "/" is the current directory
Trace: CFtpChangeDirOpData::ParseResponse() in state 1
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Trace: CFtpChangeDirOpData::Reset(0) in state 1
Trace: CFtpListOpData::SubcommandResult(0) in state 1
Trace: CControlSocket::SendNextCommand()
Trace: CFtpListOpData::Send() in state 2
Trace: CFtpRawTransferOpData::Send() in state 0
Trace: CFtpRawTransferOpData::Send() in state 1
Command: TYPE I
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 200 Switching to Binary mode.
Trace: CFtpRawTransferOpData::ParseResponse() in state 1
Trace: CControlSocket::SendNextCommand()
Trace: CFtpRawTransferOpData::Send() in state 2
Command: PASV
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 227 Entering Passive Mode (10,110,0,254,35,66).
Trace: CFtpRawTransferOpData::ParseResponse() in state 2
Status: Server sent passive reply with unroutable address. Using server address instead.
Trace: Reply: 10.110.0.254, peer: xxx.110.123.90
Trace: CControlSocket::SendNextCommand()
Trace: CFtpRawTransferOpData::Send() in state 4
Trace: Binding data connection source IP to control connection source IP xxx.168.1.71
Trace: tls_layer_impl::client_handshake()
Trace: Trying to resume existing TLS session.
Command: LIST
#Error: Connection timed out after 20 seconds of inactivity
Trace: CFtpControlSocket::ResetOperation(2114)
Trace: CControlSocket::ResetOperation(2114)
Trace: CFtpRawTransferOpData::Reset(2114) in state 4
Trace: CFtpControlSocket::ResetOperation(2114)
Trace: CControlSocket::ResetOperation(2114)
Trace: CFtpListOpData::Reset(2114) in state 3
Error: Failed to retrieve directory listing
Status: Disconnected from server

User avatar
botg
Site Admin
Posts: 35507
Joined: 2004-02-23 20:49
First name: Tim
Last name: Kosse

Re: Timeout on listing

#2 Post by botg » 2021-05-25 07:47

Your server is behind a NAT router. Unfortunately neither the server nor the NAT router are configured properly, the ports for the connection are not forwarded and the server doesn't know its public IP address.

Please contact your server administrator or server hosting provider for assistance, they can use https://ftptest.net/ to test their server configuration.

virtualpps
500 Command not understood
Posts: 2
Joined: 2021-05-24 23:00
First name: Scott
Last name: D

Re: Timeout on listing

#3 Post by virtualpps » 2021-05-26 23:20

Correct, the server is behind a NAT router. However I have specified in the Settings/FTP/Passive Mode menu to use the servers external IP address instead.

and the log reports using passive mode and using server address, which is shown in the peer IP below. Do not see why this is not working unless it is the port number is required as well?

Response: 227 Entering Passive Mode (10,110,0,254,35,55).
Trace: CFtpRawTransferOpData::ParseResponse() in state 2
Status: Server sent passive reply with unroutable address. Using server address instead.
Trace: Reply: 10.110.0.254, peer: xxx.110.123.90
Trace: CControlSocket::SendNextCommand()
Trace: CFtpRawTransferOpData::Send() in state 4
Trace: Binding data connection source IP to control connection source IP 192.168.1.71
Trace: tls_layer_impl::client_handshake()
Trace: Trying to resume existing TLS session.
Command: LIST
Error: Connection timed out after 20 seconds of inactivity

User avatar
boco
Contributor
Posts: 26910
Joined: 2006-05-01 03:28
Location: Germany

Re: Timeout on listing

#4 Post by boco » 2021-05-27 02:01

Correct, the server is behind a NAT router. However I have specified in the Settings/FTP/Passive Mode menu to use the servers external IP address instead.
This doesn't actually achieve anything if the FTP server does not have its data ports for Passive mode forwarded. It only works around the server not knowing its public address.

You could try forwarding the data ports on your side and telling your client your public IP (proper configuration in the Active mode chapter of the Network Configuration Guide). Then, switch to Active mode for that server.
No support requests over PM! You will NOT get any reply!!!
FTP connection problems? Please read Network Configuration.
FileZilla connection test: https://filezilla-project.org/conntest.php
FileZilla Pro support: https://customerforum.fileZilla-project.org

Post Reply