跳到主要内容

在外网访问家里的 Hinas

常识科普

1、为什么存在外网(公网)、内网的区别?

背景:

中国互联网络信息中心(CNNIC)发布的第 51 次《中国互联网络发展状况统计报告》显示,截至 2023 年 12 月,我国网民规模达 10.67 亿。已知截至 2023 年 12 月我国 IPv4 地址数量为 39219 万个(3.9219 亿个),则人均 IPv4 数量约为:3.9219 亿 ÷10.67 亿 ≈0.368 个。
由于公网 IPv4 严重不足,目前国内的公网使用现状就是多人共用一个 IPv4。为了解决这个困境,使用了内网外网来区分 IPv4 地址,并推出 nat 技术来进行地址转换。常见的内网 IPv4 地址为 192.168.0.1 等等,这就是每个人家里都有的 IPv4 地址。 为了解决 IP 地址不足的情况,推出了 IPv6,地址数量更多,更好的满足需求。 简单网络拓扑图

技术:

为了实现异地访问应运而生了各种技术,VPN、动态域名解析、端口映射、内网穿透等技术。

1、VPN

当网络一方拥有固定的公网 IP 时,使用该技术可以允许其他没有固定公网 ip 的网络设备,允许使用 VPN 连接到该网络,实现外网访问内网设备。(这里不做展开)

2、动态域名解析 DDNS

当网络一方拥有随机的公网 IP 时,可以使用该技术将动态变化的 IPv4 地址和固定的域名绑定,访问固定的域名可以访问到相应的网络,亦可以使用上述的 VPN 技术使用外网访问内网设备。
DDNS-Go 教程

3、端口映射

在上述两种情况的前提下,可以搭配端口映射,将想要开放公网访问的服务开放到公网,允许公网设备访问该服务,如百度等网站服务。
端口映射可在光猫实现单层端口映射,如果光猫改成了桥接后可以在路由器上实现单层端口映射。亦或者可以配置多层端口映射,即光猫和路由器同时配置。
关键点在于,配置 tcp/udp 端口,指定外网访问端口,内网服务端口和内网服务的主机 IP。

4、内网穿透 frp

frpc,是 frp client 的缩写,即 frp 客服端。既然有客户端,那么就会有所谓的服务端 frps(frp server)。
frp 实现内网穿透的原理,可以简单理解为中间人(frps)传递消息。
开通 frpc 服务后,frpc 会自动连接到 frps。
每次你要访问 frpc(你的 hinas)时,因为 frps 是处于公网上的,你可以随时访问到。因此 frps 会将你的信息传递给已经建立好连接的 frpc 上,并将从 frpc 接收的信息转发给你,从而实现内网穿透。
frpc 教程