diff --git a/docs/nas-skill/20-externalnetworkaccess.md b/docs/nas-skill/20-externalnetworkaccess.md new file mode 100644 index 0000000..0acebd0 --- /dev/null +++ b/docs/nas-skill/20-externalnetworkaccess.md @@ -0,0 +1,41 @@ +--- +sidebar_position: 20 +--- + +# 如果在外网访问家里的 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 地址。 + +![简单网络拓扑图](img/externalnetworkaccess1.png) + +#### 技术: + +为了实现异地访问应运而生了各种技术,VPN、动态域名解析、端口映射、内网穿透等技术。 + +##### 1、VPN + +当网络一方拥有固定的公网 IP 时,使用该技术可以允许其他没有固定公网 ip 的网络设备,允许使用 VPN 连接到该网络,实现外网访问内网设备。(这里不做展开) + +##### 2、动态域名解析 DDNS + +当网络一方拥有随机的公网 IP 时,可以使用该技术将动态变化的 IPv4 地址和固定的域名绑定,访问固定的域名可以访问到相应的网络,亦可以使用上述的 VPN 技术使用外网访问内网设备。 +[DDNS-Go 教程](https://ecoo.top/docs/nas-skill/ddnsgo) + +##### 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 教程](https://ecoo.top/docs/nas-skill/frpc) diff --git a/docs/nas-skill/21-ddnsgo.md b/docs/nas-skill/21-ddnsgo.md new file mode 100644 index 0000000..21afe73 --- /dev/null +++ b/docs/nas-skill/21-ddnsgo.md @@ -0,0 +1,28 @@ +--- +sidebar_position: 21 +--- + +# DDNS-GO + +动态域名解析 + +## 安装(docker 版本) + +需要先安装 docker,没有安装的可以点击跳转[docker 安装使用教程](https://ecoo.top/docs/nas-skill/docker) + +```bash +#host模式, 同时支持IPv4/IPv6, Liunx系统推荐 +docker run -d --name ddns-go --restart=always --net=host jeessy/ddns-go +#桥接模式, 只支持IPv4, Mac/Windows系统推荐 +docker run -d --name ddns-go --restart=always -p 9876:9876 jeessy/ddns-go + +``` + +等待命令执行完毕,在浏览器中打开 http://主机 IP:9876 + +![ddnsgo](img/ddnsgo1.png) + +根据你的域名提供商进行相应的配置,注意,只有在你有公网 IP(IPv4/IPv6)时,配置的域名才能有效访问。 + +更多内容可以点击查看海思论坛帖子[域名动态解析 ddns-go 公网 IPv4 或 IPv6 地址 Docker 版](https://bbs.histb.com/d/979-yu-ming-dong-tai-jie-xi-ddns-gogong-wang-ipv4huo-ipv6di-zhi-dockerban) +后者点击查看[ddns-go 的 github 官网](https://github.com/jeessy2/ddns-go) diff --git a/docs/nas-skill/img/ddnsgo1.png b/docs/nas-skill/img/ddnsgo1.png new file mode 100644 index 0000000..1c0469b Binary files /dev/null and b/docs/nas-skill/img/ddnsgo1.png differ diff --git a/docs/nas-skill/img/externalnetworkaccess1.png b/docs/nas-skill/img/externalnetworkaccess1.png new file mode 100644 index 0000000..4ced0d7 Binary files /dev/null and b/docs/nas-skill/img/externalnetworkaccess1.png differ