简单的说,内网穿透就是使用一台有公网 IP 的电脑 (SakuraFrp 将其称为 节点) 作为 “中间人” 来与没有公网 IP 的电脑建立连接并转发数据。
首先,我们假设 电脑 A
、电脑 D
和 穿透节点
都接入了互联网(绿色实线),但是只有 穿透节点
分配到了公网 IP,我们在这里用域名 idea-leaper-1.natfrp.cloud
替代。
假如小明想让其他人连接 电脑 A
上的游戏服务器,他在 电脑 A
上开启了 frpc,此时 frpc 就会通过互联网与穿透节点建立一个连接(紫色虚线),我们将这个连接称为 隧道。
Sakura Frp 节点会给每条 隧道 分配一个端口号,也就是所谓的 远程端口。这里我们以 30000
为例。
现在,李华就可以使用 电脑 D
通过互联网连接到 穿透节点:远程端口
了,也就是 idea-leaper-1.natfrp.cloud:30000
(蓝色实线)。
连接建立后,穿透节点
会通过 隧道 联系 frpc,要求 frpc 连接 本地IP:本地端口
(小明应该配置 127.0.0.1:10000
),frpc 尝试建立这个连接(红色虚线)
If you want to change selection, open document below and click on "Move attachment"
帮助文档 - Sakura FrpA:20000 的连接 如果没有公网 IP 呢? 由于 IPv4 地址的稀缺,国内三大运营商(电信、移动、联通)基本都不给家宽用户分配公网 IP,更不用说一些二线小运营商了。 这就导致上面的连接无法成功建立,因为 李华的路由器 想连接到 小明的路由器 就必须告诉互联网对方的公网 IP,但是现在他们都没有分配到公网 IP。这时,二者想建立连接就需要使用内网穿透或 UDP 打洞等技术了。 <span>什么是内网穿透 简单的说,内网穿透就是使用一台有公网 IP 的电脑 (SakuraFrp 将其称为 节点) 作为 “中间人” 来与没有公网 IP 的电脑建立连接并转发数据。 首先,我们假设 电脑 A、电脑 D 和 穿透节点 都接入了互联网(绿色实线),但是只有 穿透节点 分配到了公网 IP,我们在这里用域名 idea-leaper-1.natfrp.cloud 替代。 假如小明想让其他人连接 电脑 A 上的游戏服务器,他在 电脑 A 上开启了 frpc,此时 frpc 就会通过互联网与穿透节点建立一个连接(紫色虚线),我们将这个连接称为 隧道。 Sakura Frp 节点会给每条 隧道 分配一个端口号,也就是所谓的 远程端口。这里我们以 30000 为例。 现在,李华就可以使用 电脑 D 通过互联网连接到 穿透节点:远程端口 了,也就是 idea-leaper-1.natfrp.cloud:30000(蓝色实线)。 连接建立后,穿透节点 会通过 隧道 联系 frpc,要求 frpc 连接 本地IP:本地端口(小明应该配置 127.0.0.1:10000),frpc 尝试建立这个连接(红色虚线) 如果 frpc 不能成功连接到游戏服务器,就会出现 无法连接到本地服务 的报错。相反,如果连接成功,李华就成功建立了 电脑 D <-> 穿透节点 <-> 电脑 A (游戏服务器) 的一条连接 现在,电脑 D 向 电脑 A 发送数据时,就会先发送到 穿透节点,再由 穿透节点 转发给 frpc,最后转发给游戏服务器,反之同理(蓝色实线)。 由于 电 Summary
status | not read | | reprioritisations | |
---|
last reprioritisation on | | | suggested re-reading day | |
---|
started reading on | | | finished reading on | |
---|
Details