Mateusz Rajca said:
Yes. When I access the ftp.microsoft.com server via Internet Explorer I get
the error "Error opening the ftp server. Make sure you have permissions.
Which is IE's way of telling you that it's having the same problem as
your command-line tool. I think S.Sengupta might be right, that you
need to use passive mode.
If the computer having problems is connected to the net via a router
in your own home, then the normal way that FTP does business won't
work for you. Your router pretty surely does NAT (Network Address
Translation). That is, your ISP gives you one real IP address, and the
router takes that. Your router then makes up IP addresses and hands
those out to your computers that attach to it. When one of your
computers sends a message to a web server (for example), the router
replaces the made-up IP in the packets with its real IP, but makes up
a port number and remembers that port number and the made-up IP and
the port in the original packet.
Now, when a reply comes in addressed to the real IP, the router looks
up the port number on the packet in the table where it stored
information from the outbound packet. If the port number is there,
then the router knows where to send the packet. If the port number
isn't there, the packet is dropped.
FTP sends commands and short responses on port 21. Longer responses
and complete files are sent on another port. In the normal mode the
client tells the server that it will listen on some port number at its
IP (it sends both IP and port), and the server then opens a connection
to that port. In a NAT system that won't work, since the IP that the
client sends will be the made-up one that the router assigned. The
connection will never be established and you get a timeout.
In passive mode the client tells the server that it will initiate the
contact. The server gives the client a port number, and the contact is
made. Since the client is initiating contact, this works with NAT
systems.
Unfortunately the built-in command-line tool doesn't know what passive
mode is. There are other command-line tools that will work in passive
mode, also nearly any GUI client will do it.