客户端连接FTP服务器,执行到ftpClient.listFiles()总是为空,但是同样的代码却可以连接另外一台FTP服务器。连接方式都是被动模式。经跟踪源码发现执行到socket.connect(...)这个方法时就报connection time out。发现这两台FTP服务器是出于不同的网段,其中客户端与一台服务器在同一个网段,得出在跨网段访问时中间存在防火墙,阻隔了客户端连接访问。
PORT中文称为主动模式,工作的原理: FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,客户端随机开放一个端口(1024以上),发送 PORT命令到FTP服务器,告诉服务器客户端采用主动模式并开放端口;FTP服务器收到PORT主动模式命令和端口号后,通过服务器的20端口和客户端开放的端口连接,发送数据。
PASV是Passive的缩写,中文成为被动模式,工作原理:FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,发送PASV命令到FTP服务器, 服务器在本地随机开放一个端口(1024以上),然后把开放的端口告诉客户端, 客户端再连接到服务器开放的端口进行数据传输。
分享到:
相关推荐
解决了某些系统中,ftpClient.listFiles()返回值总是为空的问题。 使用方法如下: ftpClient.changeWorkingDirectory(path); ftpClient.enterLocalPassiveMode(); ftpClient.configure(new FTPClientConfig(...
ftpClient.changeWorkingDirectory(path); ftpClient.enterLocalPassiveMode(); //由于apache不支持中文语言环境,通过定制类解析中文日期类型 ... FTPFile[] files = ftpClient.listFiles();
CentOS某些版本中,JAVA代码执行ftpClient.listFiles()有时结果为空。本项目解决了这个问题。具体代码思路可以参考博客:http://blog.csdn.net/yingprince/article/details/51275956
org.apache.commons.net.ftp.FTPClient包,不错,在实际项目和产品中使用过。
C#的FTP操作类库,支持FTP文件的上传,下载等等,封装好的可直接引用FtpClient; 如果自己单枪匹马写一个连接ftp服务器代码那是相当恐怖的(socket通信),有一个评价较高的dll库可以供我们使用。 那就是System...
常用工具\8161_FTPClient.exe
sun.net.ftp.FtpClient,it.sauronsoftware.ftp4j.FTPClient,org.apache.commons.net.ftp.FTPClient三种不同的方式操作FTP
编译后可在bin下面生成System.Net.FtpClient.dll,用于C#在ftp上传时调用。
FTPClient.zip FTPServer.zip FTPClient.zip FTPServer.zip FTPClient.zip FTPServer.zip
FTPServer.zip FTPClient.zip FTPServer.zip FTPClient.zip FTPServer.zip FTPClient.zip FTPServer.zip FTPClient.zip FTPServer.zip FTPClient.zip
FTP应用的jar包,主要用于java开发FTP上传下载
利用FTPClient.cs实现服务器上传与下载
Apache的FTPClient的工具类,希望能帮到大家
开发技术 / C#、FtpClient.cs FTP连接及部分操作。FTP Client library in C#。Author: Jaimon Mathew。
详细的ftpclient封装了ftpwebrequest,ftpwebresponse操作ftp服务器的复杂过程与方法,能够像webclient一样简单的操作ftp服务器,实现上传,下载,删除等操作。。。
NULL 博文链接:https://vakinge.iteye.com/blog/487486
org.apache.commons.net.ftp.FTPClient FTP工具类,实现上传、下载、压缩到输出流下载等功能
1,实现了客户端下载ftp服务器文件需求 2,使用了qt中ftp接口,但不需要再次下载编译QFtp类,直接使用即可 3,稍作小修改可实现上传等功能,可直接使用已经写好的接口函数
Apache Commons Net » 3.3 org.apache.commons.net.ftp.FTPClient
Apache FTPClient操作FTP工具类