• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            牽著老婆滿街逛

            嚴以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            FTP傳輸Port模式和 Passive模式

            轉(zhuǎn)載自:http://hi.baidu.com/czad_008/blog/item/a923fe7eaf7be13f0dd7da57.html

            當你對一個FTP問題進行排錯時候,你首先要問的一個問題是使用的是port模式的還是passive模式。因為這兩種行為迥異,所以這兩種模式引起的問題也不同;在過去,客戶端缺省為active(port)模式;近來,由于Port模式的安全問題,許多客戶端的FTP應用缺省為Passive模式。

            數(shù)據(jù)傳輸?shù)倪B接:
                 port模式是服務器用20端口主動連接客戶端的臨時端口。
                Passive模式是客戶端用臨時分配的端口要要求服務器也分配一個臨時端口來回應它。
                模式體現(xiàn)在服務器是主動還是被動。

             

            FTP Port模式

            Port模式的FTP步驟如下:
            1、 客戶端發(fā)送一個TCP SYN(TCP同步)包給服務器段眾所周知的FTP控制端口21,客戶端使用暫時的端口作為它的源端口;
            2、 服務器端發(fā)送SYN ACK(同步確認)包給客戶端,源端口為21,目的端口為客戶端上使用的暫時端口;
            3、 客戶端發(fā)送一個ACK(確認)包;客戶端使用這個連接來發(fā)送FTP命令,服務器端使用這個連接來發(fā)送FTP應答;
            4、 當用戶請求一個列表(List)請求或者發(fā)起一個要求發(fā)送或者接受文件的請求,客戶端軟件使用PORT命令,這個命令包含了一個暫時的端口,客戶端希望服務器在打開一個數(shù)據(jù)連接時候使用這個暫時端口;PORT命令也包含了一個IP地址,這個IP地址通常是客戶自己的IP地址,而且FTP也支持第三方(third-party)模式,第三方模式是客戶端告訴服務器端打開與另臺主機的連接;
            5、 服務器端發(fā)送一個SYN包給客戶端的暫時端口,源端口為20,暫時端口為客戶端在PORT命令中發(fā)送給服務器端的暫時端口號;
            6、 客戶端以源端口為暫時端口,目的端口為20發(fā)送一個SYN ACK包;
            7、 服務器端發(fā)送一個ACK包;
            8、 發(fā)送數(shù)據(jù)的主機以這個連接來發(fā)送數(shù)據(jù),數(shù)據(jù)以TCP段(注:segment,第4層的PDU)形式發(fā)送(一些命令,如STOR表示客戶端要發(fā)送數(shù)據(jù),RETR表示服務器段發(fā)送數(shù)據(jù)),這些TCP段都需要對方進行ACK確認(注:因為TCP協(xié)議是一個面向連接的協(xié)議)
            9、 當數(shù)據(jù)傳輸完成以后,發(fā)送數(shù)據(jù)的主機以一個FIN命令來結(jié)束數(shù)據(jù)連接,這個FIN命令需要另一臺主機以ACK確認,另一臺主機也發(fā)送一個FIN命令,這個FIN命令同樣需要發(fā)送數(shù)據(jù)的主機以ACK確認;
            10、 客戶端能在控制連接上發(fā)送更多的命令,這可以打開和關(guān)閉另外的數(shù)據(jù)連接;有時候客戶端結(jié)束后,客戶端以FIN命令來關(guān)閉一個控制連接,服務器端以ACK包來確認客戶端的FIN,服務器同樣也發(fā)送它的FIN,客戶端用ACK來確認。

            FTP Port模式會給網(wǎng)絡(luò)管理人員在許多方面帶來很多問題,首先,在PORT命令消息中的IP地址和端口號的編碼不是直白地顯示。另外,應用層的協(xié)議命令理論上不應該包含網(wǎng)絡(luò)地址信息(注:IP地址),因為這打破了協(xié)議層的原則并且可能導致協(xié)同性和安全性方面的問題。
            使用FTP時候,網(wǎng)絡(luò)中的防火墻必須要聲明相應的端口,防火墻必須要跟蹤FTP對話然后檢查PORT命令,防火墻必須要參與從服務器端到客戶端在PORT命令中指定的端口連接的建立過程。
            如果網(wǎng)絡(luò)中使用了NAT(注:網(wǎng)絡(luò)地址翻譯),那么NAT的網(wǎng)關(guān)同樣也需要聲明相應的端口,網(wǎng)關(guān)需要把在PORT命令中指定的IP地址翻譯成分配給客戶的地址,然后重新計算TCP的Checksum;如果網(wǎng)關(guān)沒有正確地執(zhí)行這個操作,F(xiàn)TP就失敗了。


            FTP Passive模式

            下面的列表描述了Passive模式的FTP的步驟,步驟1到3和Port模式FTP相同,步驟9到11同樣與Port模式FTP最后三步相同。
            1、客戶端發(fā)送一個TCP SYN(TCP同步)包給服務器段眾所周知的FTP控制端口21,客戶端使用暫時的端口作為它的源端口;
            2、服務器端發(fā)送SYN ACK(同步確認)包給客戶端,源端口為21,目的端口為客戶端上使用的暫時端口;
            3、客戶端發(fā)送一個ACK(確認)包;客戶端使用這個連接來發(fā)送FTP命令,服務器端使用這個連接來發(fā)送FTP應答;
            4、當用戶請求一個列表(List)或者發(fā)送或接收文件時候,客戶端軟件發(fā)送PASV命令給服務器端表明客戶端希望進入Passive模式;
            5、服務器端進行應答,應答包括服務器的IP地址和一個暫時的端口,這個暫時的端口是客戶端在打開數(shù)據(jù)傳輸連接時應該使用的端口;
            6、客戶端發(fā)送一個SYN包,源端口為客戶端自己選擇的一個暫時端口,目的端口為服務器在PASV應答命令中指定的暫時端口號;
            7、服務器端發(fā)送SYN ACK包給客戶端,目的端口為客戶端自己選擇的暫時端口,源端口為PASV應答中指定的暫時端口號;
            8、客戶端發(fā)送一個ACK包;
            9、發(fā)送數(shù)據(jù)的主機以這個連接來發(fā)送數(shù)據(jù),數(shù)據(jù)以TCP段(注:segment,第4層的PDU)形式發(fā)送(一些命令,如STOR表示客戶端要發(fā)送數(shù)據(jù),RETR表示服務器段發(fā)送數(shù)據(jù)),這些TCP段都需要對方進行ACK確認;
            10、當數(shù)據(jù)傳輸完成以后,發(fā)送數(shù)據(jù)的主機以一個FIN命令來結(jié)束數(shù)據(jù)連接,這個FIN命令需要另一臺主機以ACK確認,另一臺主機也發(fā)送一個FIN命令,這個FIN命令同樣需要發(fā)送數(shù)據(jù)的主機以ACK確認;
            11、客戶端能在控制連接上發(fā)送更多的命令,這可以打開和關(guān)閉另外的數(shù)據(jù)連接;有時候客戶端結(jié)束后,客戶端以FIN命令來關(guān)閉一個控制連接,服務器端以ACK包來確認客戶端的FIN,服務器同樣也發(fā)送它的FIN,客戶端用ACK來確認。

            一個PASV請求要求服務器在服務器選擇的一個新的端口上接受數(shù)據(jù)連接,PASV命令沒有任何參數(shù),服務器端的回應只是一行顯示服務器IP地址和服務器接受連接的TCP端口號。


            由于PORT模式僅僅是發(fā)送端口給服務器,由服務器連回客戶端,如果客戶端有防火墻,這樣的連接會被認為是外部主機試圖連接內(nèi)部的主機, 通常情況下是不允許的。
            為了解決這個問題, 引入了PASV模式


            posted on 2011-11-20 11:57 楊粼波 閱讀(1682) 評論(0)  編輯 收藏 引用 所屬分類: 網(wǎng)絡(luò)編程

            久久久久亚洲精品天堂| 亚洲国产精品久久久久网站| 久久婷婷五月综合成人D啪| 亚洲中文字幕无码一久久区| 国产亚州精品女人久久久久久| 久久妇女高潮几次MBA| 九九久久精品无码专区| 亚洲精品无码久久毛片| 久久电影网| 无遮挡粉嫩小泬久久久久久久| 国产精品亚洲综合久久| 人妻无码精品久久亚瑟影视| 久久精品a亚洲国产v高清不卡| 国产精品日韩欧美久久综合| 久久精品国产99国产电影网| 国产精品一区二区久久| 亚洲国产成人精品91久久久| 久久婷婷国产剧情内射白浆| 老司机国内精品久久久久| 夜夜亚洲天天久久| 久久人爽人人爽人人片AV| 无码久久精品国产亚洲Av影片 | 久久久久综合网久久| 亚洲Av无码国产情品久久| 国产成人精品综合久久久| 国产精品久久毛片完整版| 中文字幕久久欲求不满| 无码人妻久久一区二区三区免费| 婷婷国产天堂久久综合五月| 亚洲精品无码久久千人斩| 青青热久久国产久精品| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久亚洲精品中文字幕| 久久er热视频在这里精品| 成人国内精品久久久久一区| 亚洲精品第一综合99久久| 久久久中文字幕| 99久久精品无码一区二区毛片| 91精品国产综合久久婷婷| 国产精品免费看久久久| 国产精品9999久久久久|