Tomato Port Forwarding / Port Triggering 設定 - Noname, No ...

文章推薦指數: 80 %
投票人數:10人

一般的人通常是因為要玩遊戲或是其它個人用途,才會設定Port Forwarding / Triggering,但如果想要在家中架網頁伺服器,或是郵件伺服器等,建議用更 ... 搜尋此網誌 2010/08/13 TomatoPortForwarding/PortTriggering設定 簡單介紹有關頻寬分享器常會有的功能:PortForwarding,PortTriggering及UPnP/NAT-PMP 當頻寬分享器安裝好後,通常會有一個功能,叫PortForwarding,但是手冊上不一定會說明怎麼使用,比如ASUSRT-N10/RT-N16二本手冊,我根本沒看到在哪設定?以下介紹在TomatoFirmware上有的PortForwarding功能: PortForwarding PortTriggering UPnP/NAT-PMP PortForwarding 這是最早出現的轉Port方式,比如如果你的PC,IP為192.168.0.1,在這台機器上有一個應用程式開啟了1234這個埠(Port),負責接收網際網路的需求,但是由於頻寬分享器本身的防火牆功能,並不允許外面的連線連到192.168.0.1:1234這個端點,故需要設定PortForwarding,告訴頻寬分享器,如果收到要到Port1234的要求,就轉到192.168.0.1的Port1234。

PortForwarding最不方便的是,要設定內部轉到哪台IP,不能動態設定。

典型用PortForwarding的例子是:架在內部的WebServer,要能讓外部可以連接時,都會用PortForwarding。

PortForwarding的設定直覺,不考慮安全性的話,通常使用者自己建立的伺服器,可以使用PortForwarding來設定,其缺點是一經設定後,就只能將設定的Port導到指定的單一IP位址,缺乏彈性。

PortTriggering PortTriggering和PortForward很類似,差別在於不用指定IPAddress,試想想如果PC端是用DHCP,那麼指定IP的話,不是很麻煩?PortTriggering可說是PortForwarding的進化版,只要指示Router,收到外部對哪個Port要求Request時,送到內部哪個Port即可。

但是它應該也無法同時處理二台PC上同一個Port的要求,我沒有實驗過是不是真的不行。

PortTriggering的先決條件是:要先從內部發出連線要求後,路由器才知道是哪台設備有此需求,當外部連線進來時,才知道要導向哪台機器。

PortTriggering的問題有:(1)一段時間沒有連線時,會自動中止連線(2)區域網路內,相同的PortTriggering規則,在同一時間只能有一個是有作用的。

PortForwarding/PortTriggering不是防火牆 以Internet來說,PortForwarding和PortTriggering只是將一個TCP/IP的Port由外部映射到內部私人網路的某台主機上,你可以在Internet開一個80Port的網頁伺服器,內部的伺服器可用非80Port來當做服務,只要映射做得正確就沒有問題,例如: 網際網路來的80port要求,會打到內部的192.168.0.2:1080的網頁伺服器上。

換個角度來想,如果192.168.0.2這台機器安全性沒設定好,或是沒有定期更新,而有軟體上的漏洞,很可能會被外部的駭客入侵,而這台機器,又沒有和區域網路內的其它機器有隔離開來,駭客很容易再經由這台機器當跳板,入侵區域網路內的其它電腦,或是經由該機器去入侵其它公司或是公家機關的伺服器。

一般的人通常是因為要玩遊戲或是其它個人用途,才會設定PortForwarding/Triggering,但如果想要在家中架網頁伺服器,或是郵件伺服器等,建議用更安全的方式:即DMZ,TomatoUSB及其衍生的Shibby版中應都有DMZ;將伺服器放在DMZ中是較安全的作法。

另外就是現行一些個人用的NAS,都標榜有網頁伺服器和雲端硬碟等功能,在安全的考量下,要不要使用見仁見智。

UPnP/NAT-PMP UPnP是為了解決上面二種麻煩的設定而產生的,在有支援UPnP的軟硬體下,通常不用做任何設定,程式就可以直接設作業系統及軟體設備溝通,並建立連結。

而NAT-PMP(NATPortMappingProtocol)是架構在UPnP下的更進階的協定,要用這功能,UPnP一定要打開,NAT-PMP神奇的地方是,它可以直接和Router溝通,可以把它想成自動在Router上設PortForwarding,主要是由Apple提出,應用方面也以Apple的設備為主,但是不少軟體也有支援(比如BitComet)。

在TomatoFirmware上設定PortForwarding、PortTriggering和UPnP 下圖表示如何在TomatoFirmware上設定PortForwarding: 範例--設定PortForwarding:下面的例子為指定192.168.0.1:12185TCPPort和192.168.0.1:9663UDP二個PortForwarding,請注意畫面上的設定是沒打開(On)的,另外,設好後,右下角有個Save的按鈕,要按了以後才生效。

範例--設定PortTrigger:下面的例子為指定12185TCPPort,9663UDPPort,7263TCP三個PortTriggering,這種設定方式是不用指定IP的,請注意畫面上的設定是沒打開(On)的,另外,設好後,右下角有個Save的按鈕,要按了以後才生效。

範例--設定UPnP/NAT-PMP:這個設定沒什麼好設的,只要確定有開啟就好,要用NAT-PMP的話,要先開UPnP,反正二個都打開就行,畫面上會顯示目前運作中的UPnP 理論上設有UPnP後,PC端應該就可以自動設定了,可是有時卻發現還是無效,原因可能是: 你用WindowsXP:UPnP需要手動開啟,請自行Google,Windows7內定UPnP是開的 軟體本身支援UPnP,但是Router卻沒開對應的Port:這可以手動設定 如何手動設定Router的UPnP對應 以Bitcomet和eMule來說,二者都支援UPnP,但是打開UPnP後,BotComet可以連出去,但是eMule卻出現LowID,在用Tomato前,用RT-10還出現二個程式即使是PortTriggering設好了,都不能動的狀況,應該可以想成這二支程式在當時,只設定好作業系統的UPnP映射? 手動設定Router的PortMapping 以Windows7為例,其中一個設定方式如下: 打開網路和共用中心,點開下圖中的網路圖示: 網路結構下,應該會看到分享器(UPnPRouter): 按右鍵,選內容後,按下設定: 上面列出已經設定好的Mapping,其中BitComet二個是程式自己設的,eMule是我設的: 為何eMule在它的程式中設定用UPnP後,還是出現LowID?因為它不支援NAT-PMP,無法主動設定Router上的Mapping,而BitComet有支援NAT-PMP,它會告訴Router相關的設定,這就是為何同樣支援UPnP,但是eMule設了卻沒用的原因。

  如果要新增的話,按下新增按鈕即可: eMule和PortForwarding/PortTriggering/UPnP eMule雖然有UPnP的設定,可惜的是並不能正常運作,就連PortTriggering都有非常不穩定,所以最安全的方法,還是用最古老的PortForwarding吧! 張貼者: Comidiot 於 11:59上午 以電子郵件傳送這篇文章BlogThis!分享至Twitter分享至Facebook分享到Pinterest 標籤: 電腦知識, 網路技術 沒有留言: 張貼留言 較新的文章 較舊的文章 首頁 訂閱: 張貼留言(Atom)



請為這篇文章評分?