局域網服務器提供公網訪問,或指定某些端口應用資源給外地訪問,都是常見跨網通信需求。在一些場景下,內部網絡中的服務器需要通過公網地址進行訪問,尤其是在沒有固定公網IP或需要在外部訪問時。為了解決這一問題,可以使用以下幾種方法實現內網穿透,方便地通過公網訪問內網服務器。
外網計算機如何來訪問局域網內的計算機?這里最核心的問題是涉及到公網地址與私網地址轉化的問題。根據被連接端是否具有公網地址、連接的操作目的等等,可以采用多種方式來實現連接訪問。若為公網地址,主要涉及路由器NAT端口映射的問題,若為私網地址,主要涉及如何解決私網穿透的問題。
運營商接入網絡有兩類方式,一類是集團專線接入網絡,一類是家寬接入網絡。前者往往會給使用單位配置公網IP地址作為出后,后者基本上僅僅會使用運營商的私網地址。不同的網絡接入模式,也就給出了遠程連接不同的方式。?那么,就一起來看看都有哪些方法能夠實現外網訪問局域網計算機和指定端口服務吧!
一、遠程接入具有公網地址的服務器
若接入方具有公網地址,并且局域網的電腦屬于網站、FTP、郵件等服務器的一種,可以直接通過路由器端口映射的方式進行訪問。
路由映射實現:只需要將服務器電腦IP地址以及端口與路由器上的公網地址進行端口映射即可。在路由器轉發規則、虛擬服務器中進行設置。之后即可通過公網IP地址與端口的組合,來訪問這臺局域網內的服務器(或者直接通過電腦端自帶的遠程接入程序來建立連接)。
二、遠程接入私網地址的個人電腦
若接入方并不具備公網地址,那么將面臨私網地址穿透的問題。最方便的接入方式就是通過軟件來實現,例如使用QQ或者TeamViewer遠程連接軟件或者用nat123映射遠程桌面連接端口來實現外網的訪問。
QQ遠程:使用QQ程序建立遠程連接需要電腦兩端同時有人值守,更加適合遠程協助這種方式,并不適合無人時的遠程連接。
遠程控制軟件:這里介紹一下如何通過TeamViewer這款軟件來建立遠程連接,只要在安裝時選擇個人模式,這款軟件可以進行使用。需要在兩臺電腦上分別安裝TeamViewer這款軟件,安裝之后會生成唯一的機器ID和密碼,對方只需要輸入本機的機器ID和密碼便可建立連接。
遠程桌面+nat123映射:如windows遠程桌面連接開啟,并通過nat123映射添加映射自定義域名端口在外地遠程訪問。如是Linux主機的,同理可以用SSH開啟,加上nat123映射添加映射域名端口給公網連接用。
三、使用nat123內網映射服務(無公網IP應用公網訪問便捷方案)
nat123是一種很老牌常見的內網映射工具,能夠通過在本地內部網絡上注冊并配置軟件映射,將內網服務暴露到公網,自定義域名訪問方式。可以結合本地實際應用場景,選擇改變端口轉發數據方式或同端口點到點直連模式訪問實現,具體步驟如下:
注冊與安裝: 在對應官方網站上注冊nat123賬號,并在內網服務器上(或所在內網另臺互通主機上)下載安裝客戶端。
配置端口映射:?登錄nat123客戶端后添加映射設置,使其能夠將內網IP端口映射到提供的公網地址端口上,或用自定義域名端口來作為公網地址訪問。
訪問:?在目標內網本地完成nat123配置后,外部用戶通過默認提供的自定義二級域名公網地址即可訪問內網服務器。如使用自己域名的,則同時在自己注冊域名解析網上對應添加指向讓自己域名生效后,再通過自己域名來訪問即可。
四、云服務端口轉發
如果使用云服務(如阿里云、騰訊云、AWS等),可以通過設置端口轉發(或者叫NAT規則),實現從公網訪問內網服務器。步驟通常如下:
配置安全組規則: 在云服務提供商的控制臺中配置安全組,允許公網IP通過特定端口訪問云服務器。
設置端口映射: 在云服務器上設置端口轉發,將外部請求轉發到內網服務器的指定端口。
外部訪問: 外部用戶通過云服務器的公網IP和端口來訪問內網服務。
五、使用FRP內網穿透服務
FRP 是一個高性能的反向代理應用,廣泛用于內網穿透。它通過在內網和外網之間建立代理通道,使得內網的服務能夠通過公網地址訪問。當有公網主機資源且項目多時,是可以自己通過FRP部署內網穿透服務實現外網的訪問,重要操作步驟:
安裝FRP: 在內網和外網的服務器上安裝FRP。
配置FRP客戶端: 配置內網服務器的FRP客戶端,指定內網服務的端口和外網的轉發規則。
配置FRP服務端: 配置公網服務器的FRP服務端,使其將公網請求轉發到內網服務。
訪問: 外部用戶通過FRP提供的公網IP和端口即可訪問內網服務。
六、SSH隧道(端口轉發)
SSH 隧道是通過 SSH 協議將內網服務通過加密隧道暴露到公網的技術。利用 SSH 的端口轉發功能,能夠安全地訪問內網服務。跟FRP類似,SSH是一種較為簡單端口轉發方式,對于轉發功能要求不高的可以使用,對比部署FRP操作上相對更為簡單些。操作步驟:
設置SSH服務器: 在公網服務器上設置并開啟 SSH 服務。
配置端口轉發: 使用 SSH 客戶端創建本地端口到遠程端口的轉發(如使用ssh -L8080:localhost:80 user@remote_host)。
訪問: 外部客戶端通過 SSH 隧道訪問內網服務。
七、VPN虛擬組網
VPN (Virtual Private Network,虛擬私有網絡) 是構建在互聯網之上的一種私有網絡技術。VPN 可以在公共網絡中創建一個加密安全通道,讓外部用戶實現遠程內部網絡訪問,并能夠訪問內部網絡中的資源,如文件、應用程序等。VPN通常需要用戶先登錄VPN服務器,通過 VPN服務器向內部網絡發起訪問請求。 VPN技術在實際應用中很常用,具有易于操作、可靠性高等優點。但代價是需要投入一定的硬件和軟件資源,并且設置VPN服務需要一定的技術實力。
硬件部署VPN方式:如通過VPN路由器方式,在服務器端網絡和所有訪問端都部署上這個VPN路由器。
軟件部署VPN方式:在不增加硬件的情況下,可以借助三方VPN工具來實現,同理需要在服務端和所有訪問端都安裝部署VPN工具,然后再通過虛擬地址進行連接訪問。
總結
內網通過公網地址訪問內網服務器的方法有多種選擇,包括 nat123內網穿透服務、云服務端口轉發、FRP等。對于大多數個人用戶或小型團隊來說,nat123是一個非常好的選擇,因為它簡單易用,且無需公網IP即可完成內網穿透,可以自定義域名端口公網訪問。而對于有公網IP企業級應用,直接使用路由器設置端口轉發即可。