一、什么是端口映射

   端口映射:端口映射就是將內(nèi)網(wǎng)中的主機的一個端口映射到外網(wǎng)主機的一個端口,提供相應的服務。當用戶訪問外網(wǎng)IP的這個端口時,服務器自動將請求映射到對應局域網(wǎng)內(nèi)部的機器上。

比如:

   我們在內(nèi)網(wǎng)中有一臺Web服務器,但是外網(wǎng)中的用戶是沒有辦法直接訪問該服務器的。于是我們可以在路由器上設(shè)置一個端口映射,只要外網(wǎng)用戶訪問路由器ip的80端口,那么路由器會把自動把流量轉(zhuǎn)到內(nèi)網(wǎng)Web服務器的80端口上。并且,在路由器上還存在一個Session,當內(nèi)網(wǎng)服務器返回數(shù)據(jù)給路由器時,路由器能準確的將消息發(fā)送給外網(wǎng)請求用戶的主機。在這過程中,路由器充當了一個反向代理的作用,他保護了內(nèi)網(wǎng)中主機的安全。

二、什么是端口轉(zhuǎn)發(fā)

   端口轉(zhuǎn)發(fā):端口轉(zhuǎn)發(fā)(Port forwarding),有時被叫做隧道,是安全殼(SSH) 為網(wǎng)絡(luò)安全通信使用的一種方法。

   比如,我們現(xiàn)在在內(nèi)網(wǎng)中,是沒有辦法直接訪問外網(wǎng)的。但是我們可以通過路由器的NAT方式訪問外網(wǎng)。假如我們內(nèi)網(wǎng)現(xiàn)在有100臺主機,那么我們現(xiàn)在都是通過路由器的這一個公網(wǎng)IP和外網(wǎng)通信的。那么,當互聯(lián)網(wǎng)上的消息發(fā)送回來時,路由器是怎么知道這個消息是給他的,而另外消息是給你的呢?這就要我們的ip地址和路由器的端口進行綁定了,這時,在路由器中就會有一個內(nèi)網(wǎng)ip和路由器端口對應的一張表。當路由器的10000端口收到消息時,就知道把消息發(fā)送給他,而當20000端口收到消息時,就知道把消息發(fā)送給你。這就是端口轉(zhuǎn)發(fā)。


三、端口映射與端口轉(zhuǎn)發(fā)的區(qū)別

   端口轉(zhuǎn)發(fā):轉(zhuǎn)發(fā)的重點在“轉(zhuǎn)”上面。送快遞的過來,把所有快遞都交給門口保安,保安再根據(jù)每件快遞上的收件人來分發(fā)。

   端口映射:就是在大門口給每個人裝個柜子,送快遞的直接按收件人名字,把快遞放到對應的柜子里面。


四、如何實現(xiàn)端口映射?實現(xiàn)外網(wǎng)訪問本地服務器

   映射實現(xiàn)外網(wǎng)訪問本地服務器,當你的內(nèi)網(wǎng)的內(nèi)容需要外網(wǎng)的用戶進行訪問時,可以進行端口映射。

  1. 確認服務器搭建成功

    設(shè)置虛擬服務器之前,需要確認以下幾點:

  2. 教你路由器端口映射設(shè)置方法
  3. 添加虛擬服務器規(guī)則

    開始設(shè)置

    登錄路由器管理界面,進入 轉(zhuǎn)發(fā)規(guī)則 >> 虛擬服務器,并點擊 添加新條目。

    教你路由器端口映射設(shè)置方法
  4. 添加郵件服務器規(guī)則

    填寫郵件服務器的服務端口號(外開放端口)、內(nèi)部端口號(服務器實際端口)、服務器IP地址,然后點擊 保存。

    發(fā)送郵件(SMTP:25號端口):

    教你路由器端口映射設(shè)置方法
  5. 接收郵件(POP3:110號端口):

    教你路由器端口映射設(shè)置方法
  6. 服務端口號:服務端口號為對外開放端口,即Internet訪問服務器使用的端口。

    添加網(wǎng)頁服務器規(guī)則

    教你路由器端口映射設(shè)置方法

    注意:服務端口號可以根據(jù)需要自行設(shè)置(如需更改,建議設(shè)置為9000以上)。無特殊需求,請將服務端口號與內(nèi)部端口號一致。

  7. 確認規(guī)則啟用

    進入 轉(zhuǎn)發(fā)規(guī)則 >> 虛擬服務器,如圖所示表示創(chuàng)建成功。

    教你路由器端口映射設(shè)置方法

    確認虛擬服務器設(shè)置成功

  8. 根據(jù)以上設(shè)置,Internet中的客戶端通過郵件客戶端軟件訪問121.202.33.100(WAN口IP地址),即可訪問到郵件服務器。通過瀏覽器訪問網(wǎng)頁服務器,訪問形式如下:


    教你路由器端口映射設(shè)置方法

上述方法僅供大家參考,一般來說,路由器中都會有設(shè)置端口映射的說明,大家按照說明操作即可。


五、路由器在網(wǎng)關(guān)中設(shè)置了端口映射,但外網(wǎng)訪問不了的原因

1、首先檢查您設(shè)置的端口映射是否正確映射到您內(nèi)網(wǎng)的服務器。即您設(shè)置的轉(zhuǎn)發(fā)規(guī)則的IP地址是否為您服務器的IP地址。


2、無法訪問內(nèi)網(wǎng)的服務器,請檢查服務器是否開啟了。您可以在局域網(wǎng)內(nèi)使用其他的計算機訪問一下您的服務器,確認服務器是否開啟,并能成功訪問。


3、請您檢查您是否映射了服務器所需的所有端口,有可能沒有完全設(shè)置訪問服務器所需的端口,導致訪問失敗。您可以通過開啟“DMZ主機”來檢測一下,是否端口沒有映射完全。若開啟DMZ主機后,能正常訪問服務器,則可能是端口添加不完全。


4、網(wǎng)關(guān)上是否設(shè)置了“防火墻”,是否將服務器通信的端口過濾,導致訪問失敗。


5、本機防火墻:因本地網(wǎng)絡(luò)為信任區(qū)域,防火墻并不會阻止本地網(wǎng)絡(luò)的訪問,若訪問源地址為外網(wǎng)地址(非信任區(qū)域地址),則可能會被防火墻攔截而無法訪問。


6、服務商將相應端口屏蔽:在網(wǎng)關(guān)WAN口接一臺電腦模擬內(nèi)外網(wǎng)環(huán)境,若WAN口所接電腦可以正常訪問內(nèi)網(wǎng)服務器,但在Internet上無法訪問,則可能是服務器將相應端口屏蔽導致虛擬服務器無法訪問;
最后補充下:
①、若是80端口的WEB服務器,一定要注意網(wǎng)關(guān)的管理端口是否更改,否則兩者會沖突;
②、檢查虛擬服務器是否映射成功一定要從外網(wǎng)進行訪問,不要從內(nèi)網(wǎng)用WAN口IP去訪問,這樣在測試的時候是成功的,但實際外網(wǎng)并不能成功訪問。
③、特殊的服務器,如網(wǎng)絡(luò)攝像機及特殊的應用軟件等,如果客戶自己都不清楚通訊的端口,可先嘗試DMZ主機以確認是否可以使用,同時建議客戶咨詢軟件提供商。