单网口群晖使用 Virtual Machine Manager 安装 Koolshare OpenWrt 作为旁路网关

之前在 Windows 10 上通过 Hyper-V 虚拟机安装 Koolshare OpenWrt。后来收了一个 X86 黑群晖 NAS,打算物尽其用、在黑群晖上装虚拟机跑 Koolshare OpenWrt 做旁路网关。
0x00
前往 Koolshare LEDE x64 固件下载页 - 虚拟机和写盘专用 中下载文件名包含 combined-squashfs 的固件,解压 gz 得到 img 文件。
0x01
群晖提供了一个虚拟机服务 Virtual Machine Manager(简称 VMM),系统中默认没有安装,需要去套件中心下载安装并启用。
在群晖的管理界面中打开 VMM,点击左侧「存储」进入存储管理。点击「新增」,选择用于安装和存储虚拟机的硬盘。如果你对启动速度有强迫症那就建议在 SSD 上创建存储空间。
创建好存储以后在「VMM - 映像 - 新增」中上传之前解压出来的 img 文件。设置名称、选择从 PC 上传。
上传成功以后可以看到上传的映像出现在列表中。
在「VMM - 网络」中设置虚拟交换机。我的设备只有一个千兆网口,所以 Default VM Network 默认就已经绑定在唯一的网口下面了。点击 Default VM Network,删除。然后点击「新增」开始创建新的虚拟交换机。
命名为 LAN 或者你喜欢的名字,在下面选择外部网络接口,点击「应用」创建虚拟交换机。
如果你拿 NAS 做主路由拨号、或者用多网口做软路由,那么每个网口都要逐一导入。
现在 VMM 已经配置完毕,可以创建虚拟机了。
0x02
在「VMM - 虚拟机」中,在「新增」按钮边上的下拉菜单(那个三角尖)中选择「导入」,在导入方式中选择「从硬盘映像导入」,并找到刚才上传的映像。
选择存储空间,如果你有对启动速度的强迫症的换就优先放在 SSD 里吧。
配置虚拟机规格,推荐 双核 + 1G 内存(不过 512MB 内存对 Koolshare OpenWrt 已经绰绰有余了),显卡就用默认配置就行了。
下一步是存储空间相关设置。通过硬盘映像导入的虚拟机强制使用 10G 硬盘,实际上是动态占用的,不用担心。
网络,我之前只创建了一个虚拟交换机,所以这里已经添加好了唯一的虚拟交换机。如果你是多网口 NAS 做软路由、那么还要通过「+」添加之前创建的多个虚拟交换机。
最后的设置里推荐先关闭开机启动,等调试成功以后再开启。启动方式使用「Legacy BIOS」。
设置虚拟机管理权限、「摘要」界面确认虚拟机信息无误以后,勾选「创建虚拟机后开启虚拟机」的选项,启动 Koolshare OpenWRT。如果你没有勾选这一选项,也可以在虚拟机创建完成后去虚拟机列表开机。
0x03
在「VMM - 虚拟机」中找到 Koolshare OpenWRT,点击「连接」进入 VNC。开机之后内核日志不再滚动(出现 br-lan: link is ready)以后按下回车,进入命令行。
使用 vi /etc/config/network 进入接口编辑,修改 LAN 口配置。比如我的群晖接在我的主路由下面,网段是 192.168.123.0/24,我的 NAS 分配了 192.168.123.200,于是我给 Koolshare OpenWrt 分配了 192.168.123.254,子网掩码保持 255.255.255.0 不变,网卡是 NAS 唯一的网口 eth0 保持不变)。
修改完以后使用 /etc/init.d/network restart 重启网卡以生效配置。当然你也可以用 reboot 达到相同的效果。如果不放心的话可以在重启网卡以后使用 ip addr show [eth 编号] 查看网卡下绑定的 IP。
如果没问题,就在浏览器中输入 LAN IP 地址,应该已经可以访问 Koolshare OpenWrt 了。
你如果不会使用终端的话,也可以直接将你的 NAS 与你的电脑的 RJ45 接口连接;Koolshare OpenWrt 默认是
192.168.1.1LAN IP 并默认启用 DHCP,在电脑上用浏览器访问192.168.1.1也可以进入 Koolshare OpenWrt 管理界面。然后修改 LAN 口 IP 到你上级主路由的网段下。
0x04
进入 Koolshare OpenWrt 管理界面之后删除 WAN 和 WAN6 的接口。因为是做旁路网关,所以没有必要使用到 WAN 口。
当然你也可以在之前在 VNC 中修改网络配置的时候把 WAN 和 WAN6 删掉。
WAN 口删除成功以后点击 LAN 口旁边的「编辑」,修改以下配置:
- 「IPv4 地址」和「IPv4 子网掩码」是我们之前在 VNC 中设置的
- 「IPv4 网关」设置成 NAS 上级主路由的 IP
- 「IPv4 广播」设置为你当前 CIDR 的 IP(如我的是
192.168.123.0) - 「使用自定义的 DNS 服务器」建议使用上级网关的 IP 作为 DNS
在页面下方的「DHCP 服务器」中选中「忽略此接口」。
修改好以后即可保存配置。此时这个虚拟机已经可以作为旁路网关使用了。你可以手动修改上级路由的 DHCP 中的网关配置、为所有设备自动下发网关、DNS;你也可以为需要的设备手动设置静态 IP、网关和 DNS。
当然大部分人都会在旁路由中通过 Koolshare 软件中心安装有效改善上网体验的插件,自己下载安装即可,嘿嘿。
当旁路网关已经可以正常使用以后,前往群晖管理页面,在「VMM - 虚拟机」中选中 OpenWrt 的虚拟机,点击「编辑」,在「编辑虚拟机」窗口中找到「其他」,将「自动启动」设置为「是」让虚拟机开机自动启动。