https://www.toutiao.com/article/7139829196607455748/?log_from=9b4a212f9f92f_1668353259058 標題解釋:最終服務(wù)端(如家中閑置電腦/樹莓派)不需要公網(wǎng)IP, 但要被外網(wǎng)訪問最終還是要公網(wǎng)IP, 原理就是先讓最終服務(wù)端與公網(wǎng)IP建立連接, 通過這個連接來訪問內(nèi)部的服務(wù).如下圖: 圖1 之前用過免費的Ngrok但是不穩(wěn)定,速度也不行. 今天主要用frp 1.下載下載地址 目錄結(jié)構(gòu)如下: 服務(wù)端運行frps配置文件是frps.ini, 客戶端運行frpc配置文件是frpc.ini 2.配置并啟動服務(wù)端這里配置的是 圖1 中,中間部分的VPS.打開frps.ini配置參考如下
bind_addr表示綁定的服務(wù)端地址,如果有多個網(wǎng)卡,4個0表示任意網(wǎng)卡的IP都可以被訪問 bind_port 綁定的服務(wù)端端口,這個端口需要在防火墻中放行 token 客戶端連服務(wù)端時需要輸入的密碼 配置完成后切換到frp目錄 運行 ./frps -c ./frps.ini 3.配置并啟動客戶端這里配置的是 圖1 中,右側(cè)部分,家庭網(wǎng)絡(luò)中的服務(wù)器,打開frpc.ini配置參考如下:
server_addr 啟動frps服務(wù)的公網(wǎng)IP地址,也可以是域名,域名申請可參考<<>><< >> server_port 啟動frps服務(wù)的暴露端口,也就是第2步中配置的端口 token 第2步中配置的token type 可選tcp或udp. http也是基于tcp的 local_ip 上圖黃線箭頭所訪問的ip. 本機可填4個0,如果服務(wù)在局域網(wǎng)的其它機器,也可以寫其它機器的IP local_port 上圖中黃線箭頭訪問的端口號 remote_port 這個是運行frps的機器要暴露的端口.防火墻上要放行. 配置完成后切換到frp目錄 運行 ./frpc -c ./frpc.ini 注* 本地的服務(wù)端口81,并不需要對外網(wǎng)暴露.可對本機進行安全加固,參考<<>> 4.啟動真正的服務(wù).圖1 中最右側(cè), 在家中閑置電腦/樹莓派上配置nginx或tomcat的監(jiān)聽端口為81. 并啟動之. 5.測試圖1 中最左側(cè), 在其它網(wǎng)絡(luò)或手機4G, 訪問 http://你的公網(wǎng)IP或域名 即可訪問到你家庭網(wǎng)絡(luò)中啟動的nginx或tomcat服務(wù) -----------------end----------------- |
|