e06084's Blog

分享一个网络穿透软件-frp

Published at 2022-07-10 | Last Update 2022-07-10

frp是一个开源网络穿透(反向代理)软件,项目地址:https://github.com/fatedier/frp,是七牛云早期的一名工程师写的,star已经快6w了,真是🐮🐮🐮。

frp的解决的问题其实还蛮明确的,就是如何方便的访问多个分布在不同局域网内的服务。

  • 所谓局域网,就是原本网络不通,用户端直接不可以联通;
  • 怎么样算方便呢,就是用户端只要可以联网就能访问,不需要依赖其他;

一般会使用反向代理。反向代理,大家比较熟悉的是nginx,不过使用nginx的前提是需要有一个和局域网内服务网络连通的且带有公网ip的前置服务器。

所以,很容易看出来,frp和nginx的使用场景是不同的。nginx主要是把同一个局域网内的多个服务代理出去,而frp是将多个不同局域网的服务通过同一个公网机器代理出去。

理解这个,可以想象frp的应用场景应该挺多,比如物联网。对于个人,我觉得也有个很好的应用场景,就是把家里的个人PC机器代理出来,方便任何时候远程登录。我自己有时候就这么用,对linux用户还是挺方便的。搭建步骤也是比较简单,参考:https://gofrp.org/docs/examples/ssh/

当然,所有使用frp的前提,都需要有一个带有公网ip的服务器。所以,我觉得软件本身不算是面向个人用户的产品。