內網穿透的概念
來簡單了解下內網穿透的概念:
內網穿透,即NAT穿透,網絡連接時術語,計算機是局域網內時,外網與內網的計算機節點需要連接通信,有時就會出現不支持內網穿透。就是說映射端口,能讓外網的電腦找到處于內網的電腦,提高下載速度。不管是內網穿透還是其他類型的網絡穿透,都是網絡穿透的統一方法來研究和解決。
有哪些應用場景
- 提供內網穿透服務
- 連接內網服務器,在外網演示內網web站點
- 無需服務器部署,快速調試本地程序,微信公眾號開發利器
- 支持http、https協議站點,省去證書中間件復雜配置,http協議站點直接升級為https站點
- 支持TCP,UDP協議端口轉發。支持數據庫、SSH、遠程桌面、網絡攝像頭等等開放到外網 包括但不限于以上場景。
常用的內網穿透工具
看到應用場景,是不是覺得臥槽有點東西了?跟自己實際開發的應用場景還有點一丟丟契合呢? 沖可以在外網演示內網web站這點來說,就值得我們大多數開發者為之嘿嘿嘿。
NATApp
基于ngrok的國內收費內網穿透工具,免費版本:提供http,https,tcp全隧道穿透,隨機域名/TCP端口,不定時強制更換域名/端口,自定義本地端口,臨時用一下可以。
frp
是一個高性能的反向代理應用,支持 tcp, http, https 等協議類型,并且 web 服務支持根據域名進行路由轉發。自己組建的話需要外網一臺有公網IP的設備,啟動需要手動驅動客戶端和服務端,這點比較麻煩,也是對技術有一定的要求 使用相對復雜,需要代理服務器支持。
ngrok
ngrok是一個反向代理,通過在公共的端點和本地運行的Web服務器之間建立一個安全的通道。ngrok可捕獲和分析所有通道上的流量,便于后期分析與響應。 現在的luci,自帶server和client,也就是說如果有一個公網ip的話,是可以用來作為ngrok的server端的。
花生殼
花生殼既是內網穿透軟件、端口映射軟件。功能比較齊全,比較簡單,也是大家比較耳熟了,支持tcp,udp.https.http,socket5應用。流量還是得走傳說中的rootnode,所以是限流1G,分的等級比較多商業版、旗艦版、鉑金版,需要根據不同需求付費開通相關功能。
ngrok工具的使用
注冊賬號
打開ngrok官網注冊一個賬號后登錄。ngrok官網 可以用github或者google第三方賬號直接免注冊登錄。
下載客戶端
登錄成功后下載自己電腦對應的客戶端。
配置客戶端authtoken
點擊Auth,獲取當前用戶的authtoken
打開客戶端,輸入如下命令
ngrok authtoken 你的authtoken
內網穿透
假設你在本機上啟動了一個端口號為8000的服務,我們使用內網穿透工具將當前8000端口的服務映射到外網去。 打開ngrok客戶端,輸入以下命令
ngrok http 8000
即可通過外網訪問自己內網的服務啦。