细述FTP的主动式与被动式区别

FTP服务通常是用于服务器与客户端进行文件传输的工具。是每个站长在上传文件或从服务器下载文件时常用的一种方式。但有些时候,我们会意外的发现FTP无法连接到服务器端或连接失效。下面就通过较为详细的描述FTP服务工作原理来解释下这些情况。

下图为FTP主动模式下客户端与服务器的链接流程:

1. 客户端随机开启AA端口与服务器21端口连接并完成三次握手,该链接用于执行命令传输

2. 客户端发送本地BB端口给服务器端用于接收数据流

3. 服务器收到BB端口后通过20端口主动联系客户端进行传输数据

FTP连接流程主动模式

那么在这种情况下,如果客户端服务器或客户端所在局域网内架设了防火墙会出现怎样的情况呢?

如下图所示,由于服务器端尝试连接客户端BB端口,但被防火墙阻挡,导致无法正常连接,这时候也就无法正常进行FTP连接。

FTP连接流程主动模式有防火墙

如果出现这种情况,我们就需要将客户端传输模式变更为被动模式即可。

被动模式如下图所示:

1. 建立三次握手

2. 客户端告知服务器端为被动模式

3. 服务器发送被动模式端口号给AA端口

4. 客户端主动链接服务器被动端口进行数据流传输

* 在这被动模式下,即使客户端网络下启用了防火墙,由于数据链接是自内而外,数据流链接不会被终端。

FTP连接流程被动模式

文章已完
作者心情:这货来去如风,什么鬼都没留下!!!
如无特殊说明,文章均为本站原创,转载请注明出处
发表我的评论

Hi,请填写昵称和邮箱!

取消评论
代码 贴图 加粗 链接 删除线 签到