`
lixusign
  • 浏览: 15309 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

FTP的工作方式<转>

阅读更多
FTP基础知识 FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。 FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。 PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。 PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。 从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。而FTP的复杂性就在于此。 FTP客户端的注意事项 请注意:选择用PASV方式还是PORT方式登录FTP服务器,选择权在FTP客户端。 一、客户端只有内网IP,没有公网IP 从上面的FTP基础知识可知,如果用PORT方式,因为客户端没有公网IP,FTP将无法连接客户端建立数据链路。因此,在这种情况下,客户端必须要用PASV方式,才能连接FTP服务器。大部分人登录不上,典型的错误原因就是因为客户端没有公网IP,但用了IE作为FTP客户端来登录(IE默认使用PORT方式)。 二、客户端有公网IP,但安装了防火墙 如果用PASV方式登录FTP服务器,因为建立数据链路的时候,是由客户端向服务器发送连接请求,没有问题。反过来,如果用PORT方式登录FTP服务器,因为建立数据链路的时候,是由服务器向客户端发送连接请求,此时连接请求会被防火墙拦截。如果要用PORT方式登录FTP服务器,请在防火墙上打开1024以上的高端端口。 三、常见的FTP客户端软件PORT方式与PASV方式的切换方法。 大部分FTP客户端默认使用PASV方式。IE默认使用PORT方式。 在大部分FTP客户端的设置里,常见到的字眼都是“PASV”或“被动模式”,极少见到“PORT”或“主动模式”等字眼。因为FTP的登录方式只有两种:PORT和PASV,取消PASV方式,就意味着使用PORT方式。 IE: 工具 -> Internet选项 -> 高级 -> “使用被动FTP”(需要IE6.0以上才支持)。如果找不到这个选项,请看 图片。 CuteFTP: Edit -> Setting -> Connection -> Firewall -> “PASV Mode” 或 File -> Site Manager,在左边选中站点 -> Edit -> “Use PASV mode” FlashGet: 工具 -> 选项 -> 代理服务器 -> 直接连接 -> 编辑 -> “PASV模式” FlashFXP: 选项 -> 参数选择 -> 代理/防火墙/标识 -> “使用被动模式” 或 站点管理 -> 对应站点 -> 选项 -> “使用被动模式” 或 快速连接 -> 切换 -> “使用被动模式” LeechFTP: Option -> Firewall -> Do not Use 四、请尽量不要用IE作为FTP客户端 IE只是个很粗糙的FTP客户端工具。首先,IE6.0以下的版本不支持PASV方式;其次,IE在登录FTP的时候,看不到登录信息。在登录出错的时候,无法找到错误的原因。在测试的时候,强烈建议不要使用IE。
分享到:
评论

相关推荐

    Linux管理员指南

    件的比较 6&lt;br&gt;1.3.5 域的概念 6&lt;br&gt;1.4 小结 7&lt;br&gt;第2章 按服务器配置安装Linux 8&lt;br&gt;2.1 安装之前 8&lt;br&gt;2.1.1 硬件设备 8&lt;br&gt;2.1.2 服务器主机的规划 9&lt;br&gt;2.1.3 双引导系统 10&lt;br&gt;2.1.4 安装方式 11&lt;br&gt;2.1.5 ...

    Visual C++网络通信编程实用案例精选_3

    178&lt;br&gt;5.5.1 实现原理 178&lt;br&gt;5.5.2 实例实现 180&lt;br&gt;&lt;br&gt;第6章 网络通信协议编程实例 184&lt;br&gt;6.1 FTP协议 185&lt;br&gt;6.1.1 FTP工作原理 185&lt;br&gt;6.1.2 FTP数据表示 186&lt;br&gt;6.1.3 FTP命令 187&lt;br&gt;6.1.4 ...

    Visual C++网络通信编程实用案例精选_7

    178&lt;br&gt;5.5.1 实现原理 178&lt;br&gt;5.5.2 实例实现 180&lt;br&gt;&lt;br&gt;第6章 网络通信协议编程实例 184&lt;br&gt;6.1 FTP协议 185&lt;br&gt;6.1.1 FTP工作原理 185&lt;br&gt;6.1.2 FTP数据表示 186&lt;br&gt;6.1.3 FTP命令 187&lt;br&gt;6.1.4 ...

    Visual C++网络通信编程实用案例精选_9(全)

    178&lt;br&gt;5.5.1 实现原理 178&lt;br&gt;5.5.2 实例实现 180&lt;br&gt;&lt;br&gt;第6章 网络通信协议编程实例 184&lt;br&gt;6.1 FTP协议 185&lt;br&gt;6.1.1 FTP工作原理 185&lt;br&gt;6.1.2 FTP数据表示 186&lt;br&gt;6.1.3 FTP命令 187&lt;br&gt;6.1.4 ...

    Visual C++网络通信编程实用案例精选_6

    178&lt;br&gt;5.5.1 实现原理 178&lt;br&gt;5.5.2 实例实现 180&lt;br&gt;&lt;br&gt;第6章 网络通信协议编程实例 184&lt;br&gt;6.1 FTP协议 185&lt;br&gt;6.1.1 FTP工作原理 185&lt;br&gt;6.1.2 FTP数据表示 186&lt;br&gt;6.1.3 FTP命令 187&lt;br&gt;6.1.4 ...

    VB编程资源大全(源码 网络)

    plus.ZIP &lt;br&gt;邮件检查程序(28KB)&lt;br&gt;7,wst.ZIP &lt;br&gt;Winsock Terminal示例程序(7KB)&lt;br&gt;8,client.ZIP &lt;br&gt;点对点聊天(客户端)(8KB)&lt;br&gt;9,download.ZIP &lt;br&gt;一个下载程序(4KB)&lt;br&gt;10,FTP.ZIP &lt;br&gt;FTP程序(19KB)&lt;br&gt;...

    NetSense

    &lt;br&gt;&lt;br&gt;六、可以详细记录并限制通过FTP工具上传和下载的文件 &lt;br&gt;&lt;br&gt;文件传输方式(FTP)也是盗取内部网络机密常用的手段之一,现在上网速度越来越快,小到几兆,大到几十兆、上百兆的信息都可以在短时间内上传...

    构筑Linux防火墙之IPtables的概念与用法

    实际的操作分为以下几类:&lt;br&gt;&lt;br&gt;◆ DNAT&lt;br&gt;&lt;br&gt;◆ SNAT&lt;br&gt;&lt;br&gt;◆ MASQUERADE&lt;br&gt;&lt;br&gt;DNAT操作主要用在这样一种情况,你有一个合法的IP地址,要把对防火墙的访问 重定向到其他的机子上(比如DMZ)。也就是说,...

    Framework EDI ActiveX控件

    &lt;br&gt;&lt;br&gt; Framework EDI ActiveX控件 工具箱具有EDI的功能和命令,开发者可以写较少的代码就能快速构建功能完善的符合公司要求的EDI方案。 &lt;br&gt;&lt;br&gt; Framework EDI ActiveX控件V5.1的特色: EDI生成器:自动创建输出...

    Serv-U FTP Server v7.0.0.2

    -h:"IIS" 以类似于 Microsoft 的 IIS FTP 服务器的方式列出文件和目录。-h:"UNIX" 以类似于 BSD UNIX FTP 服务器的方式列出文件和目录。任何其他 -h"xxx" 指令都将恢复为 "UNIX" 样式的列表。该指令不区分大小写。 +...

    EditPlus_3.41.1145最新绿色破解版

     * ‘保留本地副本' FTP 选项 ('FTP 设置'-&gt;’高级选项‘)  * 在目录窗口新增 ’文件名搜索‘ 命令  * 在工程对话框新增 Ctags 种类选项  * ’运行为文本过滤器 (复制结果)‘ 用户工具选项  * 右键菜单命令...

    TCP/IP协议端口大全

    ALG FTP 插件通过以下方式来支持这些会话:将所有通过 NAT 传递的、发往端口 21 的通信重定向到环回适配器上 3000 到 5000 范围内的专用侦听端口。然后,ALG FTP 插件监视并更新 FTP 控制通道通信,使 FTP 插件可以...

    kettle操作手册和基本用法

    Chef-工作(job)设计工具(GUI方式) Kitchen-工作(job)执行器(命令行方式) Job和transformation的差别:transformation专注于数据的ETL,而Job的范围比较广,可以是Transformation,也可以是Mail、SQL、Shell...

    入门学习Linux常用必会60个命令实例详解doc/txt

    在前两种格式中,会将&lt;来源&gt;复制至&lt;目的地&gt;或将多个&lt;来源&gt;文件复制至已存在的&lt;目录&gt;,同时设定权限模式及所有者/所属组。在第三种格式中,会创建所有指定的目录及它们的主目录。长选项必须用的参数在使用短选项时也...

    cmd操作命令和linux命令大全收集

    CMD命令:开始-&gt;运行-&gt;键入cmd或command(在命令行里可以看到系统版本、文件系统版本) 命令大全 1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup-------IP地址侦测器 ,是一个 监测网络中 DNS...

    Everything-1.2.1.371

    Everything支持把文件索引通过http或ETP/FTP的方式发布。也就是说,你可以让它在局域网的文件服务器上运行,然后在任何一台机器上,通过浏览器快速搜索文件服务器。参见视频演示。 此外,Everything占用资源很少...

    FlashFXP(免注册)

    如: FlashFXP.exe &lt;site&gt; -raw="site fubar" • 比较文件夹内容功能现在不选择 "上层目录" • 基于用户崩溃报告提交的错误修正许多问题并加以改进 FlashFXP v3.8 BETA - (3.7.5 build 1303) • 修改了几处崩溃报告...

    Ubuntu环境下SSH的安装及使用详解

    SSH的简介和工作机制 SSH简介 传统的网络服务程序,如:ftp、POP和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而且,这些服务程序的安全...

Global site tag (gtag.js) - Google Analytics