㈠ FTP的PASV和PORT連接方式有什麼不同麻煩告訴我
相比於HTTP,FTP協議要復雜得多。復雜的原因,是因為FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。
PORT&PASV
FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。
PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端在命令鏈路上用PORT命令告訴伺服器:我打開了XXXX埠,你過來連接我。於是伺服器從20埠向客戶端的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,伺服器在命令鏈路上用PASV命令告訴客戶端:我打開了XXXX埠,你過來連接我。於是客戶端向伺服器的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
從上面可以看出,兩種方式的命令鏈路連接方法是一樣的,而數據鏈路的建立方法就完全不同。而FTP的復雜性就在於此。
使用FTP客戶端的注意事項
請注意:選擇用PASV方式還是PORT方式登錄FTP伺服器,選擇權在FTP客戶端。
一、客戶端只有內網IP,沒有公網IP
從上面的FTP基礎知識可知,如果用PORT方式,因為客戶端沒有公網IP,FTP將無法連接客戶端建立數據鏈路。因此,在這種情況下,客戶端必須要用PASV方式,才能連接FTP伺服器。大部分人登錄不上,典型的錯誤原因就是因為客戶端沒有公網IP,但用了IE作為FTP客戶端來登錄(IE默認使用PORT方式)。
二、客戶端有公網IP,但安裝了防火牆
如果用PASV方式登錄FTP伺服器,因為建立數據鏈路的時候,是由客戶端向伺服器發送連接請求,沒有問題。反過來,如果用PORT方式登錄FTP伺服器,因為建立數據鏈路的時候,是由伺服器向客戶端發送連接請求,此時連接請求會被防火牆攔截。如果要用PORT方式登錄FTP伺服器,請在防火牆上打開1024以上的高端埠。
三、常見的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-PASVMode
或File-SiteManager,在左邊選中站點-Edit-UsePASVmodeFlashGet:工具-選項-代理伺服器-直接連接-編輯-PASV模式FlashFXP:選項-參數選擇-代理/防火牆/標識-使用被動模式
或站點管理-對應站點-選項-使用被動模式
或快速連接-切換-使用被動模式LeechFTP:Option-Firewall-DonotUse
四、請盡量不要用IE作為FTP客戶端
IE只是個很粗糙的FTP客戶端工具。首先,IE6.0以下的版本不支持PASV方式;其次,IE在登錄FTP的時候,看不到登錄信息。在登錄出錯的時候,無法找到錯誤的原因。
㈡ ftp中PORT和PASV兩種模式的區別
FTP有兩種工作模式:Port模式和Passive模式(PasvMode),兩種模式主要的不同是數據連接建立的不同。
Port模式是FTP的默認工作模式,在這種模式下,客戶端在本地打開一個埠等待伺服器去連接從而建立起數據連接(FTP伺服器主動建立連接);
而Passive模式是伺服器打開一個埠等待客戶端去建立一個數據連接(FTP伺服器被動建立連接)。
㈢ FTP伺服器 在公網用pasv模式訪問 提示返回的地址是內網的IP和埠
因為你在問題中未提及Serv-U 版本。
只能大概給你說一下。
Serv-U的域設置或者域詳細信息里,找到域的監聽器。
裡面有個pasv ip地址,是填被動模式使用的外網地址或者域名。
填寫後可以解決。
㈣ ftp,為什麼不能使用pasv進行數據傳輸。
PASV 被動。。是你指定伺服器端上一個區間的埠號。。然後等於是伺服器說了: 我開了5221-5222埠。你要從這里鏈接我。然後客戶端鏈接他。這樣會建立一條數據鏈來傳輸。但你如果用連接查看工具。會發現你那個5001其實是本地埠號。連接到的遠端IP是伺服器的21埠上。在伺服器上看才能看到5221-5222與哪些個IP建立了通信。客戶端上是看不出來的。PS:那個埠號是大於1024的一個隨機值。並且如果你是通過路由訪問外網的話。。有可能本地和伺服器上的埠還看到的會不一樣。
㈤ 為什麼"使用內網動態域名來搭建的ftp伺服器,要使用PASV方式訪問"!
如果要安全考慮的的話可以使用北京金萬維的天聯。
㈥ 想問一下外網連接ftp的時候一直提示pasv是為什麼,ftp用serv u搭建的,內網沒問題,外網
外網訪問是公網IP地址加埠的,你用內網地址外面肯定不知道真實地址在哪裡,所以訪問不到。
但是公網IP又是變化的,所以要加動態域名解析,這樣輸入一個域名加埠或者默認21埠的話不要輸入埠,設置了埠轉發的話,外網的就可以訪問到了。
所謂的靜態映射那個說你內網IP要固定,如果是DHCP自動分配的話,可能分配的內網IP地址和上次不一樣,所以埠映射就失敗了,外網也是訪問不到你的FTP的。
㈦ 請問ftp中什麼是PASV模式
FTP的連接一般是有兩個連接的,一個是客戶程和伺服器傳輸命令的,另一個是數據傳送的連接。FTP服務程序一般會支持兩種不同的模式,一種是Port模式,一種是Passive模式(Pasv Mode),我先說說這兩種不同模式連接方式的分別。
先假設客戶端為C,服務端為S.
Port模式:
當客戶端C向服務端S連接後,使用的是Port模式,那麼客戶端C會發送一條命令告訴服務端S(客戶端C在本地打開了一個埠N在等著你進行數據連接),當服務端S收到這個Port命令後 就會向客戶端打開的那個埠N進行連接,這種數據連接就生成了。
Pasv模式:
當客戶端C向服務端S連接後,服務端S會發信息給客戶端C,這個信息是(服務端S在本地打開了一個埠M,你現在去連接我吧),當客戶端C收到這個信息後,就可以向服務端S的M埠進行連接,連接成功後,數據連接也建立了。
從上面的解釋中,大家可以看到兩種模式主要的不同是數據連接建立的不同,對於Port模式,是客戶端C在本地打開一個埠等服務端S去連接建立數據連接;而Pasv模式就是服務端S打開一個埠等待客戶端C去建立一個數據連接。
(缺圖)
從上圖中我們可以看出,路由上有兩個ip一個是內網ip(也就是你的網關地址)另外一個是外網IP,你所有LAN中的計算機
都是共享這個218.63.1.5訪問INTERNET的(中間通過了192.168.1.1這個網關),讓我們來看一個連接的詳細過程,以便您
更進一步了解為什麼需要設置成為PASV mode 傳送:
當您通過下載工具或使用瀏覽器下載影片的時候就開始連接FTP伺服器, 當FTP服務收到你的連接請求後發送應答信息給客戶並
開始等待用戶的認證信息,-->認證通過後開始建立數據連接 如果你不是設置成為pasv模式,那麼客戶段(下載工具)會在本地
計算機開一個數據埠,然後發送一條「命令」給FTP服務段,(我已打開了n埠你現在可以連接我),那麼FTP伺服器段就
開始連接你ip地址的N埠,(但是連接是失敗的) 因為你是通過192.168.1.1 這個網關(你的路由設備)訪問internet的
ftp服務段他實際上是同你的外網地址為218.63.1.5的路由設備連接,根本就連接不上你下載工具中打開的埠,例如你使用
的是 192.168.1.2 這個客戶機,FTP服務段此時無法同你計算機(192.168.1.2)監聽埠N連接上,所以此時你會看到伺服器
反饋的錯誤信息,提示你192.168.1.2打開的埠無法連接之類的, 信息此時你就需要把傳送模式設置成為PASV模式,
而如果你使用的是PASV模式那麼當你ftp通過認證後,客戶段首先向伺服器發送一條PASV命令,服務段接受到命令後打開一個
埠並告訴客戶段「我已打開了一個埠,你此時可以來連接了" 客戶段(下載工具)接受到信息後,就去連接服務段已經打開
了的埠,從而完成數據連接,所有ftp下載的數據流都將通過這個埠傳送
㈧ FTP伺服器在公網用pasv模式訪問提示「返回的地址是內網的IP和埠」是怎麼回事
FTP伺服器(File Transfer Protocol Server)是在互聯網上提供文件存儲和訪問服務的計算機,它們依照FTP協議提供服務。 FTP是File Transfer Protocol(文件傳輸協議)。顧名思義,就是專門用來傳輸文件的協議。簡單地說,支持FTP協議的伺服器就是FTP伺服器。
Serv-U的域設置或者域詳細信息里,找到域的監聽器。
裡面有個pasv ip地址,是填被動模式使用的外網地址或者域名。