當前位置:首頁 » 文件管理 » 有防火牆時ftp協議用什麼模式

有防火牆時ftp協議用什麼模式

發布時間: 2022-07-08 19:32:39

ftp協議是什麼

FTP協議其實是文件傳輸協議,是TCP協議組中的協議之一,值得一提的是FTP協議包含兩個部分,一個是FTP伺服器,另一個是FTP客戶端,我們在日常生活中使用的時候一定要學會區分才行,希望每個人都能夠認識到這一點,同時我們需要注意的是在日常生活中,電子信息行業發展是非常的迅速的,我們在日常生活中一定要學會使用電腦才行,只有這樣才可以讓我們的生活更加的美好。

個人建議:

同時我們需要注意的是,在學習電腦的過程中,一定要學會不恥下問,只有這樣才可以讓我們的能力有一個更加快速的提升,希望每個人都能夠認識到這一點,對於一些專業名詞來說,我們可以查閱相關的資料就可以解決了。

(1)有防火牆時ftp協議用什麼模式擴展閱讀:

FXP傳送出錯時,本地的用戶進程還留在FTP伺服器中,並沒有退出,如此時再次連接FTP伺服器,可能會因用戶線程超過允許,FTP伺服器提示客戶已登陸並拒絕客戶端的連接,直至伺服器中的傀儡進程因超時或其他原因被FTP伺服器殺死後,才能再次連接FTP伺服器。

要連上 FTP 伺服器(即「登陸」),必須要有該 FTP 伺服器授權的帳號,也就是說你只有在有了一個用戶標識和一個口令後才能登陸FTP伺服器,享受FTP伺服器提供的服務。

FTP協議的任務是從一台計算機將文件傳送到另一台計算機,它與這兩台計算機所處的位置、聯接的方式、甚至是是否使用相同的操作系統無關。假設兩台計算機通過ftp協議對話,並且能訪問Internet,

你可以用ftp命令來傳輸文件。每種操作系統使用上有某一些細微差別,但是每種協議基本的命令結構是相同的。

FTP的傳輸有兩種方式:ASCII傳輸模式和二進制數據傳輸模式。

② 通過FTP軟體的PASV模式,建立與伺服器的被動防火牆連接。。。。怎麼看不懂啊 教教我

FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。
PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。

當需要傳送數據時,客戶端在命令鏈路上用 PORT命令告訴伺服器:「我打開了****埠,你過來連接我」。於是伺服器從20埠向客戶端的****埠發送連接請求,建立一條數據鏈路來傳送數據。

PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。

當需要傳送數據時,伺服器在命令鏈路上用 PASV命令告訴客戶端:「我打開了****埠,你過來連接我」。於是客戶端向伺服器的****埠發送連接請求,建立一條數據鏈路來傳送數據。
從上面可以看出,兩種方式的命令鏈路連接方法是一樣的,而數據鏈路的建立方法就完全不同。而FTP的復雜性就在於此。

FTP伺服器端的注意事項

一、FTP伺服器是公網IP,用公網動態域名;或是內網IP,用內網專業版TrueHost

1、伺服器如果安裝了防火牆,請記住要在防火牆上打開FTP埠(默認是21)。

2、所有FTP伺服器軟體都支持PORT方式。至於PASV方式,大部分FTP伺服器軟體都支持。支持PASV方式的FTP伺服器軟體,也可以設置為只工作在PORT方式上。

3、為了PASV方式能正常工作,需要在FTP伺服器軟體上為PASV方式指定可用的埠范圍(設置方法)。此外,還要在伺服器的防火牆上打開這些埠。當客戶端以PASV方式連接伺服器的時候,伺服器就會在這個埠范圍里挑選一個埠出來,給客戶端連接。

二、FTP伺服器是內網IP,用內網動態域名標准版cm*natpro*y

這種情況下,FTP伺服器不需要做特殊設置,只要支持PASV方式就可以了。大部分FTP伺服器軟體都支持PASV方式。

FTP客戶端的注意事項

請注意:選擇用PASV方式還是PORT方式登錄FTP伺服器,選擇權在FTP客戶端,而不是在FTP伺服器。

一、客戶端只有內網IP,沒有公網IP

