当前位置:首页 » 文件管理 » ftp消息中type100

ftp消息中type100

发布时间: 2023-03-31 06:09:55

ftp连接失败的原因

考虑以下原因:

1、防火墙挡住了

2、没有查看内容的权限

3、网管屏蔽了FTP端口

默认是pasv模式,因为服务端防火墙的设置,客户端不能用pasv模式,将设置中的pasv模式置为空,就正常了

FTP连接服务器失败的原因一般有以下几种:

1、网络不通导致FTP连接服务器失败

有时可能是由服务器或者电脑本地网络有问题,导致FTP连接服务器失败。可以通过浏览器查看网页测试是否是网络问题。

2、服务器出现宕机、死机、重启等情况

我们在租用服务器时,都会对服务器的访问速度及稳定性进行考察。服务器出现右机、死机、重启等情况不仅会导致FIP连接服务器失败,也直接导致网站无法正常运营,从而影响网站优化排名及用户体验。如果出现此情况,尽快联系服务器提供商进行解决。

3、防火墙设置出现问题导致服务器连接失败查看我们的防火墙设置是否勾选了“PASV模式”,如果勾选,那么将取消,然后尝试重新连接。

4、FTP软件出现问题导致连接服务器失败有时我们会忘记对软件的及时更新,所以导致使用的FTP软件版本过低或者被停用,再或者该软件出现了问题。此时我们可以先删除现有软件,然后重新安装。

5、短时间内连接服务器次数过多

可能由于FTP连接服务器的速度稍微有些慢,我们等待的比较着急,就不停地点击连接按钮,导致短时间内容连接次数过于频繁而连接失败。

6、服务器被ISP屏蔽导致FTP连接服务器失败判断服务器是否被ISP屏蔽,可以通过使用代理服务器进行连接测试。

7、租用的服务器后台被关闭

如果以上几种情况都被排除,那么很有可能是我们所租用的服务器后台被关闭了,此时需要连接服务器提供商进行核查与修改。

FTP连接服务器失败的原因有很多,基本比较常见的情况就是以上几种。为保障网站的正常运营,当出现FTP服务器失败的情况,应及时检查其原因并解决。

拓展资料:

FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。

㈡ 在公司使用FTP出现如下错误是什么原因怎么解决

这是放火墙的原因,你把你的FTP软件里的PASV模式(被动模式)前面的勾去掉就可以了。给出三种FTP软件的取消被动模式的方法,其他的都类似
1、FlashFxp取消被动模式:在工具栏的 站点-站点管理器-要取消的站点 -选项-使用被动模式-去掉其前面的钩
2、CuteFtp取消被动模式:站点管理器-要取消的站点-右键选择属性-类型-数据连接类型-使用 port-确定
3、LeapFtp取消被动模昌段式:在工具栏的 站点-肆迅闹站点管理器-要取消的站点-高级-裂罩使用pasv模式-去掉其前面的钩

㈢ 打开FTP服务器上的文件夹时发生错误。请检查是否有权限访问该文件夹

FTP数据读写失败一般有几种情况:

  1. 文件损失,不完整,导致传输过程验证失败。

  2. 文件使用中,比如在杀毒或者编辑中的文件,系统占用是不能传输的。

  3. 权限不足,比如针物高对某些用户,是不能传输部分文件的,比如exe等风险文件。

  4. 特殊情况,比如文件传输过程中,目录满了,存储失败,这罩配尺个是由服务器管理员控制的卖兄,如果目录体积不够文件传输的,联系管理员协商解决。

㈣ FTP目录有哪些属性

