FRP 内网穿透从 0 到 1 系列教程(一)

更新时间:6个月前

访问次数:43

详细介绍

前言: 内网穿透,是一个非常实用的技术,可以用于本地 Web 的远程访问,本地文件的远程访问,内网服务器的远程访问,远程桌面等等应用。围绕以上说的几点可以展开很多使用场景,例如小程序,微信公众号开发需要一个公网的 IP 并且可以非常方便的进行代码调试。再就是公司业务都在内网机器上,回家之后无法进行办公,就可以在公司的电脑上部署一个 Frp 客户端使得在家里也可以访问公司的内网机器。web 开发时,用户想看看你的修改方案,可以让客户看到你内网部署的项目,更加有效的进行沟通修改代码。而不需要上线之后才交付客户。

为什么要内网穿透

我们现在使用的 IP 都是 IPV4,即使从 0.0.0.0 到 255.255.255.255。将所有的 IP 分配使用也只有约为 42.9 亿个 IP 可以使用,这显然是不够用的。所以公网的 IP 是稀有资源,于是出现了外网和内网。在一个范围内组成一个局域网,这个局域网共用一个公网 IP 与外网进行通信。

前置知识

内网,外网,互联网,局域网

内网就是局域网,外网就是互联网。

我们可以连接查看到的机器

下图演示的是我们只能访问到同一个局域网的机器,和暴露在外网的机器。


以上绿色线所连接的局域网 A 和局域网 B 在同一个局域网中,则可以相互通信。红线连接的局域网 B 和局域网 C 则无法通信。因为他们在不同的局域网中,所以无法进行通信。

什么是内网穿透


由于局域网 C 不能直接访问局域网 B 的机器。利用内网穿透在局域网 B 的机器上安装一个 Frp 的客户端,局域网 C 的机器通过访问在公网的 Frp 服务器来访问局域网 B 的机器。

这样实际上就是把局域网 B 的机器成功暴露在公网上,实现所有内网机器都可以访问局域网 B 的内容。

总结

刚开始介绍了不同局域网的两台机器是不能互通的。于是我们通过在公网的机器来实现相互通信。实际上就是中间人的意思。

通信过程如下

  • A: 喊 B 拿一个苹果

  • 中间人:对 B 说 A 喊你拿一个苹果。

  • B: 回应,这是你要的苹果

  • 中间人:对 A 说,这是 B 给你的苹果