ftp端口号20和21的不同之处在于,一个是数据端口,另一个是控制端口。 控制端口通常是21,但是数据端口不限于20。 这与ftp的应用模式有关,如果是主动模式则为20,如果是被动模式则由服务器端和客户端的协议决定。
本教程系统要求: windows7系统、戴尔G3计算机。
一个是数据端口,另一个是控制端口。 控制端口通常为21个,但数据端口不限于20个。 这与FTP的APP应用程序模式有关,如果处于活动模式,则应为20。 处于被动模式时,这取决于服务器端和客户端协商
FTP端口模式和FTP被动模式
当wxdyd错误地排列FTP问题时,首先要问的问题是使用端口模式还是被动模式。 这两种行为差别很大,所以这两种模式引起的问题也不同; 以前,客户端的默认值为活动(端口)模式。 最近,由于端口模式的安全问题,许多客户端的FTP APP应用程序缺省处于被动模式。
2.1FTP端口模式
端口模式下的FTP步骤如下:
1 .客户端向服务器段的众所周知的FTP控制端口21发送TCPsyn(TCP同步)分组,其中每个客户端使用临时端口作为其源端口;
2、服务器端向客户端发送SYN ACK (同步确认)分组,源端口为21,目的地端口为客户端使用的临时端口
3、客户端发送ACK (确认)数据包; 客户端使用此连接发送FTP命令,服务器端使用此连接发送FTP响应
4 .当用户请求列表(List )请求、发送或接收文件时,客户端软件使用PORT命令。 此命令包含临时端口,客户端希望在服务器打开数据连接时使用该临时端口。 PORT命令通常还包含作为客户自己IP地址的IP地址。 FTP还支持第三方模式,用于指示客户端打开与另一台主机的连接。
5 .服务器端是向客户端发送SYN分组的临时端口,而源端口是20,临时端口是客户端通过PORT命令向服务器端发送的临时端口号
6、客户端使用源端口作为临时端口,目的地端口发送20个SYN ACK分组;
7、服务器端发送ACK数据包
8 .发送数据的主机在该连接上发送数据,STOR (数据以TCP段(注意: segment,第4层PDU )格式发送)指示客户端发送数据,而RETR指示服务器段发送数据
9、数据传输完成后,发送数据的主机通过某个FIN命令结束数据连接。 另一台主机必须在ACK中确认此FIN命令,另一台主机也发送FIN命令。 此FIN命令也必须由发送数据的主机通过ACK进行确认。
10、客户端可以在控制连接上发送更多的命令,它可以打开和关闭另一个数据连接; 客户端退出时,客户端会通过FIN命令关闭控制连接,服务器端会通过ACK分组检查客户端的FIN,服务器也会发送该FIN,客户端有时会通过ACK进行确认。
有关计算机的详细信息,请参阅常见问题栏。