日期:2019-4-20 浏览次数:264次

FTP一共有两种传输模式,主动模式和被动模式,先说说默认的情况下,FTP Client是使用被动模式进行连接的。

  FTP被动模式工作原理:在三次握手的过程中,FTP Server监听着自己的21端口。

    (1) FTP Client使用端口号x(x>1024)向FTP Server的21端口发起连接请求,同时监听x+1端口,发送PASV命令,告知自己处于被动模式。

    (2) FTP Server发送确认包,同时发送自己的一个可用端口号y。(PORT y)

    (3) FTP Client使用x+1端口去连接FTP Server的y端口,传输数据。

  FTP主动模式工作原理:在三次握手的过程中,FTP Server监听着自己的21端口。

    (1) FTP Client使用端口号x(x>1024)向FTP Server的21端口发起连接请求,同时监听x+1端口,发送PORT命令,告知自己处于主动模式。

    (2) FTP Server发送确认包,使用本地FTP端口(通常是20)来连接x+1端口,进行数据传输。

  因此从上可以知道,这个主动与被动是相对于Server端的来说的。