現在絕大多數的家庭和辦公局域網都是通過NAT方式共享Internet的,由於NAT工作方式對外界來講隱藏了內部IP地址,所以構成了一個天然的防火牆,也正是這個原因,一些主機上的對外服務不能被外網用戶直接訪問,必須通過在網關上進行端口映射的方法,將內網主機的對外服務端口映射到網關機的外網IP的相關端口上,方可被外網訪問。
家庭和小型辦公局域網共享Internet主要分軟(代理服務器)和硬(帶路由功能的modem及寬帶路由器)兩種方式。這篇文章將以4個實用性案例來比較詳細地講解兩種代理方式的設置方法及步驟。
局域網的網關地址假設為192.168.1.1,而所需映射的內網服務器主機地址均為192.168.1.3。
例1:FTP服務器。本文在未指明情況下,均以映射FTP Server(TCP端口21)服務為例。WEB服務器的映射方法與FTP完全一樣,只是端口號為80。
例2:CS服務器。CS客戶端默認掃描的服務端口為TCP 27015~27017,所以我們這裡以映射27015端口為例。其實與FTP和WEB服務端口的映射方法也是完全一樣的。
例3:BT下載。由於BT下載的原理是在下載的同時還要上傳,只有上傳通暢才能達到下載的高速,所以我們需要映射其上傳端口。視所用的BT軟件不同而不同,如:比特精靈默認所有任務都使用16881。而其他常見的BT下載軟件都是每個任務占用一個上傳端口,起始端口為TCP 6881,一般允許10個任務,所以這裡以映射6881~6890端口為例。
例4:QQ語音聊天。QQ語聊時一般是通過服務器轉送建立連接的,所以NAT對它沒有什麼影響。只不過騰訊對非會員做了限制,進行語聊的非會員雙方用戶都處於代理後面,無法連接成功。但只要有一方屬於公網用戶即可成功連接,會員則不受此限制。所以一般情況下不需要映射端口。
而我們遇到語聊不成功的情況,多為網關上只開了HTTP代理,雖然QQ現在已經支持HTTP代理,但用HTTP代理上的QQ很多時候只能聊天,在與外面的人語聊時則總是連接失敗。這種情況可以通過二級代理的方式來解決,設置方法將在CCProxy中介紹。