PORT 主動模式:
- 用戶主機一個隨機端口連接FTP SERVER的TCP21端口進行協商;
- 用戶主機告訴FTP SERVER,我的XXXX端口已經打開,你可以放心大膽的連過來;
- 然后FTP SERVER就用TCP20端口連接用戶主機的XXXX端口,數據傳輸開始
FTP-Client-host 開啟一個隨機端口 --------------》 FTP Server 的TCP-21 進行協商
FTP-Client host 把協商好的端口打開 《------- FTP Server 連進來
FTP Server 用TCP-20 和客戶端的隨機端口進行數據傳輸
要求:
FTP-Server 的防火牆要開放 TCP 20,21 端口
FTP-Client 端最好把防火牆關閉,因為用的是隨機端口
一句話,主動模式就是 client 端開放一個隨機端口,Server端主動去連接。
------------------------------------
PASV 被動模式:
FTP Client 隨機端口 ----------------》 FTP Server 的 TCP 21端口進行協商
FTP Server 告訴FTP Client 我的XXX端口已打開,你可以連過來。
FTP Client 用一個隨機端口去連 FTP Server的 XXX端口,開始數據傳輸。
被動模式要求,FTP Server 的防火牆開放 21 和 一個范圍內的端口,在被動模式里設置的。
FTP Client 則要有隨機端口可用即可。
一句話, 被動模式就是 Server 端開放一個隨機端口 等待 客戶端來連接