什么是被动模式和主动模式
FTP的数据传输模式针对FTP数据连接而言,分为主动传输模式、被动传输模式和单端口传
输模式三种。
1.主动传输模式
当FTP的控制连接建立,客户提出目录列表、传输文件时,客户端发出PORT命令与服务器
进行协商,FTP服务器使用一个标准端口20作为服务器端的数据连接端口(ftp-data),
与客户建立数据连接。端口20只用于连接源地址是服务器端的情况,并且端口20没有监听
进程来监听客户请求。
在主动传输模式下,FTP的数据连接和控制连接方向相反,由服务器向客户端发起一个用
于数据传输的连接。客户端的连接端口由服务器端和客户端通过协商确定。
2.被动传输模式
当FTP的控制连接建立,客户提出目录列表、传输文件时,客户端发送PASV命令使服务器
处于被动传输模式,FTP服务器等待客户与其联系。FTP服务器在非20端口的其它数据传输
端口上监听客户请求。
在被动传输模式下,FTP的数据连接和控制连接方向一致,由客户端向服务器发起一个用
于数据传输的连接。客户端的连接端口是发起该数据连接请求时使用的端口。当FTP客户
在防火墙之外访问FTP服务器时,需要使用被动传输模式。
3.单端口模式
除上述两种模式之外,还有一种单端口模式。该模式的数据连接请求由FTP服务器发起。
使用该传输模式时,客户端的控制连接端口和数据连接端口一致。因为这种模式无法在短
时间连续输入数据、传输命令,因此并不常用。