日韩精品成人无码专区免费-国产99久久久久久免费看-国产精品丝袜久久久久久不卡-国产精品无码一区二区三区

ftp主動模式與被動模式是什么意思

發布時間:2025-05-12 點擊:38
建站服務器
這篇文章給大家分享的是有關ftp主動模式與被動模式是什么意思的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
ftp不同于一般的服務,該服務需要同時開啟兩個端口,一個端口是命令通道,另一個端口為數據傳輸通道。根據數據傳輸通道建立的不同,分為了主動模式和被動模式。這里,詳細的講述下主動模式的工作流程,以及碰到問題如何去解決。
主動模式流程
命令通道的建立。客戶端會隨機取出一個大于1024的端口與服務器端的21端口建立連接,當連接建立好的以后,客戶端就可以通過該連接來對ftp服務執行命令,比如查詢文件名、上傳文件、下載文件等命令都是通過該通道來執行的。
通知服務端使用主動模式。21端口只是用來進行命令的執行,對于真正需要文件的傳輸則需要另起端口來操作。客戶端會隨機再開啟一個端口用于文件傳輸,然后通過21端口告知ftp服務器兩個信息,客戶端用戶文件傳輸的端口,采用主動模式進行文件傳輸。
ftp服務器主動向客戶端建立連接。當ftp服務端知道了兩個信息后,會主動的通過20端口與客戶端建立連接。該連接建立好之后,文件就可以通過該連接進行傳輸。
主動模式可能遇到的問題
主動模式下連接不了ftp服務器,可能有以下幾種情況:
服務端端口未啟動
服務端防火墻
客戶端所在局域網有nat轉換
主動模式下,一般開啟的端口為21(命令通道)、20(文件傳輸通道)。兩個端口缺一不可。另外防火墻也需要放行這兩個端口。針對客戶端主機,可以通過telnet來測試這兩個端口是否開放。
對于端口及防火墻的問題比較容易解決,而nat轉換問題就很難解決了。我們再來看nat轉換是如何導致問題的出現的,對于命令通道的建立因為是由客戶端發起的,所以該通道可以成功建立。但是在由服務端主動向客戶端建立數據通道時,因為服務端知道的是nat的ip,并不是客戶端的ip。因此服務端會以20端口向nat的其中一個端口(例如1042端口)發送主動連接的請求。但是nat并沒有開啟那個端口,所以主動連接建立失敗。那么,如何解決這個問題呢?使用被動模式即可。
被動模式流程
命令通道的建立。這個階段和主動模式一樣。
客戶端發出pasv的鏈接請求。客戶端通過命令通道,向服務端發送pasv被動模式的請求,并等待服務端的響應。
服務端啟動數據端口,并告知客戶端。當服務端收到客戶端的pasv請求后,那么就會啟動一個端口用作數據傳輸。這個端口可以是隨機的(1024~65535)、也可以指定。然后,通過命令通道告知客戶端。
客戶端啟動數據端口,與服務端建立連接。客戶端收到了服務端的信息,知道了服務端用于數據傳輸的端口,這個時候客戶端就會隨機開啟一個大于1024的端口,然后通過這個端口與服務端建立連接。
感謝各位的閱讀!關于ftp主動模式與被動模式是什么意思就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

萬網云服務器和虛擬主機區別
云服務器怎么遷移相關優惠價格
自己搭建網站云端服務器
3月云服務器最低價是什么
把laravel開發中常用class的整合成一個包,避免每次重復復制粘貼
B2C電商平臺如何做好品類運營
php解釋器的安裝方法
鏡像與云服務器