FTP的連接模式分為以下兩種模式:
主動模式(PORT):當FTP客戶機以主動模式連接服務器時,客戶機以一個動態選擇的端口號向服務器的21端口發起連接,經過TCP的三次握手之后,控制連接被建立。在域用戶發出列目錄或者傳輸文件的指令后,會要求建立一個數據連接,因為只有數據連接才能傳輸數據。FTP客戶端在控制連接上發出主動模式指令告訴服務器連接自己的哪個端口號來建立一個數據連接,當服務器收到這一指令時,服務器會使用20號端口連接用戶指定的端口號,從而建立數據連接。
被動模式(PASV):當FTP客戶機以被動模式連接服務器時,情況就有所不同了。被動建立控制連接的過程和主動模式相同,但是在用戶發出列表目錄或者傳輸文件的指令之后,客戶機不向服務器發送PORT指令而是發送PASV指令,在這個指令中,客戶機與服務器協商要連接服務器的哪一個端口。如果服務器上的這個端口是空閑的,那么服務器會返回ACK確認信息,之后數據連接被建立,并返回用戶所要的信息。如果服務器的這個端口被其他連接使用,則服務器返回UNACK信息,客戶會再次發送PASV命令與服務器協商其他端口。
回答所涉及的環境:聯想天逸510S、Windows 10。
主動模式(Active FTP)和被動模式(Passive FTP)
FTP的連接模式分為以下兩種模式:
主動模式(PORT):當FTP客戶機以主動模式連接服務器時,客戶機以一個動態選擇的端口號向服務器的21端口發起連接,經過TCP的三次握手之后,控制連接被建立。在域用戶發出列目錄或者傳輸文件的指令后,會要求建立一個數據連接,因為只有數據連接才能傳輸數據。FTP客戶端在控制連接上發出主動模式指令告訴服務器連接自己的哪個端口號來建立一個數據連接,當服務器收到這一指令時,服務器會使用20號端口連接用戶指定的端口號,從而建立數據連接。
被動模式(PASV):當FTP客戶機以被動模式連接服務器時,情況就有所不同了。被動建立控制連接的過程和主動模式相同,但是在用戶發出列表目錄或者傳輸文件的指令之后,客戶機不向服務器發送PORT指令而是發送PASV指令,在這個指令中,客戶機與服務器協商要連接服務器的哪一個端口。如果服務器上的這個端口是空閑的,那么服務器會返回ACK確認信息,之后數據連接被建立,并返回用戶所要的信息。如果服務器的這個端口被其他連接使用,則服務器返回UNACK信息,客戶會再次發送PASV命令與服務器協商其他端口。
回答所涉及的環境:聯想天逸510S、Windows 10。