飛凌干貨丨如何通過FRP反向代理訪問內網機器

原創 2020-03-07 17:44:00 FRP反向代理 飛凌嵌入式

一、實際使用場景:

針對實際使用中,遇到如下場景,想讓其他人測試在本地搭建的WEB服務,由于本地機器沒有公網IP,無法域名解析到本地機器。可通過反向代理的方式,實現此功能。

本文FRP反向代理訪問處于內網環境中的iMX6UL系列OKMX6UL-C開發板作為說明。

二、F RP 簡介

FRP是一個可用于內網穿透的高性能的反向代理應用,支持TCP,UDP協議,為HTTPHTTPS應用協議提供了額外的能力,且嘗試性支持了點對點穿透。 

三、FRP  的作用

利用處于內網或防火墻后的機器,對外網環境提供 HTTP 和 HTTPS  服務。

對于HTTP服務支持基于域名的虛擬主機,支持自定義域名綁定,使多個域名可以共用一個80端口。

利用處于內網或防火墻后的機器,對外網環境提供 TCP服務,例如可在通過 SSH 訪問處于公司內網環境內的主機。

可查看通過代理的所有 HTTP 請求和響應的詳細信息。(待開發)

四、具體操作:

根據對應的操作系統及架構,從FRP的 Release 頁面下載最新版本的程序。

以本文為例,采用飛凌嵌入式iMX6UL系列OKMX6UL-C開發板

下載frp_0.27.0_linux_arm.tar.gz。

將壓縮包中的 frps 及 frps.ini 放到具有公網 IP 的機器上。

將壓縮包中的 frpc 及 frpc.ini 放到處于內網環境的機器飛凌iMX6UL系列OKMX6UL-C開發板上。

修改配置文件

公網IP的機器上:

修改 frps.ini 文件,這里使用了最簡化的配置:

# frps.ini

[common]

bind_port = 7000

啟動 frps:

./frps -c ./frps.ini

內網環境的機器 FCU1101上:

修改 frpc.ini 文件,假設 frps 所在服務器的公網 IP 為 x.x.x.x;

# frpc.ini

[common]

server_addr = x.x.x.x

server_port = 7000

[ssh]

type = tcp

local_ip = 127.0.0.1

local_port = 22

remote_port = 6000

啟動 frpc:

./frpc -c ./frpc.ini

通過 ssh 訪問內網機器飛凌 iMX6UL系列OKMX6UL-C開發板

假設用戶名為 test:

ssh -oPort=6000 test@x.x.x.x

本文簡單介紹了如何通過FRP 服務訪問內網機器,其他復雜的應用,請結合自己實際使用,修改。當然,也可以選擇其他的反向代理,如Ngrok,也有類似編譯好的可執行文件。

相關產品 >

  • OKMX6UL-C開發板

    飛凌嵌入式專注imx6系列imx6ul開發板、飛思卡爾imx6ul核心板等ARM嵌入式核心控制系統研發、設計和生產,i.mx6UL系列產品現已暢銷全國,作為恩智浦imx6ul,imx6ul開發板,i.mx6提供者,飛凌嵌入式提供基于iMX6 iMX6UL解決方案定制。

    了解詳情
    OKMX6UL-C開發板
  • OKMX6ULL-C開發板

    40*29mm,雙網雙CAN,8路串口| i.MX6ULL開發板是基于NXP i.MX6ULL設計開發的的一款Linux開發板 ,主頻800MHz,體積小,其核心板僅40*29mm,采用板對板連接器,適應場景豐富。 了解詳情
    OKMX6ULL-C開發板

推薦閱讀 換一批 換一批