從上面的FTP基礎知識可知,如果用PORT方式,因為客戶端沒有公網IP,FTP將無法連接客戶端建立數據鏈路。因此,在這種情況下,客戶端必須要用PASV方式,才能連接FTP伺服器。大部分FTP站長發現自己的伺服器有人能登錄上,有人登錄不上,典型的錯誤原因就是因為客戶端沒有公網IP,但用了IE作為FTP客戶端來登錄(IE默認使用PORT方式)。

作為FTP站長,有必要掌握FTP的基礎知識,然後指導您的朋友如何正確登錄您的FTP。

二、客戶端有公網IP,但安裝了防火牆

如果用PASV方式登錄FTP伺服器,因為建立數據鏈路的時候,是由客戶端向伺服器發送連接請求,沒有問題。反過來,如果用PORT方式登錄FTP伺服器,因為建立數據鏈路的時候,是由伺服器向客戶端發送連接請求,此時連接請求會被防火牆攔截。如果要用PORT方式登錄FTP伺服器,請在防火牆上打開 1024以上的高端埠。

三、連接用內網標准版cm*natpro*y搭建的FTP服務,必須要用PASV方式。連接任何公網FTP伺服器、或用內網專業版TrueHost搭建的FTP伺服器,PORT方式和PASV方式都可以使用。

當然,使用PORT方式的時候,還要滿足上面的兩個條件。

四、常見的FTP客戶端軟體PORT方式與PASV方式的切換方法。

大部分FTP客戶端默認使用PASV方式。IE默認使用PORT方式。

在大部分FTP客戶端的設置里,常見到的字眼都是「PASV」或「被動模式」,極少見到「PORT」或「主動模式」等字眼。因為FTP的登錄方式只有兩種:PORT和PASV,取消PASV方式,就意味著使用PORT方式。

IE:

工具 -> Internet選項 -> 高級 -> 「使用被動FTP」(需要IE6.0以上才支持)。

CuteFTP:

Edit -> Setting -> Connection -> Firewall -> 「PASV Mode」

File -> Site Manager,在左邊選中站點 -> Edit -> 「Use PASV mode」
FlashGet:
工具 -> 選項 -> 代理伺服器 -> 直接連接 -> 編輯 -> 「PASV模式」

FlashFTP:

選項 -> 參數選擇 -> 代理/防火牆/標識 -> 「使用被動模式」

站點管理 -> 對應站點 -> 選項 -> 「使用被動模式」

快速連接 -> 切換 -> 「使用被動模式」

LeechFTP:

Option -> Firewall -> Do not Use

五、請盡量不要用IE作為FTP客戶端

IE只是個很粗糙的FTP客戶端工具。首先,IE6.0以下的版本不支持PASV方式;其次,IE在登錄FTP的時候,看不到登錄信息。在登錄出錯的時候,無法找到錯誤的原因。在測試自己的FTP網站的時候,強烈建議不要使用IE。

FTP建站的詳細配置過程

請參考這個網頁的說明來配置:

使用Serv-U建立FTP網站

高級話題

一、為什麼沒有公網IP,也能使用PORT方式登錄FTP?

NAT 網關的工作方式是在TCP/IP數據包的包頭里找區域網的源地址和源埠,替換成網關的地址和埠。對數據包里的內容,是不會改變的。而使用PORT方式登錄FTP的時候,IP地址與埠信息是在數據包裡面的,而不是在包頭。因此,沒有公網IP,使用PORT方式是無法從internet上的ftp伺服器下載數據的。

但是,極少數的NAT網關也支持PORT方式。這些NAT網關連數據包裡面的內容都掃描,掃描到 PORT指令後會替換PORT方式的IP和埠。在這種NAT網關下面,用PORT方式就沒問題了。不過,這些網關也只掃描21埠的數據包,如果FTP 伺服器不是用默認的21埠,也無法使用PORT方式。

二、內網可以用PORT訪問其他FTP,為什麼不能用PORT訪問自己的TrueHost FTP?

下面要討論的問題,只是為了說明一些原理,是不影響實際使用的。如果您沒有興趣深究這些原理,不必花時間看。

內網用戶通過支持PORT方式的NAT網關,訪問自己本機利用TrueHost建立的FTP伺服器,FTP命令鏈路的建立過程如下:

FTP客戶端

10.10.0.1
埠*** <==> ISP NAT網關
61.144.1.2
埠**** <==> TH伺服器
*.*.*.*
埠21 <==> TH客戶端 <==> 用戶FTP伺服器
10.10.0.1
埠21