一、设置FTP站点主目录
[操作步骤]
同Web站点一样,每个FTP站点也必须有一个主目录,作为其他访问者用户FTP站点的起点。在FTP站点中,所有的文件都存放在作为根目录的主目录中,这就使其他访问者对用户FTP站点中的文件查找变得非常方便。
1.选择“开始”→“程序”→“管理工具”→“Internet信息服务器”命令,打开“Internet信息服务”控制台窗口。在控制台目录树中,展开“Internet信息服务”节点,再双击该节点展开服务器节点。
2.右击“默认FTP站点”,从弹出的快捷菜单中选择“属性”命令,打开“默认FTP站点属性”对话框,然后切换到“主目录”选项卡。
3.选择“此计算机上的目录”单选按钮。如果主目录在服务器上,则选择该单选按钮;如果主目录在网络计算机上,则选择“另一计算机上的共享位置”。
4.在“FTP站点目录”选项组中,单击“浏览”,选择主目录路径,或者直接输入主目录路径。这里是“默认FTP站点”的主目录c:\Inetpub\ftproot,未改变它。
5.通过启用不同复选框来设置目录权限。读取:能够下载存储在主目录或虚拟目录文件。写入:上传文件到FTP站点的主目录或虚拟目录。日志访问:对主目录的访问都记录在日志文件中。
6.在“目录列表风格”选项组中,通过选择不同的单选按钮来选择目录列表的风格,包括UNIX和MS-DOS风格。设置完毕,单击“确定”。
7.如果要将“公司主FTP站点”的主目录,设置为“默认WEB站点”的主目录c:\Inetpub\wwwroot,单击“浏览”按钮,找到c:\Inetpub\wwwroot。
二、设置FTP站点的标识码、连接数、记录方式
[操作步骤]
在FTP站点属性中,利用“FTP站点”选项卡可以设置FTP站点的标识码、连接数和记录的方式。
选中“默认FTP站点”,右击“属性”,选择“FTP站点”选项卡,在“标识”框中的“说明”:FTP站点的名称,在“Internet信息服务”管理器树状结构中用的就用此名称。“IP地址”:选择使用的IP地址,而且尚未指定给其他的FTP站点。“TCP端口”:设置Internet服务的连接端口号,默认为21。
在“连接”框中,设置同时连接FTP站点的用户数和连接逾时时间。“无限”:不限制同时连接的用户数。“限制到”:设置同时的最大连接数,请在后面字段输入允许的最大连接数。“连接超时”:如果已经没有传送资料的用户连接,设置等待的时间,以秒计。
选中“启用日志记录”,启动FTP站点的日志记录功能,并且允许选择使用的日志格式(下拉列表中)。
单击“当前会话”按钮,可以查看目前的连接者,显示用户的名称,如果是匿名就是电子邮件地址,来源的IP地址和登录的时间。选择某一用户后,单击下方的“断开”按钮,以便强迫用户注销,单击“全部断开”将注销所有的用户。
三、设置FTP站点是否允许匿名连接
[操作步骤]
在FTP站点属性中,在“安全帐号”选项卡中设置FTP站点是否允许匿名连接和FTP站点操作员。
选中“默认FTP站点”,右击“属性”,选择“安全帐号”选项卡,在“允许匿名连接”中选择FTP站点是否允许匿名连接,设置匿名用户的默认用户帐号,如果此选项未被选中,则必须有用户帐户登录。选中“只允许匿名连接”选项,则不允许用户帐户登录,只能匿名登录。选中“允许IIS控制密码”复选框,将使用IIS来同步密码。
“FTP站点操作员”:单击“添加”按钮,从列表框中选取操作员权限的Windows2000用户帐户,如果要删除操作员,请选取列表框的用户帐号,单击“删除”按钮,删除指定的操作员。
四、设置FTP站点进入、退出和太多连接时的消息正文
[操作步骤]
在FTP站点属性中,在“消息”选项卡中设置FTP站点进入、退出和太多连接时的消息正文,如果没有设置,默认使用英文的文字说明。
选中“默认FTP站点”,右击“属性”,选择“消息”选项卡,“欢迎”:当登录FTP站点时,欢迎用户进入FTP站点的消息正文。“退出”:当用户注销时显示的消息正文。“最大连接数”:如果目前连接数超过设置的最大连接数时,显示的警告信息。
五、设置FTP站点访问限制
[操作步骤]
在FTP站点属性中,在“目录安全性”选项卡中能够设置TCP/IP访问限制,添加IP地址授予访问或拒绝访问FTP站点的权限。
选中“默认FTP站点”,右击“属性”,选择“目录安全性”选项卡,选取“授权访问”或“拒绝访问”单选,以改变FTP站点访问的方式。
如果要拒绝某些地址的访问,则先选取“拒绝访问”单选框,单击“添加”按钮,打开“拒绝以下访问”对话框。若选择限制的类型为“单机”,则指定拒绝访问的IP地址。若选择限制的类型为“一组计算机”则指定网络标识及子网掩码。
六、自己练习
[操作步骤]
1.建立一个可以远程维护默认WEB站点的FTP目录,即:可以通过FTP服务上传文件至默认WEB站点的主目录。
2.此FTP服务每次只能有10个用户使用此服务。当此FTP服务的连接数达到所允许的最大值时,如果还有用户想进行连接,发出信息“已达到最大连接数”,且当用户从此FTP服务注销时,发出信息“再见”。

