當(dāng)前位置:首頁>>軟件教程>>新聞內(nèi)容  
如何用端口映射建立內(nèi)網(wǎng)FTP
作者:Andy.Pro 發(fā)布時(shí)間:2003-11-18 13:37:31 | 【字體:

如何用端口映射建立內(nèi)網(wǎng)FTP

一、端口映射的問題
  端口映射是指將一個(gè)IP上的某個(gè)端口映射到另外一個(gè)IP的某個(gè)端口上去。如下例:

  Host3欲登陸到FTP Server,但是由于FTP Server在Lan中,沒有公網(wǎng)上的IP地址,因此Host3無法定位到FTP Server,此時(shí),可在Lan中的網(wǎng)關(guān)(或路由器)即Host1上做端口映射,將Host1的21端口映射到FTP Server上,Host1負(fù)責(zé)將發(fā)送到21端口的數(shù)據(jù)轉(zhuǎn)送到FTP Server的21端口上,如此一來,Host3可直接連接Host1的21端口,而所有發(fā)送的數(shù)據(jù)則由Host1轉(zhuǎn)送到FTP Server上了。
  “這么說,只要將Host1的21端口映射到FTP Server就可以在內(nèi)網(wǎng)中做FTP服務(wù)器了?”非也,如果你僅僅映射21端口,那么要連接到FTP的客戶端必須關(guān)閉PASV模式,而且有的客戶端可以登陸,而有的根本無法登陸。為什么會(huì)這樣?PASV又是什么?這就先要從FTP服務(wù)器的工作模式說起了。

二、FTP的工作模式
  FTP服務(wù)器在啟動(dòng)后,會(huì)打開一個(gè)命令模式端口(默認(rèn)是21),客戶端連接上FTP時(shí),會(huì)首先連接到命令模式端口,這時(shí)候就建立起一個(gè)命令通道,所有發(fā)送的命令與服務(wù)器的反饋就通過這個(gè)通道傳送。但這條通道僅僅能傳送命令,要傳送文件數(shù)據(jù)信息(如文件內(nèi)容、目錄列表等等)就得經(jīng)過另外一個(gè)通道(數(shù)據(jù)通道),而這個(gè)數(shù)據(jù)通道是用Port命令或Pasv命令建立的。
  1、PORT模式。使用PORT命令后,客戶端會(huì)打開一個(gè)沒有被占用的端口,然后由服務(wù)器的20端口發(fā)起一個(gè)連接,連接到這個(gè)端口,從而建立起一條數(shù)據(jù)通道。
  2、PASV模式。使用PASV命令后,客戶端會(huì)請(qǐng)求服務(wù)器再打開一個(gè)沒有被占用端口,然后客戶端連接到服務(wù)器的這個(gè)端口上,建立起一條數(shù)據(jù)通道。
  因此,看得出來,如果FTP服務(wù)器是內(nèi)網(wǎng)的,且僅映射了21端口,則其它內(nèi)網(wǎng)用戶用Port模式能連接上服務(wù)器,但無法列出文件列表,更遑論下載文件了。更要命的是Pasv模式根本無法使用,因?yàn)镻ASV模式需要用到的端口沒有被映射。因此,我們需要映射所有被PASV模式用到的端口(可怕的工作量)。那么如何得知FTP服務(wù)器能使用哪些PASV模式端口并一一映射它們呢?幸運(yùn)的是,有一個(gè)PortTunnel的端口映射軟件,它能自動(dòng)偵測(cè)到PASV模式需要使用的端口且自動(dòng)映射它們,這實(shí)在太好了,我們就不必一個(gè)個(gè)的去映射這些PASV用到的端口了。如圖:

不過PortTunnel只能用在網(wǎng)關(guān)機(jī)(即Host1)上,如果Host1根本不是一臺(tái)PC,而是路由器或者是ADSL Modem,怎么辦?沒辦法啦,您就只有一個(gè)一個(gè)映射了,那么,先找出PASV用到了哪些端口吧,以Serv-U這個(gè)FTP服務(wù)器軟件為例:

這里PASV端口范圍可以自己確定(根據(jù)服務(wù)器的最大同時(shí)連接數(shù)量確定),端口知道了,那么就一個(gè)一個(gè)的映射吧~~~路由器和ADSL Modem設(shè)置端口映射的方法我就不說了,因?yàn)槊恳豢町a(chǎn)品可能都不一樣。

案例1:一個(gè)LAN,主機(jī)裝WIN2K,共享上網(wǎng),F(xiàn)TP服務(wù)器在內(nèi)網(wǎng)上,則可在主機(jī)上安裝PortTunnel,映射21端口,然后啟用“使用Port和PASV命令”,如此即可。


點(diǎn)“開始”之后,端口映射工具PortTunnel就開始工作了
PortTunnel可以在我的FTP上下載
ftp://61.136.221.178/Internet/PortTunnel_CH.zip

案例2:家庭用戶,用ADSL Modem + LAN方式上網(wǎng),由于網(wǎng)關(guān)是ADSL Modem,因此無法使用PortTunnel,不過ADSL Modem本身支持端口映射,則確定FTP服務(wù)器的PASV端口后,一一在Modem上設(shè)置好映射即可。因?yàn)槲覜]有ADSL,所以圖略:)


文章來源:yesky
·FTP反饋信息集錦
·[圖]關(guān)于FTP下載的被動(dòng)模式與主動(dòng)模式
·對(duì)付一些FTP在字符字上刻意做手腳的方法
·用批處理命令實(shí)現(xiàn)FTP文件的自動(dòng)傳輸
·最具體的FTP命令詳解
 放生
 愚愛
 夠愛
 觸電
 白狐
 葬愛
 光榮
 畫心
 火花
 稻香
 小酒窩
 下雨天
 右手邊
 安靜了
 魔杰座
 你不像她
 邊做邊愛
 擦肩而過
 我的答鈴
 懷念過去
 等一分鐘
 放手去愛
 冰河時(shí)代
 你的承諾
 自由飛翔
 原諒我一次
 吻的太逼真
 左眼皮跳跳
 做你的愛人
 一定要愛你
 飛向別人的床
 愛上別人的人
 感動(dòng)天感動(dòng)地
 心在跳情在燒
 玫瑰花的葬禮
 有沒有人告訴你
 即使知道要見面
 愛上你是一個(gè)錯(cuò)
 最后一次的溫柔
 愛上你是我的錯(cuò)
 怎么會(huì)狠心傷害我
 不是因?yàn)榧拍畔?/a>
 親愛的那不是愛情
 難道愛一個(gè)人有錯(cuò)
 寂寞的時(shí)候說愛我