內網穿透神器ngrok

来源:http://www.cnblogs.com/maoniu602/archive/2016/05/25/5524476.html
-Advertisement-
Play Games

相信做Web開發的同學們,經常會遇到需要將本地部署的Web應用能夠讓公網環境直接訪問到的情況,例如微信應用調試、支付寶介面調試等。這個時候,一個叫ngrok的神器可能會幫到你,它提供了一個能夠在公網安全訪問內網Web主機的工具,能捕獲所有HTTP請求的內容,也支持TCP埠映射,支持Linux、Wi ...


  相信做Web開發的同學們,經常會遇到需要將本地部署的Web應用能夠讓公網環境直接訪問到的情況,例如微信應用調試、支付寶介面調試等。這個時候,一個叫ngrok的神器可能會幫到你,它提供了一個能夠在公網安全訪問內網Web主機的工具,能捕獲所有HTTP請求的內容,也支持TCP埠映射,支持Linux、Windows、Mac OS X 等平臺。

  我們現在就來小試下牛刀,感受下 ngrok 的好玩之處。

一、ngrok 下載

  到官網下載ngrok小工具:https://ngrok.com/,工具體積很小,現在已經升級到 2.X 的版本,只支持64位操作系統,並被作者用於商業化。1.X版本的免費自定義固定二級功能變數名稱功能已經開始收費,這塊後面會說明。

二、ngrok 使用

 以windows版本為例,把下載的壓縮包解壓到本機硬碟,用 DOS命令切換到 ngrok.exe 所在的目錄:

 

好了,接下來如何使用呢?我們來通過演示幾個簡單樣例來說明:

輸入 ngrok http 8001,回車,出現如下信息:

  意思是 ,隨機分配一個公網可以訪問的二級功能變數名稱http://49412880.ngrok.io/ 轉發到我們本機的8001埠 ,這也就意味著,現在訪問 http://49412880.ngrok.io/ 就如同訪問內網的http://127.0.0.1:8001。

  同時通過ngrok提供的管理界面(http://127.0.0.1:4040)可以清晰的看到當前有哪些連接、請求的URL等, 是不是很方便?但是上面分配的功能變數名稱是臨時且隨機的,一旦本機重啟或者ngrok重啟後,這個功能變數名稱就變化了。如何把一個固定的功能變數名稱映射到本機呢? V1.X的版本是可以免費支持將一個固定的二級功能變數名稱指向本機的,不過作者已經把 V2.X的版本商業化,所以固定功能變數名稱的轉發現在需要收費了,費用倒是不貴,有興趣的同學可以去官網看看。

 

當我們的機器綁定了多個IP時,通過指定IP來轉發映射:ngrok http 192.168.1.101:8006

也可以轉發同一區域網內其它的主機和埠:ngrok http 192.168.4.6:8008 

TCP埠轉發:ngrok tcp 22

       ngrok tcp 3389  

這樣我們可以在公網SSH到內網Linux機器,遠程桌面到內網Windows機器了,當然外網埠也是臨時隨機的。如下圖,我們已經在公網環境下遠程到了內網windows機器上

怎麼樣,有意思吧。

三、ngrok小問題

  不過需要說明一點,ngrok的訪問可能會不太穩定,原因你們都懂的,指不定哪天就被牆了。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 資料庫管理系統(DBMS)由一個互相關聯的數據的集合和一組用以訪問這些數據的程式組成。這個數據集合通常稱作資料庫,其中包含了關於某個企業的信息。 DBMS的主要目標是要提供一種可以方便、高效地存取資料庫信息的途徑。 1.1 數據視圖 1.1.1 數據抽象 一個可用的系統必須能高效地檢索數據。這種高效 ...
  • 源表結構: pcgid string mobilegid string value double 測試數據如下: p1 m1 0.6p1 m2 0.9p2 m1 1.0 需要的結果是: p1 {"m2":"0.9","m1":"0.6"} 2 p2 {"m1":"1.0"} 1 就是對源表進行gro ...
  • 環境: mysql:mysql-5.1.65 centos:centos 6.5 編譯命令: gcc -o chinesetopinyin chinesetopinyin.c -L/usr/lib/mysql -lmysqlclient -I/usr/include/mysql 源代碼: 資料庫漢字 ...
  • mysql修改表欄位類型語法 alter table 表名 modify column 欄位名 類型; ...
  • Mysql 表分區操作及相關操作 將ID設為自增長ID alter table pw_trade_record_temp change ID ID int(4) auto_increment; 分區欄位必需為主鍵,修改主鍵 ALTER TABLE `pw_trade_record` DROP PRI ...
  • 我們把表中的每一行叫做一個“記錄”,每一個記錄包含這行中的所有信息,就像在通訊錄資料庫中某個人全部的信息,但記錄在資料庫中並沒有專門的記錄名,常常用它所在的行數表示這是第幾個記錄。在資料庫中存放在表行列交叉處的數據叫做“值”,它是資料庫中最基本的存儲單元,它的位置要由這個表中的記錄和欄位來定義。 ...
  • 1、資料庫的4個基本概念: 數據(data) 資料庫(DB) 資料庫管理系統(DBMS) 資料庫系統(DBS) 2、數據模型 對現實世界數據特征的抽象,是用來描述數據、組織數據和對數據進行操作的。 數據模型是資料庫系統的核心和基礎。 數據模型通常由數據結構、數據操作、和數據的完整性約束條件三部分組成 ...
  • 本文是Linux Shell系列教程的第(三)篇,更多shell教程請看:Linux Shell系列教程 Shell作為一種高級的腳本類語言,也是支持自定義變數的。今天就為大家介紹下Shell中的變數相關知識。 為使Shell編程更有效,系統提供了一些Shell變數。Shell變數可以保存諸如路徑名 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...