㈤ FTP上传文件错误

150 opening ascii mode data connection for /bin/ls.
426 data connection closed, transfer aborted.

这种情况可能是你所在网络安装了防火墙(或代理),该防火墙(或代理)禁止来自远程的连接,426 data connection closed, transfer aborted表明了这一点。这时候你可以使用被动传输模式(pasv模式),来避免该限制,进行数据传输.
解决办法是在该ftp标签的站点设置中,设置为被动模式pasv模式.同样,如果前面有网友出现200 port command successful.
连不上的情况,也用上面方法

1.
connected. waiting for response.
220 serv-u ftp server v4.0 for winsock ready...
user anonymous
530 sorry, no anonymous access allowed.
quit
不允许匿名登录

2.

connected. waiting for response.
220 serv-u ftp server v4.0 for winsock ready...
user test
331 user name okay, need password.
pass xxxxxx
530 not logged in.
quit
一般是密码输入错误时出现的信息。密码不对哟!

3.
connecting to xxx.xxx.xxx.xxx, port 21 (#1)
error: connection timed out

这个表明对方未开机,也可能是对方不在你能访问的范围内。可能小区的服务器检修中。

4.

connecting to xxx.xxx.xxx.xxx port 21 (#1)
error: connection refused
这个一般表明对方已开机,但未开启ftp服务(没有开serv-u)
也可能为对方不提供在这个端口上的服务

5.

connecting to xxx.xxx.xxx.xxx, port 21 (#1)
connected. waiting for response.
disconnected from server.
connection attempt failed. waiting for retry...
出现这个信息实在是很倒霉,你极有可能把重试时间定的太短服务器封了你哟!

6.
connecting to xxx.xxx.xxx.xxx, port 21 (#1)
connected. waiting for response.
user xxx
331 user name okay, need password
pass xxxxxx
530 not logged in, unauthorized ip address.
quit
没有登记ip!或者登记的ip和你现在下载的不一样!赶快重新登记吧!

7.
227 entering passive mode (218,3,87,224,10,232)
retr hfdx-tsoaf.sub.rar
550 sorry, insufficient credit for download - upload first.
传输已失败!
传输队列已完成
你的流量不够了,重新购买吧!

8.
connected. waiting for response.
220 serv-u ftp server v4.0 for winsock ready...
user user
421 too many users - please try again later.
说明当前你所属的下载组的下载人数已到上限,请过些时候再尝试,用Flashget等的下载工具不断尝试联接的人请讲尝试时间调大一点,否则会被服务器封闭一段时间的IP

9.
150 opening ascii mode data connection for /bin/ls.
426 data connection closed, transfer aborted.

这种情况可能是你所在网络安装了防火墙(或代理),该防火墙(或代理)禁止来自远程的连接,426 data connection closed, transfer aborted表明了这一点。这时候你可以使用被动传输模式(pasv模式),来避免该限制,进行数据传输.
解决办法是在该ftp标签的站点设置中,设置为被动模式pasv模式.同样,如果前面有网友出现200 port command successful.
连不上的情况,也用上面方法

Connecting to xxx.xxx.xxx.xxx, Port 21 (#1)
ERROR: Connection timed out
这个表明对方未开机,也可能是对方不在你能访问的范围内
-----------------------------------
Connecting to xxx.xxx.xxx.xxx Port 21 (#1)
ERROR: Connection refused
这个一般表明对方已开机,但未开启FTP服务(没有开Serv-U)
也可能为对方不提供在这个端口上的服务
-----------------------------------
Connecting to xxx.xxx.xxx.xxx, Port 21 (#1)
Connected. Waiting for response.
Disconnected from server.
Connection attempt failed. Waiting for retry...
出现这个信息实在是很倒霉,你极有可能被对方Ban了。
如果只是Ban几分钟or几小时or一天还好,不然只有和站长说说好话,让他给你解封吧。

-----------------------------------
110 Restart marker reply. In this case, the text is exact and not left to
the particular implementation; it must read: MARK yyyy = mmmm where yyyy is
User-process data stream marker, and mmmm server s equivalent marker (note
the spaces between markers and "=").
重新启动标志回应。这种情况下,信息是精确的并且不用特别的处理;可以这样看:标记 yyyy = mmm 中 yyyy是 用户进程数据流标记,mmmm是服务器端相应的标记(注意在标记和等号间的空格)
-----------------------------------
120 Service ready in nnn minutes.
服务在NNN时间内可用
-----------------------------------
125 Data connection already open; transfer starting.
数据连接已经打开,开始传送数据.
-----------------------------------
150 File status okay; about to open data connection.
文件状态正确,正在打开数据连接.
-----------------------------------
200 Command okay.
命令执行正常结束.
-----------------------------------
202 Command not implemented, superfluous at this site.
命令未被执行,此站点不支持此命令.
-----------------------------------
211 System status, or system help reply.
系统状态或系统帮助信息回应.
-----------------------------------
212 Directory status.
目录状态信息.
-----------------------------------
213 File status.
文件状态信息.
-----------------------------------
214 Help message.On how to use the server or the meaning of a particular
non-standard command. This reply is useful only to the human user. 帮助信息。
关于如何使用本服务器或特殊的非标准命令。此回复只对人有用。
-----------------------------------
215 NAME system type. Where NAME is an official system name from the list
in the Assigned Numbers document.
NAME系统类型。
-----------------------------------
220 Service ready for new user.
新连接的用户的服务已就绪
-----------------------------------
221 Service closing control connection.
控制连接关闭
-----------------------------------
225 Data connection open; no transfer in progress.
数据连接已打开,没有进行中的数据传送
-----------------------------------
226 Closing data connection. Requested file action successful (for example,
file transfer or file abort).
正在关闭数据连接。请求文件动作成功结束(例如,文件传送或终止)
-----------------------------------
227 Entering Passive Mode (h1,h2,h3,h4,p1,p2).
进入被动模式
-----------------------------------
230 User logged in, proceed. Logged out if appropriate.
用户已登入。 如果不需要可以登出。
-----------------------------------
250 Requested file action okay, completed.
被请求文件操作成功完成
-----------------------------------
257 "PATHNAME" created.
路径已建立
-----------------------------------
331 User name okay, need password.
用户名存在,需要输入密码
-----------------------------------
332 Need account for login.
需要登陆的账户
-----------------------------------
350 Requested file action pending further information
对被请求文件的操作需要进一步更多的信息
-----------------------------------
421 Service not available, closing control connection.This may be a reply
to any command if the service knows it must shut down.
服务不可用,控制连接关闭。这可能是对任何命令的回应,如果服务认为它必须关闭
421 Too many users - please try again later.
太多用户,那就过会再连
-----------------------------------
425 Can t open data connection.
打开数据连接失败
-----------------------------------
426 Connection closed; transfer aborted.
连接关闭,传送中止。
-----------------------------------
450 Requested file action not taken.
对被请求文件的操作未被执行
-----------------------------------
451 Requested action aborted. Local error in processing.
请求的操作中止。处理中发生本地错误。
-----------------------------------
452 Requested action not taken. Insufficient storage space in system.File
unavailable (e.g., file busy).
请求的操作没有被执行。 系统存储空间不足。 文件不可用
-----------------------------------
500 Syntax error, command unrecognized. This may include errors such as
command line too long.
语法错误,不可识别的命令。 这可能是命令行过长。
-----------------------------------
501 Syntax error in parameters or arguments.
参数错误导致的语法错误
-----------------------------------
502 Command not implemented.
命令未被执行
-----------------------------------
503 Bad sequence of commands.
命令的次序错误。
-----------------------------------
504 Command not implemented for that parameter.
由于参数错误,命令未被执行
-----------------------------------
530 Not logged in.
一般来说是密码错误。
530 Sorry, no ANONYMOUS access allowed.
这个就是不许匿名登录
530 Not logged in, unauthorized IP address
这个有点麻烦,你的IP不在站长允许访问的IP范围内,只有和站长联系,让他把你的IP网段加入Allow Access列表里吧
530 Not logged in, only one(也有可能是two or three) session from same IP allowed at a time.
每个IP只能开一个(也有可能是two or three) 下载,就不要用多线程啦,小心Ban了你。
-----------------------------------
532 Need account for storing files.
存储文件需要账户信息
-----------------------------------
550 Requested action not taken. File unavailable (e.g., file not found, no
access).
请求操作未被执行,文件不可用。
-----------------------------------
551 Requested action aborted. Page type unknown.
请求操作中止,页面类型未知
-----------------------------------
552 Requested file action aborted. Exceeded storage allocation (for current
directory or dataset).
对请求文件的操作中止。 超出存储分配
-----------------------------------
553 Requested action not taken. File name not allowed
请求操作未被执行。 文件名不允许
-----------------------------------
这种错误跟http协议类似,大致是:
2开头--成功
3开头--权限问题
4开头--文件问题
5开头--服务器问题

㈥ FTP无法连接

注意这段话:
227 Entering Passive Mode (60,165,133,154,13,31)
ERROR: [Data]: Connection refused

PASV模式,PORT模式错误~!

如果你用的是ftp客户端软件请把被动模式选择上就可以了。

补充:返回值:227 Entering Passive Mode (60,165,133,154,13,31)说明
每一个ftp发送之后,ftp服务器都会返回一个字符串,其中包括一个返回代码和一串说明信息。这个返回码主要是用于判断命令是否被成功执行了。除此之外,还有一个非常重要的命令的返回。当发送pasv之后,返回“227 entering passive mode (60,165,133,154,13,31)”。这意味着在服务器上有一个端口被开放,他将为我们后面接着的数据传输作好准备,但是我们如何知道该端口号呢,就在(60,165,133,154,13,31)中,前面四位指服务器的地址,关键是最后两位,将最后第二位乘256再加上最后一位的值就是我们的端口号,也就是13*256+31。取得端口号之后我们就可以用socket连接到这里。这为我们后面的工作作好准备了,因为我们的取得列表,上传,下载文件都要依靠它来实现。常用的返回如下:

125 data connection already open; transfer starting.

226 transfer complete.

227 entering passive mode (60,165,133,154,13,31).

230 user xxxxx logged in.

331 password required for xxxxx.

425 can’t open data connection.

226 closing data connection.

ftp客户端编程结构:

前面已提到了ftp命令及其响应信息。其实我们做ftp客户端工具只不过是用一个winsocket连接上ftp服务器,然后象其发送命令。在这个过程中,我们依靠发送——响应的机制。即发送ftp命令——接收返回的响应信息——分析该信息——执行相关操作——发送下一条命令。在一般意义上,有一个socket用来连接ftp服务器的相关端口(如默认的21),它负责ftp命令的发送和接收返回的响应信息。一些操作如“进入目录”,“删除文件”,依靠这个socket发送一条命令就可完成了。然而对于有数据传输的操作,主要是显示远端目录列表,上传、下载文件,我们不得不依靠另一个socket来完成。在进行这种操作之前,必须发送pasv命令,它返回了227开头的信息,在括号中有以逗号隔开的六个数字,前四个指服务器的地址,关键是最后两个,将倒数第二个乘256再加上最后一个数字,其结果就是ftp服务器开放的用于下一条命令来进行数据传输的端口。如我们得到227 entering passive mode (60,165,133,154,13,31),那么端口号是13*256+31=3359。我们用一个socket来连接这个端口,之后,我们可根据具体的操作(显示目录list,上传文件stor,下载retr)来发送命令。返回的响应代码为125开头,也就是连接打开了,可以开始传输数据,这时就可用socket的发送或接收方法来传输数据。完成之后,服务器会返回代码226 transfer complete,表明数据传输完成。值得注意的是,我们最好不要一次发送多条命令,例如我们要回到上层目录并且显示这个目录,我们得发送cp,pasv,list,我们不能一下子发送:cp\r\n, pasv\r\n, list\r\n。 而是发送完cp之后等待其响应代码,然后再发送后面一条。当pasv返回之后,我们打开另一个socket连接到相关端口上。然后发送list,返回125之后在开始接收数据,最后返回226表明完成。对于上传和下载也是差不多的过程(下载之前要先取得文件的大小)。

㈦ FTP连接过程中,各种信息的含义(例如“530”)

FTP连接过程中,提示530 Login authentication failed错误是因为填写错了ftp密码。
解决方法:
登陆客户中心,客户中心 > 会员中心 > 产品与服务(不同的主机提供商可能不同仅供参考)进入购买的那个套餐,下面有个登陆详情然后输入新密码就行了,这样ftp就可以用了。

FTP登录常见提示错误:
1.connected. waiting for response. 220 serv-u ftp server v4.0 for winsock ready...
user anonymous 530 sorry, no anonymous access allowed. quit
不允许匿名登录
2.connected. waiting for response. 220 serv-u ftp server v4.0 for winsock ready...
user test 331 user name okay, need password. pass xxxxxx 530 not logged in. quit 一般是密码输入错误时出现的信息。
3.connecting to xxx.xxx.xxx.xxx, port 21 error: connection timed out
这个表明对方未开机,也可能是对方不在能访问的范围内。可能小区的服务器检修中。
4.connecting to xxx.xxx.xxx.xxx port 21 error: connection refused
这个一般表明对方已开机,但未开启ftp服务(没有开serv-u),也可能为对方不提供在这个端口上的服务
5.connecting to xxx.xxx.xxx.xxx, port 21 connected. waiting for response. disconnected from server. connection attempt failed. waiting for retry...
出现极有可能是重试时间定的太短被服务器封了。
6.connecting to xxx.xxx.xxx.xxx, port 21 connected. waiting for response. user xxx
331 user name okay, need password pass xxxxxx 530 not logged in, unauthorized ip address. quit
没有登记ip,或者登记的ip和现在的不一样,重新登记即可。
7.227 entering passive mode (218,3,87,224,10,232) retr hfdx-tsoaf.sub.rar 550 sorry, insufficient credit for download - upload first.
传输已失败.传输队列已完成但流量不够了,重新购买。

㈧ FTP 错误: 读取目录列表失败

你好,ftp出现不能下载上传或者连接不上或者读取列表失败的情况,多半跟本地网络或者使用不同的ftp软件差异有关系,你可以尝试以下几种方法解决。1,更换ftp软件的连接模式,一般有被动模式和主动模式,更换一下试试。2,更换一下软件,建议用FlashFXP

这个软件试一下。3,更换本地网络ip,或者重启路由器再试。以上三种方法都解决不了你的问题,你可以去找你的供应商,看看是不是服务器的问题。

㈨ ftp的解读

、什么是FTP:文件传输协议原理

互联网文件传输协议(File Transfer Protocol ,FTP) 标准是在RFC959说明的。该协议定义了一个从远程计算机系统和本地计算机系统之间传输文件的一个标准。一般来说,传输文件的用户需要先经过认证以后才能登录网站,然后方能访问在远程服务器的文件。而大多数的FTP服务器往往提供一个GUEST的公共帐户来允许没有远程服务器的用户可以访问该FTP服务器。

一个FTP会话通常包括五个软件元素的交互。

用户接口 提供了一个用户接口并使用客户端协议解释器的服务
客户 PI 客户协议解释器,其项远程服务器协议机发送命令并且驱动客户数据传输过程
服务器PI 服务器协议解释器,响应客户协议机发出的命令并驱动服务器端数据传输过程
客户 DTP 客户数据传输过程,其负责完成和服务器数据传输过程及客户端本地文件系统的通信
服务DTP 服务器数据传输过程,其负责完成和客户数据传输过程及服务器端文件系统的通信

在RFC 959中,一般使用用户这个名词来指代客户。RFC 959定义了客户PI和服务器PI交互的方式和规范。用户接口与PI和DTP交互的机理都并不是协议标准的一部分。PI和DTP往往通常是在同一个程序模块中实现的。

在FTP会话中,一共会存在有两个独立的网络连接,一个是由两端的PI使用的,另一个是由两端的DTP使用的。PI之间的连接一般被称作控制连接(control connection),DTP之间的连接被称做数据连接(data connection)

使用TCP服务的控制和数据连接

通常情况下,FTO服务器监听端口号21来等待控制连接建立请求。而数据连接端口号的选择依赖于控制连接上命令。通常是客户发送一个控制消息来指定客户监听并等待服务器端发送数据连接建立请求的端口号。

对数据传输和控制命令传输来使用不同的独立连接有如下优点:两个连接可以选择不同的合适服务质量,如:对控制连接来说高需要更小的延迟时间,对数据连接来说需要更大的数据吞吐量;而且可以避免实现数据流中的命令的通明性及逃逸。

当传输建立时,总是由客户端首先发起。然而客户和服务器都可能是数据发送者。除了传输用户请求下载文件,数据传输过程同样在客户端请求列服务器端目录结构时建立。

1.命令选择

当一个传输建立时,一般通常需要指定四个方面的属性:

文件类型
该属性指定如何将文件的数据匹配成适于传输的格式,一共有四种可能的选择:

ASCII文件类型
在发送端,文件从本地文本文件格式转换为 NVT ASCII格式,每行结束有一个CR/LF对来标识。 在接收端,再被转换为本地的文本格式。

这说明了为什么Unix主机之间传输文本文件为何传输的数据量要大于文件的实际大小。若传输一段端或传输两端都不使用ASCII文本编码,则是应该由数据传输过程来实现本地编码和NVT ASCII 编码之间的转换。

EBCDIC文件类型
类似于ASCII,区别仅仅上使用EBCDIC字符编码

图象 (或二进制)文件类型
文件以本地传输内容传输,在远端以同本地完全相同的内容存储。

本地文件系统
用在字节大小不是8位的环境下。没字节位数由发送者指定。

在实际应用中,只有ASCII和图象格式使用的较多。

格式控制
该属性是和将文本文件最后传送到打印设备相关的,其中有多种方式来实现将垂直格式信息编码到文件中,包括指示一个新页开始的方式。有如下方式可供选择:

无须打印格式控制,这是缺省值
Telnet打印控制,在telnet协议中定义的控制字符包含在数据流中。.
Fortran打印控制,
该属性在实际中很少使用。

结构
文件可以拥有内部结构,在传输中该结构被保留。由数据传输过程来负责在传输中的结构及本地结构之间相互匹配,有三种可能性:

文件结构
这实际上意味着文件被看作没有内部结构的连续的字节流。

记录结构
文件是有一系列记录组成的结构。这只适用于文本文件。

页面结构
也可以称做块结构。每一页都伴随一个页号来传输,从而以顺序的方式来完成传输。

页面结构很少在实际中遇到。记录结构也不是很常见。对于文本文件使用ASCII文件类型可以获得相同的效果。

传输模式
该属性可以取三个不同的值:

流模式
文件的以字节流的方式传输。

块模式
文件以一个块连接一个块的方式传输,每个块的开头都有一个头。

压缩模式
一个简单的运程长度压缩编码被应用,来压缩连续的相同的字节。

实际中,一般只有流模式被使用。而压缩一般通过使用各种其他的工具程序来获得。

当一次传输被建立,客户端一般指定一个或多个前面说明的属性。若服务器端不能支持某个选项,服务器将用一个错误信息来响应客户端,并不具有协商机制。

FTP提供了充足的命令来使用户和远程建立连接并访问远程文件系统。

2.命令格式

命令以NVT ASCII串的格式被传输。每个命令以三个或四个大写的NVT ASCII字符开始,后面带有选项参数和一个CR/LF对来标识命令结束

应答由三个NVT ASCII数字及一个选项消息组成。

一个长的应答也许会有多个消息组成,第一个消息的三个数字后带有一个破折号,最后的消息不带有破折号。中间的消息无须携带三个数字,但是如果带了三个数字,则也需要破折号。

下面是所有的命令的列表。带有星号的命令一般很少使用,所以往往在具体实现中不支持。

String Meaning
ABOR 放弃传输
*ACCT 某些系统将帐号和用户与文件系统相关联
*ALLO 为即将传送的文件分配空间。后面携带的参数来确定字节数
*APPE 将文件附加到已经存在的文件后面
CDUP 在远程系统上将当前目录切换到上级父目录
CWD 改变远程系统的工作目录
DELE 删除远程系统的文件
HELP 读取服务器的帮助信息,如:支持的命令的列表
LIST 在一个新建立的数据连接上发送当前工作目录下的文件名列表
MKD 创建目录
MODE 指定传输模式,可携带的参数是:S、B或 C.
NLST 在一个新建立的数据连接上发送一个当前目录下的“完全”的目录列表
NOOP 空操作,防止连接断掉
PASS 提供一个用户登录密码,必须立即跟随在USER命令后
*PASV 指定服务器数据传输过程监听等待客户端的数据连接连接建立请求
PORT 指定客户端监听等待服务器端建立的连接的端口号
PWD 显示服务器端的当前工作目录名
QUIT 退出登录并终止连接
*REIN 重新初始化,退出登录但是并不断开连接,后面必须随后发出一个新的USER命令
*REST 从服务器的一个标识处重新开始传输
RETR 从远程系统取回一个文件
RMD 删除一个目录
*RNFR 指定要被命名的文件的老的路径名,随后必须是一个RNTO命令
*RNTO 指定要被命名的文件的新的路径名
*SITE 站点特有的服务器提供的服务
*SMNT 结构加载,提供一个文件系统结构的远程系统路径名
*STAT 状态信息
STOR 上载一个文件到服务器上,若文件已经存在则覆盖
*STOU 上载一个文件到服务器上,不覆盖已经存在的文件
STRU 指定文件结构,参数可以是F、R或P.
*SYST 报告远程系统的操作系统类型
TYPE 指定文件类型,参数可以是A、E、I、L只有TYPE A和TYPE I常用

控制连接命令应答有如下形式:

Type Description
1yz 主动初步应答,在发送另一个命令以前等待另一个应答
2yz 主动最后应答,最后一个命令成功结束
3yz 主动中间应答,必须再发送一个命令
4yz 暂时被动应答,要求的动作当时不能完成,但可以重试
5yz 永久被动应答,要求的动作不能完成,不应该重试

"y"数字编码进一步的信息

Digit Meaning
0 语法错误
1 信息
2 连接状态
3 认证和记帐
4 保留
5 File s文件系统状态

下面是一些典型的消息:

Number Meaning
125 数据连接打开,传输开始
200 命令OK
331 用户名OK 需要输入密码
425 不能打开数据连接
452 错误写文件
500 语法错误-不可识别的命

具体的详细情况可以参见RFC

㈩ FTP传输协议命令中type i 和type a的区别是什么

ftp传输中,传输模式有兆做坦Binary和Ascii两种方式。
Binary按照二进制形式传输,传输前后的文件是一样的。
Ascii是按照文本形式传输,在unix和windows下,文本的行结束字符不一样,一个是'\n',一个是'\n\r'。Ascii传输的时候胡塌,自动转换了行结束字符。
通常情族桐况下,最好按照Binary来传输。
你使用的type i和type a应该是简写,我的ftp中没有。
通常使用的指令是binary或者type binary,ascii或者type ascii。

热点内容
c语言创建的源文件 发布:2025-05-15 18:54:08 浏览:609
3个数字密码锁有多少种 发布:2025-05-15 18:49:48 浏览:682
压缩包手机打开 发布:2025-05-15 18:37:34 浏览:216
安卓取消耳机模式怎么取消 发布:2025-05-15 18:24:24 浏览:58
气球怎么解压视频 发布:2025-05-15 18:20:00 浏览:782
电脑软件密码怎么设置密码 发布:2025-05-15 18:09:07 浏览:107
android应用是否运行 发布:2025-05-15 18:02:40 浏览:10
java排序list 发布:2025-05-15 18:02:40 浏览:298
net编译可以在linux上吗 发布:2025-05-15 18:01:18 浏览:533
华为怎么知道不是安卓 发布:2025-05-15 18:00:32 浏览:909