FTP客戶端通過ISP的NAT網關、科邁TrueHost伺服器、TrueHost客戶端,連接用戶本機的FTP伺服器的21埠。

當需要下載數據的時候,FTP客戶端通過這條命令鏈路,向FTP伺服器發送PORT命令。假設命令為:

PORT 10,10,0,1,30,4 (即IP=10.10.0.1 埠=30*256+4=7684)
當命令通過ISP的NAT網關的時候,NAT網關判斷目的埠是21,並且是PORT命令,於是,修改命令里的IP和埠,替換為自己的IP和埠,比如:
PORT 61,144,1,2,50,6 (即IP=61.144.1.2 埠=50*256+6=12806)
用戶的FTP伺服器最終收到的是上面這個PORT命令。於是,FTP伺服器向這個IP和埠發送連接請求,建立數據鏈路。

用戶FTP伺服器

10.10.0.1
埠20 <==> ISP NAT網關
61.144.1.2
埠12806 <==> FTP客戶端
10.10.0.1
埠7684

但是,因為NAT網關的公網IP只能接收外來的連接請求。就是說,61.144.1.2:12806隻能接收其他公網IP的連接請求,對於從NAT內部(10.10.0.1:20)發起的連接請求,是無法建立連接的。為什麼?原因很簡單,因為內網IP要訪問外網,必須要通過NAT建立映射。於是FTP數據鏈路無法建立。於是,用戶無法在自己的機器上通過21埠訪問自己的TrueHost FTP。

我們再來看看,如果FTP埠不是21,比如是22,會發生什麼情況呢?在FTP客戶端發送PORT命令的時候,NAT網關檢測到目標埠是22,因為支持PORT的 NAT網關只監視目的埠是21的數據包,發現目的埠是22的數據包,不做任何處理,完全放行。於是FTP伺服器收到的PORT命令依然是PORT 10,10,0,1,30,4。於是FTP伺服器向這個IP和埠發送連接請求。

用戶FTP伺服器

10.10.0.1
埠20 <==> FTP客戶端
10.10.0.1
埠7684

這種情況下命令鏈路就可以建立起來了。而且是等於本機連接本機,速度飛快。
綜上所述,內網用戶無法用PORT方式通過21埠訪問自己的TrueHost FTP伺服器。如果FTP埠不是21,則可以訪問,而且實際上是本機連接本機。

③ 什麼是ftp主動模式和被動模式

