介紹一款內(nèi)網(wǎng)穿透工具frp

內(nèi)網(wǎng)穿透

在互聯(lián)網(wǎng)中,局域網(wǎng)中的機器是沒法在外網(wǎng)中訪問的。例如家庭網(wǎng)絡(luò)中的機器在外網(wǎng)中是訪問不到的,為了達到能夠訪問局域網(wǎng)中的機器,就需要內(nèi)網(wǎng)穿透技術(shù)。常見的有花生殼、ngrok、frp,這里我們詳細介紹frp。

frp

frp 是一個專注于內(nèi)網(wǎng)穿透的高性能的反向代理應(yīng)用,支持 TCP、UDP、HTTP、HTTPS 等多種協(xié)議。配置簡單,方便使用。

frp分server端和client端,在發(fā)布的版本中,server端和client端都在同一個release 包中,我們可以根據(jù)自己的系統(tǒng)下載不同的release 發(fā)布版本。下載地址:``` https://github.com/fatedier/frp/releases ```。一下我們以linux系統(tǒng)為例做介紹,下載完成后解壓下載的壓縮包,可以看到其中的分別有frpc,frpc.ini,frps,frps.ini文件,其中frpc.ini,frps.ini分別是客戶端合服務(wù)端的配置文件,frpc、frps分別是客戶端和服務(wù)端的可執(zhí)行程序。

使用frp作為內(nèi)網(wǎng)穿透工具,需要有一臺獨立ip的機器作為外網(wǎng)服務(wù)器,通過服務(wù)器穿透到內(nèi)網(wǎng)部署的服務(wù)。外網(wǎng)服務(wù)器可以通過阿里云等云服務(wù)器購買。在這里可以購買租便宜的,節(jié)省成本。本身服務(wù)器只是作為一個中間服轉(zhuǎn)發(fā)數(shù)據(jù),不會消耗太多的性能。我們可以在家里弄一臺高配的電腦作為內(nèi)網(wǎng)服務(wù)器,然后申請一臺云服務(wù)器,通過frp實現(xiàn)內(nèi)網(wǎng)穿透,變相的提升了云服務(wù)器的性能,節(jié)省成本。

http 訪問

服務(wù)端配置

```

[common]

bind_port = 7000

vhost_http_port = 8080

```

啟動frp服務(wù)器:./frps -c frps.ini

客戶端配置

```

[web]

type = http

local_port = 80

custom_domains = test.example.com

```

啟動frp客戶端,./frpc -c frpc.ini


服務(wù)端和客戶端啟動之后,我們就可以在外網(wǎng)訪問內(nèi)網(wǎng)部署的服務(wù)器了

瀏覽其中輸入 test.example.com:8080 之后回車,可以看到正常的顯示了內(nèi)網(wǎng)服務(wù)器的內(nèi)網(wǎng)。

SVN服務(wù)器

我們在開發(fā)過程中匯總資源代碼管理的需求,而svn服務(wù)器在內(nèi)網(wǎng)中,我沒也可以使用內(nèi)網(wǎng)穿透技術(shù)實現(xiàn)svn外網(wǎng)的訪問。下面先介紹一下svn服務(wù)器的搭建,以mac os為例

1、創(chuàng)建倉庫

svnadmin /Users/Mac/svn/config

2、修改配置文件

在創(chuàng)建好的倉庫config下面可以看到conf目錄,此目錄中就是倉庫的配置文件,下面我們修改配置文件,一遍我們的倉庫可以被正確的訪問

修改svnserve.conf文件如下

修改passwd文件

這里的用戶名和密碼都是jiangjiang

接著修改authz文件

3、啟動svn服務(wù)器

svnserve -d -r /Users/Mac/svn/config

沒有報錯說明啟動成功

4、初始化倉庫

svn import /Users/Mac/svn/config/testconfig svn://127.0.0.1:3690/testconfig --username=jiangjing -m "init testconfig"

沒有錯誤說明創(chuàng)建成功

此時我們就可以通過svn co?svn://127.0.0.1/testconfig 來訪問我們的testconfig倉庫了

svn 服務(wù)器搭建完畢之后,就可以修改frpc.ini配置文件來支持svn的內(nèi)網(wǎng)穿透,修改配置文件如下:

[svn]

type = tcp

local_port = 3690

local_ip = 127.0.0.1

remote_port = 3690

custom_domains = svn.example.com

啟動客戶端

./frpc -c frpc.ini 沒有報錯,說明啟動成功

啟動成功之后我們就可以通過命令:svn co svn://svn.example.com/testconfig 在外網(wǎng)訪問我們內(nèi)網(wǎng)的svn倉庫了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容