AIO Ep2. 路由器的前置准备 & 广域网访问内网 Zerotier 配置过程

 

本篇主要讲述路由器的配置过程.

本来家中的路由器是 Mercury D196G, 信号和速度方面还可以接受, 但是它的硬件配置决定了它根本不可能刷入任何第三方固件, 而且也不支持 Wi-Fi 6 和 160 MHz.

虽说 Hp Gen10+ 有四个网口, 但我也不打算使用软路由, 因为毕竟 All In One - One Boom All Boom.

我也没有什么全局出国的需求, 路由器的性能不需要太好, 而为了确保网络的稳定性, 还是专门准备一个支持 OpenWRT 的硬路由来拨号上网和当 AP, 正好顺便升级一下无线速度.

考虑到预算问题, 最后还是入手了评价不错的 Redmi AC2100, 可以刷入固件解锁 160 MHz Wi-Fi.(虽说没有 Wi-Fi 6 有点遗憾…)

刷的 OpenWRT 的 AP 版本固件, AP版固件就是多余的功能全都没有, 想要的功能可以自行下载添加, 自己加了个 Zerotier 插件用于外网访问内网.

Web 界面Web 界面

这款路由器的官方固件是有注入漏洞的, 可以比较方便地刷 breed 和其他第三方固件. 具体教程可以看这里~

接下来来简单叙述一下外网访问内网的方法.

我家用的是移动的家庭宽带, 现在是申请不到公网的 ipv4 地址了.

有几种从外网访问内网的方法.

  • ipv6公网 + DDNS

    优点: 访问速度快–缺点: 所有访问设备必须有 ipv6 连接, 兼容性差

  • P2P 穿透 (Hamachi, Zerotier or 蒲公英…)

    优点: 安全(需要加入网络), 全端口, 速度快–缺点: 需要客户端, 穿透失败走中转的时候较慢

  • 内网转发 (Frp, ngrok, 花生壳 or nat123…)

    优点: 无需客户端, 便捷普适, 兼容性强–缺点: 固定的端口, 速度受服务器限制, 需要有公网 ip 的服务器, 需要为流量支付费用

  • 其他第三方服务(如 QuickConnect)

    优点: 和系统深度集成, 使用方便, 免费(洗白后)–缺点: 速度慢, 只能用于群晖官方套件

考虑到我的需求只是让我的手机和电脑可以方便的访问我自己的服务器, 我家的网络又是全锥NAT (NAT类型介绍看这里) , 打洞还是可以成功的, 所以选择了 Quickconnect + Zerotier 的方案. Zerotier 可以让我的程序无感知地在外网直接访问内网 ip, Quickconnect 则是在手机上访问群晖相册比较方便, 不需要一直保持手机端 Zerotier 在线.

Zerotier 安装过程

  1. 在 OpenWRT 上安装 Zerotier.

    SSH 进路由器之后执行 opkg install luci-app-zerotier, 会自动安装 zerotier + luci 管理页面 + 依赖.

    p.s. 我的这个固件的动态链接库的版本好像不对… 直接安装完启动报错. 后来被迫去编译了静态链接库版本, 替换掉 /usr/bin/ 下原来的可执行文件就正常了.

  2. Zerotier 官网 注册账号, 创建网络, 获取网络 ID, 填写进 OpenWRT 路由中, 并勾选 Allow NAT Clients.

    截图截图

    截图截图

  3. 在官网找到路由器对应的客户端, 勾选 Auth? 框同意设备加入网络, 记录下 Managed IP 设置 Managed Routes.

    截图截图

    设置方法: 例如我的内网网段是 192.168.1.0/24, 我的路由器的 Managed IP 是 192.168.194.123, 那么就在 Destination 中填内网网段, (via) 中填路由器 Managed IP, 提交后如下图所示. 这样这个 Zerotier 网络中的所有设备访问 192.168.1.0/24 这个网段是都会自动通过我的路由器去访问, 在外网也是如此.

    截图截图

  4. 其他设备(手机, 电脑等) 下载 Zerotier 客户端并加入网络, 同理需要在官网登录账号后授权.

之后即可在内网和外网之间无缝切换, 在外网也能使用内网 IP 访问到服务器, 使用起来也很方便了.

本文采用 CC BY-NC-SA 4.0 许可协议发布.

作者: lyc8503, 文章链接: https://blog.lyc8503.net/post/2-router-preparation/
如果本文给你带来了帮助或让你觉得有趣, 可以考虑赞助我¬_¬