FTP是僅基於TCP的服務,不支持UDP。 與眾不同的是FTP使用2個埠,一個數據埠和一個命令埠(也可叫做控制埠)。通常來說這兩個埠是21(命令埠)和20(數據埠)。但FTP 工作方式的不同,數據埠並不總是20。這就是FTP主動與被動模式的最大不同之處。
(一)主動FTP
主動方式的FTP是這樣的:客戶端從一個任意的非特權埠N(N>1024)連接到FTP伺服器的命令埠(21埠)。然後客戶端開始監聽埠N+1,並發送FTP命令「port N+1」到FTP伺服器。接著伺服器會從它自己的數據埠(20)連接到客戶端指定的數據埠(N+1)。
針對FTP伺服器前面的防火牆來說,必須允許以下通訊才能支持主動方式FTP:
1. 任何大於1024的埠到FTP伺服器的21埠。(客戶端初始化的連接)
2. FTP伺服器的21埠到大於1024的埠。 (伺服器響應客戶端的控制埠)
3. FTP伺服器的20埠到大於1024的埠。(伺服器端初始化數據連接到客戶端的數據埠)
4. 大於1024埠到FTP伺服器的20埠(客戶端發送ACK響應到伺服器的數據埠)
(二)被動FTP
為了解決伺服器發起到客戶的連接的問題,人們開發了一種不同的FTP連接方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知伺服器它處於被動模式時才啟用。
在被動方式FTP中,命令連接和數據連接都由客戶端發起,這樣就可以解決從伺服器到客戶端的數據埠的入方向連接被防火牆過濾掉的問題。
當開啟一個 FTP連接時,客戶端打開兩個任意的非特權本地埠(N > 1024和N+1)。第一個埠連接伺服器的21埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據埠,而是提交 PASV命令。這樣做的結果是伺服器會開啟一個任意的非特權埠(P > 1024),並發送PORT P命令給客戶端。然後客戶端發起從本地埠N+1到伺服器的埠P的連接用來傳送數據。
對於伺服器端的防火牆來說,必須允許下面的通訊才能支持被動方式的FTP:
1. 從任何大於1024的埠到伺服器的21埠 (客戶端初始化的連接)
2. 伺服器的21埠到任何大於1024的埠 (伺服器響應到客戶端的控制埠的連接)
3. 從任何大於1024埠到伺服器的大於1024埠 (客戶端初始化數據連接到伺服器指定的任意埠)
4. 伺服器的大於1024埠到遠程的大於1024的埠(伺服器發送ACK響應和數據到客戶端的數據埠)
(三) 主動與被動FTP優缺點
主動FTP對FTP伺服器的管理有利,但對客戶端的管理不利。因為FTP伺服器企圖與客戶端的高位隨機埠建立連接,而這個埠很有可能被客戶端的防火牆阻塞掉。被動FTP對FTP客戶端的管理有利,但對伺服器端的管理不利。因為客戶端要與伺服器端建立兩個連接,其中一個連到一個高位隨機埠,而這個埠很有可能被伺服器端的防火牆阻塞掉。
幸運的是,有折衷的辦法。既然FTP伺服器的管理員需要他們的伺服器有最多的客戶連接,那麼必須得支持被動FTP。我們可以通過為FTP伺服器指定一個有 限的埠范圍來減小伺服器高位埠的暴露。這樣,不在這個范圍的任何埠會被伺服器的防火牆阻塞。雖然這沒有消除所有針對伺服器的危險,但它大大減少了危 險。
簡而言之:
主動模式(PORT)和被動模式(PASV)。主動模式是從伺服器端向客戶端發起連接;被動模式是客戶端向伺服器端發起連接。兩者的共同點是都使用 21埠進行用戶驗證及管理,差別在於傳送數據的方式不同,PORT模式的FTP伺服器數據埠固定在20,而PASV模式則在1025-65535之間隨機
FTP主動模式與被動模式的解決與原理
FTP是File Transfer Protocol(文件傳輸協議)的縮寫,用來在兩台計算機之間互相傳送文件。相比於HTTP,FTP協議要復雜得多。復雜的原因,是因為FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。
FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。
PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端在命令鏈路上用PORT命令告訴伺服器:「我打開了XXXX埠,你過來連接我」。於是伺服器從20埠向客戶端的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,伺服器在命令鏈路上用PASV命令告訴客戶端:「我打開了XXXX埠,你過來連接我」。於是客戶端向伺服器的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
概括:
--------------------------------------------------------------------------------
主動模式:伺服器向客戶端敲門,然後客戶端開門
被動模式:客戶端向伺服器敲門,然後伺服器開門
所以,如果你是如果通過代理上網的話,就不能用主動模式,因為伺服器敲的是上網代理伺服器的門,而不是敲客戶端的門
而且有時候,客戶端也不是輕易就開門的,因為有防火牆阻擋,除非客戶端開放大於1024的高端埠

④ ftp的三種埠模式都是哪些如何工作的

FTP是File Transfer Protocol(文件傳輸協議)的縮寫,用來在兩台計算機之間互相傳送文件。相比於HTTP,FTP協議要復雜得多。復雜的原因,是因為FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。

FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。

1. PORT(主動)方式的連接過程是:
客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端在命令鏈路上用PORT命令告訴伺服器:「我打開了XXXX埠,你過來連接我」。於是伺服器從20埠向客戶端的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。

2. PASV(被動)方式的連接過程是:
客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,伺服器在命令鏈路上用PASV命令告訴客戶端:「我打開了XXXX埠,你過來連接我」。於是客戶端向伺服器的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。

概括:
--------------------------------------------------------------------------------
主動模式:伺服器向客戶端敲門,然後客戶端開門
被動模式:客戶端向伺服器敲門,然後伺服器開門
所以,如果你是如果通過代理上網的話,就不能用主動模式,因為伺服器敲的是上網代理伺服器的門,而不是敲客戶端的門
而且有時候,客戶端也不是輕易就開門的,因為有防火牆阻擋,除非客戶端開放大於1024的高端埠

--------------------------------------------------------------------------------
3.單埠模式
除上述兩種模式之外,還有一種單埠模式。該模式的數據連接請求由FTP伺服器發起。使用該傳輸模式時,客戶端的控制連接埠和數據連接埠一致。因為這種模式無法在短時間連續輸入數據、傳輸命令,因此並不常用。

