ftpClient连接局域网中另一台电脑上的FTP server时的连接超时问题
写了一个FtpClient链接Ftp服务器的一个简单程序,测试连接:
/**
* 测试登录
* */
public boolean login(String serverIP, String user, String pwd) throws IOException {
boolean flag = false;
FTPClient ftpClient = new FTPClient();
try {
ftpClient.connect(serverIP);
if(ftpClient.login(user, pwd)){flag = true;}
}catch(IOException e){
e.printStackTrace();
throw new RuntimeException("FTP客户端出错!", e);
}finally{
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException("关闭FTP连接发生异常!", e);
}
}
return flag;
}
当连接自己电脑上的服务器时可以连接上:
System.out.println(new FTPService().login("192.168.1.101", "admin", "admin"));
true但当连接到同一局域网内的其他电脑上的FTP服务器时,却连接超时:
System.out.println(new FTPService().login("192.168.56.1", "lab2", "admin"));java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:182)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:203)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:296)
at com.service.FTPService.login(FTPService.java:26)
at com.service.FTPService.main(FTPService.java:176)
Exception in thread "main" java.lang.RuntimeException: FTP客户端出错!
at com.service.FTPService.login(FTPService.java:30)
at com.service.FTPService.main(FTPService.java:176)
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:182)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:203)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:296)
at com.service.FTPService.login(FTPService.java:26)
... 1 more
想知道这个能不能连通与什么有关?要想连上,应该进行哪些操作?谢谢各位的不吝赐教。
...全文
相关推荐
android实现ftp上传、下载文件,支持文件夹哦
android实现ftp上传、下载文件,支持文件夹,android实现ftp上传、下载文件,支持文件夹android实现ftp上传、下载文件,支持文件夹
FTPClient开发工具类及使用示例
FTPClient开发工具类及FTPClient访问文件的部分使用示例
使用FTPClient实现ftp文件上传
本项目使用org.apache.commons.net.ftp.FTPClient实现文件上传到ftp服务器,解决不能上传中文文件的问题。
android ftpclient实例
本实例是基于Apache ftp类库进行封装实现的,希望对大家有帮助。
commons-ftp中ftpClient类的API.pdf
commons-ftp中ftpClient类的API.pdf


Java SE
