nic.funet.fi: Serving freely distributable files with FTP since 1990
FTP is such a horribly dated protocol; it's actually older than TCP!The NAT issues are well known, but resolved in a standard way.  However, the intersection of {Features defined in RFCs} and {Features implemented in FTP Servers} is much smaller than the sizes of either set.  Many useful things are implemented outside of the spec, and most of the spec is not implemented in servers.