FTP Server on DDNS Machine

One of my Client has a DDNS (Dynamic DNS) machine and I can connect to it via the name / temporary IP via Sockets.
I can also transfer messages via the Socket connection.
To transfer files I want to use the FTP Protocol but it did not work.
Any suggestions as to what may be minimum requirements for transfer files via FTP on DDNS.
Allan_FernandesAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

KimputerCommented:
There are no real minimum requirements. What are the error messages you see on the server console? What error messages do you see on the client console?
Dr. KlahnPrincipal Software EngineerCommented:
If the machine is behind a firewall, check and confirm that the FTP port is forwarded to the machine in question, and that the FTP port is not firewalled.

If the system is linux, confirm that an FTP server is installed and is listening on port 21 as shown by netstat.
Allan_FernandesAuthor Commented:
Sorry client will be open only on Monday. Will get back then
JavaScript Best Practices

Save hours in development time and avoid common mistakes by learning the best practices to use for JavaScript.

Allan_FernandesAuthor Commented:
Following are the FtpServer and FtpClient logs. Please note that if I load the FTP Client on the same machine then it works fine.

FTP Server Logs
……
…..
! 111.11.111.11 connected
< 111.11.111.11 USER ABC
! Opening Accounts File: c:\XYZserver\ftpFls.ini
> 111.11.111.11 331 Password required for ABC.
< 111.11.111.11 PASS ABC
! 111.11.111.11=ABC is authenticated
! 111.11.111.11=ABC Home Directory: C:\FtpUpload\
> 111.11.111.11 230 User ABC logged in.
< 111.11.111.11 TYPE I
> 111.11.111.11 200 Type set to I.
< 111.11.111.11 SYST
> 111.11.111.11 215 UNIX Type: L8 ICS
< 111.11.111.11 FEAT
> 111.11.111.11 211-Extensions supported:
 HOST
 SIZE
 REST STREAM
 MDTM
 MDTM YYYYMMDDHHMMSS[+-TZ] filename
 MLST size*;type*;perm*;create*;modify*;
 MFMT
 MD5
 XCRC "filename" start end
 XMD5 "filename" start end
 CLNT
 SITE INDEX;ZONE;CMLSD;DMLSD
 MODE Z
 XCMLSD
 XDMLSD
 UTF8
 LANG EN*
 OPTS MODE;UTF8;
 AUTH TLS;SSL;
 CCC
 PROT C;P;
 PBSZ
211 END
< 111.11.111.11 PASV
> 111.11.111.11 227 Entering Passive Mode (222,222,2,222,222,222).


FTP Client Logs

  PutFile:
    DllDate: 2012
    Username: MSERVER:Admin
    Architecture: Little Endian; 32-bit
    Language: C++ Builder XE2
    VerboseLogging: 0
    LocalFilename: c:\XYZ\XYZ.chm
    RemoteFilename: FtpUploadTest.Chm
    ProgressMonitoring:
      enabled: yes
      heartbeatMs: 0
      sendBufferSize: 65536
    --ProgressMonitoring
    IdleTimeoutMs: 60000
    ReceiveTimeoutMs: 60000
    ConnectTimeoutSeconds: 60
    initialGreeting: 220-Welcome to my Server
220-
220 ABC FTP Server ready.
    restartNext: 0
    ModeZ: 0
    BinaryMode: 1
    Passive transfer mode
    setupPassiveDataSocket3:
      hostAddr: 222.222.2.222
      DataConnect:
        hostname: 222.222.2.222
        port: 55173
        ConnectTimeoutMs_1: 60000
        calling ConnectSocket2
        IPV6 enabled connect with NO heartbeat.
        This is an IPV4 numeric address...
        AddrInfoList:
          AddrInfo:
            ai_flags: 4
            ai_family: 2
            ai_socktype: 1
            ai_protocol: 0
            ai_addrlen: 16
            ai_canonname: (NULL)
          --AddrInfo
        --AddrInfoList
        Connect using IPV4.
        ipAddress1: 222.222.2.222
        timeout waiting for connect to complete
        numSec: 15
        numMicroSec: 958000
        Connect function failed..
        SocketError: WSAEWOULDBLOCK The socket would block.
      --DataConnect
      Try setting the PassiveUseHostAddr property = true
      setupPassiveDataSocket dataConnect failed.
    --setupPassiveDataSocket3
    SetupPassiveDataSocket: Elapsed time: 60232 millisec
    Failed to setup passive data socket for PutFile
    TotalTime: Elapsed time: 60232 millisec
    Failed.
  --PutFile
KimputerCommented:
Since you get some response from the server/client, it means you have a problem with the passive ports in the  firewall.
You have to find the settings for passive ports in your FTP server configuration, then select about 100 ports (for example, ports 21000 through 21100), then use the port range forward settings in your firewall/router, and make sure that as an EXTRA to the port 21 you already forwarded, to also forward ports 21000 through 21100 to that same server IP.
The next step would be to provide us with your FTP server (vendor/version), or to possibly think about using Filezilla Server (for its security feature, easy user interface, with settings easy to understand and configure).
Allan_FernandesAuthor Commented:
FileZilla FTP Server seems to be free or does it have any limitations ?
Allan_FernandesAuthor Commented:
What exactly do you mean by saying forward the ports 21000...
Is it that I tell my customer to open those ports ?
KimputerCommented:
Free, no limitations. As I said, it's a HUGE step FORWARD if you were using MS IIS/FTP. I already said this:

- easily configure passive ports
- easily assign users folders/virtual folders
- anti-hammering features
- bandwidth features

AND MUCH MUCH MORE.

The ports I mentioned are used for the passive FTP protocol and NEEDS TO BE INPUT in the firewall/router (NAT port forwarding), just as you did with port 21 earlier.
Port range 21000 through 21100 was an example, you can have any range you wish, as long as the same range is input in the firewall/router/modem (as the FTP server side).

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Allan_FernandesAuthor Commented:
Thanks for the simple and to the point explanations
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Windows OS

From novice to tech pro — start learning today.