⑤ 為什麼ftp協議要採用主動和被動兩種模式,有什麼好處

FTP是一種文件傳輸協議,它支持兩種模式, 一種方式叫做Standard(也就是Active, 主動方式),一種是Passive(也就是PASV, 被動方式)。Standard模式FTP的客戶端發送 PORT命令到FTPserver。 Passive模式FTP的客戶端發送PASV命令到 FTPServer。 下面介紹一個這兩種方式的工作原理: Standard模式FTP客戶端首先和FTP Server的TCP21埠建立連接, 通過這個通道發送命令, 客戶端需要接收數據的時候在這個通道上發送PORT命令。 PORT命令包含了客戶端用什麼埠接收數據。 在傳送數據的時候,伺服器端通過自己的TCP 20埠發送數據。FTP server必須和客戶端建立一個新的連接用來傳送數據。 Passive模式在建立控制通道的時候和Standard模式 類似,當客戶端通過這個通道發送PASV命令的時候,FTP server打開一個位於1024和5000之間的隨機埠並且 通知客戶端在這個埠上傳送數據的請求,然後FTP server將通過這個埠進行數據的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接。 現在的FTP軟體裡麵包括在IE5以上的版本裡面也已經支持這兩 種模式了。一般一些FTP客戶端的軟體就比較好設置了, 一般都有一個PASV的選項,比如CuteFTP, 傳輸的方式都有Standard和PASV的選項, 可以自己進行選擇; 另外在IE裡面如果要設置成PASV模式的話可以選中工具- Internet選項-高級-為FTP站點啟用文件夾視圖, 否則就採用Standard模式。 很多防火牆在設置的時候都是不允許接受外部發起的連接的, 所以FTP的Standard模式在許多時候在內部網路的機器通 過防火牆出去的時候受到了限制,因為從伺服器的TCP 20無法和內部網路的客戶端建立一個新的連接,造成無法工作。 當然也可以設置成功, 首先要創建一條規則就是允許內部的IP連接外部的IP的21埠 ;第二條就是禁止外部IP的TCP20埠連接內部IP的< 1024的埠,這條是為了防止外部連接內部的常規埠; 第三條驗證ACK是否等於1, 這個的原理就參見TCP建立連接的三次握手吧。 所以如果安全的配置的話非常困難, 這個時候就想起來了PASV模式,因為不用建立新的連接, 所以也就不會涉及到後面的問題了。 但是管理員可能不想使用PASV模式,因為這個時候FTP Server會開放一個隨機的高埠, 盡管在IIS4和IIS5裡面埠的范圍是1024-5000, 但是許多FTPServer的埠范圍達到了1024- 65535, 這個時候在這個主動開放的隨機埠上是有完全的訪問許可權的, 如果IIS也要設置成開放的埠為1024-65535, 具體方法如下: 1.regedt32 2.找到HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters 3.編輯-添加-數值 ValueName:MaxUserPortData Type:REG_DWORDValue:65534< forexample> 所以如果遇到了有防火牆的話或者怕配置麻煩的話還是採用PASV 模式比較好些, 但是如果真的對安全的需求很高的話建議採用Standard模式 。

⑥ FTP協議的工作方式

FTP支持兩種模式,一種方式叫做Standard (也就是 PORT方式,主動方式),一種是 Passive(也就是PASV,被動方式)。 Standard模式 FTP的客戶端發送 PORT 命令到FTP伺服器。Passive模式FTP的客戶端發送 PASV命令到 FTP Server。
下面介紹一個這兩種方式的工作原理: 在建立控制通道的時候和Standard模式類似,但建立連接後發送的不是Port命令,而是Pasv命令。FTP伺服器收到Pasv命令後,隨機打開一個高端埠(埠號大於1024)並且通知客戶端在這個埠上傳送數據的請求,客戶端連接FTP伺服器此埠,然後FTP伺服器將通過這個埠進行數據的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接。
很多防火牆在設置的時候都是不允許接受外部發起的連接的,所以許多位於防火牆後或內網的FTP伺服器不支持PASV模式,因為客戶端無法穿過防火牆打開FTP伺服器的高端埠;而許多內網的客戶端不能用PORT模式登陸FTP伺服器,因為從伺服器的TCP 20無法和內部網路的客戶端建立一個新的連接,造成無法工作。

⑦ 我們都知道FTP協議有兩種工作模式,說說它們的大概的一個工作流程

