关于ftp的主动模式和被动模式

今天遇到了同事询问ftp的模式是主动还是被动模式?做个笔记以便以后方便查看。

默认情况下ftp开启的是主动模式(active)。ftp服务器使用了两个连接,分别是命令通道和数据流通道(ftp-data).因为是tcp数据包,这两个连接需要经过三次的握手。

active mode:

1:首先是建立命令通道的连接

client端随机取1024以上端口与ftp的服务端的port21实现连接,经过3次握手之后,建立连接之后,客户端就可以对ftp服务器执行命令,包括查看,上传和下载等。

2:通知ftp服务器使用的Active且告知连接的端口号。

FTP的port21主要用于在命令的执行,涉及到数据流时就不用这个连接。当客户端需要数据流的时候就会告知服务器端要用 什么方式来连接。如果是主动的话(active),客户端会先随机启用的一个端口(port cc)并且通过命令通道 告知ftp服务器这个2个信息(模式和端口)。

3:FTP服务器主动向客户端连接

FTP服务器通过命令通道了解到客户端的需求。会主动有20端口向客户端的portcc进行连接。

数据通道只有当有数据传输的时候才会建立连接。

你可能感兴趣的:(FTP服务器,服务端,Active,数据流,数据包)