Port Forwarding(埠轉發,又稱 Port Mapping)是網絡地址轉換(NAT)的一種應用,在封包經過路由器或防火牆等網關時,把來自某個地址與埠號組合的連線請求重新導向至另一個地址與埠號,讓外部使用者可以連接到內部網絡中指定主機提供的服務。本頁講解其運作原理、常見類型、實際應用,以及 UPnP 自動開埠的安全考量。
Port Forwarding 的定義:從公網通往內網指定服務
一般住宅或中小企網絡中,路由器(NAT 設備)的對外介面設定有一個公網 IP 地址,而路由器後方的所有電腦、攝影機、伺服器等設備,各自只擁有一個私網地址,對互聯網上的主機而言是不可見的。這種設計本身已為內部網絡提供一定程度的保護,但同時亦意味著外部使用者無法直接連接到內部的特定服務。
Port Forwarding 正是為解決此問題而生:管理員在路由器上預留一個埠號,專門用於與內部私網某台主機上的服務通訊。外部主機只需知道路由器的公網地址與該埠號,即可與內部服務建立連線,而路由器會把請求的目的地址與埠號重新映射至內部主機。常見設定會沿用服務原有的知名埠號,例如網頁服務(HTTP)使用 80 埠,令內部服務可以用標準方式對外提供。
NAT 與 Port Forwarding 的關係
NAT(Network Address Translation,網絡地址轉換)是路由器用來讓多台內部設備共用一個公網 IP 地址對外通訊的機制;Port Forwarding 則是在此基礎上,反過來讓外部連線可以「找到」內部的指定主機。在路由器等網關設備上,Port Forwarding 通常只需一條規則,把目的地址與埠號轉換即可完成,來源地址與埠號一般維持不變。
兩者解決不同問題,但經常一併使用。Port Forwarding 負責把外部連線導向至路由器後方的指定主機與埠號;DDNS(動態域名解析)則負責在住宅或中小企常見的動態公網 IP 變動時,自動更新一個固定網域名稱指向目前的 IP 地址。若公網 IP 會變動,單靠 Port Forwarding 設定埠號並不足夠,仍需要 DDNS 讓外部使用者持續以同一網址連接,才能穩定遠端存取內部服務。
為何開了 Port Forwarding 仍然連不到?
常見原因包括:路由器本身的防火牆規則未同步放行該埠;設備使用的是動態公網 IP 而未配合 DDNS;上游電訊商的網絡採用 CGNAT(電訊商層級的地址轉換),令用戶實際上沒有獨立公網 IP,此情況下路由器上的 Port Forwarding 設定無法生效,需要向電訊商查詢是否提供獨立公網 IP 或改用其他遠端連線方案;亦有可能是內部主機的防火牆或服務本身未在該埠監聽。
本機轉發(Local Port Forwarding)是把本機的某個埠透過安全通道(例如 SSH)轉送至遠端目的主機與埠,讓本機應用程式可以連接到原本無法直接連接的目的地。遠端轉發(Remote Port Forwarding)則相反,是讓通道另一端(伺服器側)的應用程式,可以連接到通道發起端(客戶端側)的內部服務。兩者都是穿透網絡限制的技術,但資料流向與應用場景不同。
CCTV 或 NVR 需要做 Port Forwarding 才能遠端觀看?
如果選用需要自行在路由器開埠的傳統方式,就需要設定 Port Forwarding,把外部請求導向 NVR 或攝影機的內部 IP 與對應埠號,並配合固定 IP 或 DDNS 使用。不過,部分廠商的雲端 P2P 方案毋須手動開埠,透過雲端伺服器中繼連線即可實現遠端觀看,兩種方式各有優劣,開埠方式對頻寬與延遲控制較好,但需要承擔對外開放埠號的安全管理責任。
需要規劃遠端存取或網絡安全設定?
我們的工程師可按現場網絡環境規劃 Port Forwarding、DDNS 與防火牆規則,兼顧遠端存取便利與網絡安全,歡迎查詢及免費報價。