模式:主動模式(Active FTP)和被動模式(Passive FTP)
在主動模式下,FTP客戶端隨機開啟一個大於1024的埠N向伺服器的21號埠發起連接,然後開放N+1號埠進行監聽,並向伺服器發出PORT N+1命令。
伺服器接收到命令後,會用其本地的FTP數據埠(通常是20)來連接客戶端指定的埠N+1,進行數據傳輸。
在被動模式下,FTP客戶端隨機開啟一個大於1024的埠N向伺服器的21號埠發起連接,同時會開啟N+1號埠。然後向伺服器發送PASV命令,通 知伺服器自己處於被動模式。伺服器收到命令後,會開放一個大於1024的埠P進行監聽,然後用PORT P命令通知客戶端,自己的數據埠是P。客戶端收到命令後,會通過N+1號埠連接伺服器的埠P,然後在兩個埠之間進行數據傳輸。
總的來說,主動模式的FTP是指伺服器主動連接客戶端的數據埠,被動模式的FTP是指伺服器被動地等待客戶端連接自己的數據埠。
被動模式的FTP通常用在處於防火牆之後的FTP客戶訪問外界FTp伺服器的情況,因為在這種情況下,防火牆通常配置為不允許外界訪問防火牆之後主機,而只允許由防

⑧ FTP協議有兩種工作方式是什麼

Ftp協議的兩種工作模式:主動模式active和被動模式passive



FTP 是一種數據傳輸協議 (File Transfer Protocol),它的連接模式有兩種: 主動模式( active )和被動模式( passive )。



以下說明FTP的連接是怎樣建立的:



在 active 模式下 (一般預設的模式):



FTP client 開啟一個隨機選擇的TCP port 呼叫 FTP server 的 port 21請求建立連接。當完成 Three-Way Handshake 之後,連接就成功建立,但這僅是命令通道的建立。

當兩端需要傳送數據資料的時候,client 透過命令通道用一個 port command 告訴 server ,client可以用另一個TCP port 做數據通道。

然後 server 用 port 20 和剛才client 所告知的 TCP port 建立數據連接。注意:連接方向是從server 到 client 的,TCP 分組中會有一個 SYN flag。

然後 client 會返回一個帶 ACK flag的確認分組,並完成另一次的 Three-Way Handshake 過程。這時候,數據連接才能成功建立。開始數據傳送。



在 passive 模式下:



FTP client 開啟一個隨機選擇的TCP port 呼叫 FTP server 的 port 21請求建立連接,完成命令通道的建立。

當兩端需要傳送數據的時候,client 通過命令通道發送一個 PASV command 給server,要求進入 passive 傳輸模式。

然後 server 像上述的正常模式之第 2 步驟那樣,挑一個TCP port ,並用命令通道告訴 client。

然後 client 用另一個TCP port 呼叫剛才 server 告知的 TCP port 來建立數據通道。此時分組中帶有 SYN flag。

server 確認後回送一個 ACK 分組。並完成所有握手過程、成功建立數據通道。

開始數據傳送。 在實際使用中, active mode 用來登入一些架設在主機上沒有安裝防火牆的 FTP server,或是架設在 client side 的 FTP server! Passive mode (簡稱 PASV)用來登陸一些架設於防火牆保護下而又是開設於主機上的 FTP server!

⑨ FTP協議當中的主動模式和被動模式怎麼理解

主動就是你鏈接伺服器。被動就是伺服器鏈接你

熱點內容
易拉罐壓縮機 發布:2025-01-17 21:25:35 瀏覽:923
在c語言是什麼意思啊 發布:2025-01-17 21:21:02 瀏覽:515
re0腳本 發布:2025-01-17 21:13:34 瀏覽:304
甜蜜家園密碼箱有什麼用 發布:2025-01-17 21:07:28 瀏覽:47
有教少兒編程 發布:2025-01-17 20:55:37 瀏覽:36
直播背腳本 發布:2025-01-17 20:50:18 瀏覽:409
ftp移動文件的mv命令 發布:2025-01-17 20:45:53 瀏覽:404
電腦上啥是伺服器 發布:2025-01-17 20:40:48 瀏覽:352
安卓手機怎麼連大眾車載 發布:2025-01-17 20:20:53 瀏覽:241
杭州做分布式存儲項目 發布:2025-01-17 20:06:10 瀏覽:872