Active ftp:
you ftp to some server..
your machine actually connects to the server's port 21
you type 'ls'
your machine will pick a random port and tell the ftp server to connect to that port.
Here's were things go wrong when you have a firewall and/or broadband router..
It doesn't know about the random port so it'll block the incoming connection from the ftp server..
Passive ftp:
you connect to some server..
as with active your machine connects to the ftp server's port 21
you type 'ls'
Here's the difference.. Now the server picks a random port and tells the client to connect to it.
Since it's an outgoing connection your firewall will probably allow it..
Note: MS's console based ftp client can only do active ftp. Internet Explorer (using ftp:// ) is passive.. Linux console ftp client can usually do both, active and passive.. You put it in passive mode with the command "passive"..
Last note: Things go really weird when both sides (client and server) use ftp-unaware firewalls..




Reply With Quote