如何用端口映射建立內(nèi)網(wǎng)FTP
一、端口映射的問(wèn)題 端口映射是指將一個(gè)IP上的某個(gè)端口映射到另外一個(gè)IP的某個(gè)端口上去。如下例:
Host3欲登陸到FTP Server,但是由于FTP Server在Lan中,沒(méi)有公網(wǎng)上的IP地址,因此Host3無(wú)法定位到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端口上,如此一來(lái),Host3可直接連接Host1的21端口,而所有發(fā)送的數(shù)據(jù)則由Host1轉(zhuǎn)送到FTP Server上了。 “這么說(shuō),只要將Host1的21端口映射到FTP Server就可以在內(nèi)網(wǎng)中做FTP服務(wù)器了?”非也,如果你僅僅映射21端口,那么要連接到FTP的客戶端必須關(guān)閉PASV模式,而且有的客戶端可以登陸,而有的根本無(wú)法登陸。為什么會(huì)這樣?PASV又是什么?這就先要從FTP服務(wù)器的工作模式說(shuō)起了。
二、FTP的工作模式 FTP服務(wù)器在啟動(dòng)后,會(huì)打開(kāi)一個(gè)命令模式端口(默認(rèn)是21),客戶端連接上FTP時(shí),會(huì)首先連接到命令模式端口,這時(shí)候就建立起一個(gè)命令通道,所有發(fā)送的命令與服務(wù)器的反饋就通過(guò)這個(gè)通道傳送。但這條通道僅僅能傳送命令,要傳送文件數(shù)據(jù)信息(如文件內(nèi)容、目錄列表等等)就得經(jīng)過(guò)另外一個(gè)通道(數(shù)據(jù)通道),而這個(gè)數(shù)據(jù)通道是用Port命令或Pasv命令建立的。 1、PORT模式。使用PORT命令后,客戶端會(huì)打開(kāi)一個(gè)沒(méi)有被占用的端口,然后由服務(wù)器的20端口發(fā)起一個(gè)連接,連接到這個(gè)端口,從而建立起一條數(shù)據(jù)通道。 2、PASV模式。使用PASV命令后,客戶端會(huì)請(qǐng)求服務(wù)器再打開(kāi)一個(gè)沒(méi)有被占用端口,然后客戶端連接到服務(wù)器的這個(gè)端口上,建立起一條數(shù)據(jù)通道。 因此,看得出來(lái),如果FTP服務(wù)器是內(nèi)網(wǎng)的,且僅映射了21端口,則其它內(nèi)網(wǎng)用戶用Port模式能連接上服務(wù)器,但無(wú)法列出文件列表,更遑論下載文件了。更要命的是Pasv模式根本無(wú)法使用,因?yàn)镻ASV模式需要用到的端口沒(méi)有被映射。因此,我們需要映射所有被PASV模式用到的端口(可怕的工作量)。那么如何得知FTP服務(wù)器能使用哪些PASV模式端口并一一映射它們呢?幸運(yùn)的是,有一個(gè)PortTunnel的端口映射軟件,它能自動(dòng)偵測(cè)到PASV模式需要使用的端口且自動(dòng)映射它們,這實(shí)在太好了,我們就不必一個(gè)個(gè)的去映射這些PASV用到的端口了。如圖:
不過(guò)PortTunnel只能用在網(wǎng)關(guān)機(jī)(即Host1)上,如果Host1根本不是一臺(tái)PC,而是路由器或者是ADSL Modem,怎么辦?沒(méi)辦法啦,您就只有一個(gè)一個(gè)映射了,那么,先找出PASV用到了哪些端口吧,以Serv-U這個(gè)FTP服務(wù)器軟件為例:
這里PASV端口范圍可以自己確定(根據(jù)服務(wù)器的最大同時(shí)連接數(shù)量確定),端口知道了,那么就一個(gè)一個(gè)的映射吧~~~路由器和ADSL Modem設(shè)置端口映射的方法我就不說(shuō)了,因?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)“開(kāi)始”之后,端口映射工具PortTunnel就開(kāi)始工作了 PortTunnel可以在我的FTP上下載 ftp://61.136.221.178/Internet/PortTunnel_CH.zip
案例2:家庭用戶,用ADSL Modem + LAN方式上網(wǎng),由于網(wǎng)關(guān)是ADSL Modem,因此無(wú)法使用PortTunnel,不過(guò)ADSL Modem本身支持端口映射,則確定FTP服務(wù)器的PASV端口后,一一在Modem上設(shè)置好映射即可。因?yàn)槲覜](méi)有ADSL,所以圖略:)
|