您的位置:首页 > 编程语言 > PHP开发

ftp的内网问题,通过路由器映射非21端口不成功的解决方法

2013-11-23 21:26 309 查看
ftp内网问题,我的电脑处于内网,但我已经在20021端口做了映射。在本机上是用Serv-U 6.3.0.0 中文版建ftp的,但是当我使用FLASHFXP登陆的时候,发现总是能连接成功,但不能显示文件列表。

首先可以在路由器上预先映射5个端口,比如:20022,20023,20024,20025,20026,这里是跟着20021连续设置的

当然要映射到你做ftp服务器的内网地址上来,而且那个20021的映射是前提,应该已经设置过了

接着我们打开Serv-U 6.3.0.0 ,在其中的“本地服务器”-“设置”,在右侧的“高级”一项中找到PASv端口范围,把刚才的20022-20026填写上,注意要点击一下应用,然后在“域”-“设置”,在右侧的“高级”中有“允许被动模式传输数据,使用IP”这一项前打勾,并填写上你的外网固定IP,再点击一下应用,即可!

说明:

FTP的映射和别的端口映射是有区别的,FTP工作时21端口只是控制端口,并不用来传送数据,传送数据的端口是每次连接的时候才由客户端和服务端协商决定的,就像你上面显示的那样,20022、20023端口才是数据传输的端口,而你并没有为它们做映射,所以传不了东西。

所以映射的时候内网端口必须是21,不能是别的,不然就是你现在这样的现象。还有必须做回流。

另一英文版说明:端口号不同,请大家仔细查看

具体:domains下的ftp服务器的settings里,advanced下,allow passive mode data transfers,use IP,那一栏前面钩上,后面的ip填写你公网的ip。

local server的settings当中,advancd里PASV port range填写你想使用的端口范围,比如8022-8030之类,不要把ftp服务器的端口也写进去,比如ftp服务器的端口设定的是2121,那就不好写成2121-xxxx这样子.

数据传输用的端口就这样设定了,然后端口映射的时候就只要映射FTP服务器的端口和这些在pasv port range下的端口就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