很多時候會用到處在內網的電腦或者虛擬機,需要將內網上的服務發佈出去,讓外部訪問,又或者需要發佈的服務端口防火牆沒打開,外部也訪問不了,這時候可以用frp,將內網的ip和端口映射到一個外部可以訪問的外網ip和端口上。
frp是Apache的開源項目,下載地址:https://github.com/fatedier/frp/releases,可以選擇Windows或Linux等系統的,這裏講Windows的。
本人下載的是 frp_0.20.0_linux_386.tar.gz(linux) 和 frp_0.20.0_windows_amd64.zip(windows)
linux:
1.第一步解壓該文件
tar -zxvf frp_0.20.0_linux_386.tar.gz下載
2.找到frpc.ini 文件
[common]
server_addr =1227.222.2212.1222 //服務器IP地址
server_port =7000 //服務器端口號
token =control
[YSB-Work-40002]
type =tcp
local_ip = //本地ip地址 可以是虛擬機的 但最好固定ip地址
local_port = //tomcat service.xml中的訪問端口 默認是8080 根據實際情況
remote_port = //這是服務器新增的訪問端口
找到文件所放的目錄 我放在opc/frp/frp_0.20.0_linux_386 下
進到該目錄下 運行
最好顯示一大串藍色的字符 且有success 則表示成功了
最終通過訪問 http://server_address:remote_port就行 當然後面要加具體項目的話 你可以放再tomcat目錄下的webapsp下面 然後重啓tomcat
如果是windows 下的話 其實也差不多
1.將frp_0.20.0_windows_amd64.zip解壓
然後找到frpc.ini 配置文件
[common]
server_addr =121417.292.2212.222 //服務器ip地址
server_port =7000 //服務器端口號
log_file=./frpc.log //照抄
log_level=info//照抄
log_max_day=3//照抄
token =control//照抄
[YSB-Work-40002]//照抄
privilege_mode=true//照抄
type =tcp//照抄
local_ip = //本地計算機IP地址 (不知道可以cmd ipconfig/all)進行查找
local_port =10012(這個是tomcat server.xml中的端口號 默認是8080 我改成了10012 自定義)
use_encryption=true//照抄
use_gzip=false//照抄
remote_port =52002//這個是服務器新開的端口號 注意 端口號是唯一的 如果你之前開了這個端口號那麼就不能再用這個端口號了
然後在寫一個bat文件 這樣的目的就不用每次敲路徑了
一下就是bat文件內容 這根據自己的目錄路徑 修改下即可
cd D:\soft\frp\frp_0.20.0_windows_amd64
start /b frpc -c frpc.ini
然後雙擊這個bat文件就可重啓
再然後就是輸入:服務器ip地址+renmote_port端口好就可以了