Sipeed NanoKVM:20 美元、USB-C 供电、内置 TF 卡槽的 IP KVM 模块
本文的 NanoKVM 样品由 Sipeed 友情赞助。
TL;DR
- 产品介绍
- Wiki 手册
- Issues 与固件下载
- ATX-B Board PCI 挡板
- 定价与功能
- NanoKVM Lite: 20 美元,提供基本的 Web VNC 和 IPMI 功能
- NanoKVM Full: 40 美元,ATX 电源控制模块 + TF 卡 + OLED 显示屏
基本介绍
通俗的说,IP KVM 是基于外部硬件的(带外管理,OOB)、独立于操作系统的远程桌面方案,可以透过网络进行 BIOS 管理、远程桌面(HTML5/Java/VNC)、电源管理等操作,就像是在现场操作一样。你甚至可以挂载 ISO 文件,远程重装系统。
IP KVM 大概有以下几种类型:
- 独立的 IP KVM 矩阵:很贵很贵,需要单独购买 Adapter 和 Switch
- 支持 Intel vPro 功能的商用主板(大部分 ThinkPad 和 Dell Precision)的 Intel AMT 功能
- 集成在服务器主板的 BMC 芯片中:如 Supermicro Intelligent Managment、Dell iDRAC 和 HPE iLO
集成了 BMC 的主板价格通常数倍于家用产品;对于家用主板,Intel AMT 如今也 discontinued 了。至于向日葵控控,其依赖于中性化的云平台,且需要 SaaS 订阅。基于 Raspberry Pi 的 PiKVM 看着不错,但树莓派硬件本身已经逐渐背离了其“人人买得起的计算机”的初衷,价格逐年上涨,逼近 J1900、N100 等低功耗的 x86 平台。
NanoKVM 是 Sipeed 基于自家 LicheeRV Nano 开发版的 IP KVM 产品,对标 PiKVM,以 20 美元的价格提供基本的 IPMI 功能。除此之外,还内置 TF 卡槽,可以提供 ISO 挂载。非常适合低成本 Homelab 改造。
![NanoKVM Lite vs NanoKVM Full vs PiKVM](/2024/07/09/sipeed-nanokvm-review/comparisons.webp)
根据 8 月 5 日的官方 Twitter,NanoKVM 还提供了 PCIe 版本,可以很方便的安装在主板的 PCIe 插槽上,价格会略贵 10 美元。
![NanoKVM PCIe 版本](/2024/07/09/sipeed-nanokvm-review/nanokvm-pcie.webp)
产品开箱
NanoKVM Full 采用纸盒包装,包含:
- NanoKVM 本体
- ATX-B 电源板
- 2x USB-A 转 USB-C 数据线
- 一组(12根)杜邦线:用于连接 ATX-B 电源板与主板
![NanoKVM 开箱:包装正面](/2024/07/09/sipeed-nanokvm-review/unbox-1.webp)
![NanoKVM 开箱:包装内部](/2024/07/09/sipeed-nanokvm-review/unbox-2.webp)
![NanoKVM 开箱:包装内物品](/2024/07/09/sipeed-nanokvm-review/unbox-3.webp)
![NanoKVM 开箱:NanoKVM 模块](/2024/07/09/sipeed-nanokvm-review/unbox-4.webp)
![NanoKVM 开箱:ATX-B 电源板](/2024/07/09/sipeed-nanokvm-review/unbox-5.webp)
Tailscale
新版本的固件新增了 WireGuard 和 Tailscale 支持,从页面菜单栏即可点击进去 Tailscale 配置页,可一键安装。
我这台固件似乎有问题,tailscaled 无法启用。希望后续版本能够修复,最好提供“恢复出厂设置”功能。
用户体验
初始配置很方便,仅需使用 USB 和 HDMI 线连接到受管理的设备,再接入网线即可。NanoKVM 将伪装为 HID 设备(键盘和鼠标),并捕获 HDMI 信号,输出为 M-JPEG 流。OLED 屏幕上会显示当前 IP 地址、HDMI 输入信号以及 CPU 使用率。辅助供电口用于连接外置的 USB 电源,这样当设备主板切断了 USB 供电时,NanoKVM 仍然可以正常工作。
![NanoKVM 机身 OLED 屏工作状态](/2024/07/09/sipeed-nanokvm-review/screen.webp)
![NanoKVM Web UI](/2024/07/09/sipeed-nanokvm-review/webui.webp)
Web UI 提供了语言切换(简体中文/英语)、固件 OTA 更新和串流参数设置。支持的分辨率不多,只能选择 640x480、800x600、1280x720 和 1920x1080 四种。遗憾的是,Web UI 暂时不支持上传 ISO 镜像,或进行文件管理。
![NanoKVM Web UI](/2024/07/09/sipeed-nanokvm-review/webui-scrollbar.webp)
当浏览器窗口小于串流分辨率时,会出现滚动条,而不会自动缩放。当窗口大于串流分辨率时,也不会自动缩放。
![NanoKVM Web UI Terminal](/2024/07/09/sipeed-nanokvm-review/webui-terminal.webp)
Terminal 能以 root 权限访问到 NanoKVM 的系统,可以看到有一个通过 USB 端口虚拟的网口,连接到受管理设备。在受管理设备上,可以看到一个驱动无法正常加载的 RNDIS 设备。需要根据 Wiki 中的方法手动安装驱动。
![NanoKVM RNDIS](/2024/07/09/sipeed-nanokvm-review/rndis.webp)
视频编码器似乎是始终运行的,所以登录后画面瞬间就加载出来。切换分辨率和画质时,需要几百毫秒时间生效,画面会闪烁一次。
整体来说串流体验很不错,延迟较低,和基于 TCP 的 RDP 差别不大,但略逊色于基于 UDP 的内网 RDP 使用体验。是的,在 2024 年,微软仍未为 macOS/iPadOS 平台的 Microsoft Remote Desktop 客户端添加 UDP 支持。相比于 Dell iDRAC 和 Supermicro 自带的 HTML5 或 Java Applet,NanoKVM 的用户体验以及串流性能明显更好。
至于串流质量,即使图像质量设置为 95%,颜色仍然略有些发灰,应该是编码的色彩较少。内网下串流帧率很稳定,通过 NanoKVM 在 1080P@60 分辨率下观看视频,十分流畅,没有出现掉帧、卡顿等现象。带宽消耗从 4Mbps-70Mbps 不等,取决于分辨率、画质以及画面变化。编码器应该是可变码率,类似监控摄像头,在画面变化较少时,带宽消耗较低。
使用一段时间后,NanoKVM 本体背部的散热片有一些热量,但不会烫手,串流性能也未见下降。
总结和建议
- Shut up and take my money.jpg
- 这是市场上最便宜的 IP KVM 产品,没有之一。购买成本远低于 PiKVM,且体积和散热具备显著优势。
- 目前 NanoKVM 无法使用 ipmitool 进行操作,期待后续固件中能够支持 IPMI 和 Redfish 协议。
- 频繁切换串流设置时,可能导致编码服务炸掉。需要根据 Wiki 中的方法进行恢复。
- 默认 Web UI 账号为
admin/admin
,SSH 账号为root/root
。请务必修改默认密码,并将设备隔离在管理 VLAN 中。 - 目前串流方案基于 M-JPEG,期待后续 h264 的表现。
- API 接口使用了 JWT 鉴权,有效期为 6 个月。即使 NanoKVM 本体重启或更换浏览器,也不会导致 Token 失效。考虑到 NanoKVM 采用 HTTP 明文通讯,存在一定风险。建议加入 session key 轮换机制,或提供自签名证书的 HTTPS 服务(并允许用户自行替换)。
- 中国公司设计、制造的闭源硬件不可避免的会在海外市场遭到质疑(1 和 2)。根据 Sipeed 官方 Twitter,NanoKVM 未来将会开源固件,并移植 PiKVM 固件。这算是对阴谋论的最好回应了。截至 2024 年 8 月 1 日,PiKVM 固件移植已经基本完成。
- NanoKVM Full 预置了 TF 卡,如果能出厂预装 Zerotier、WireGuard 或 Tailscale 软件包,将会是很不错的独家 feature。截至 2024 年 8 月 1 日,NanoKVM 已经集成 Tailscale 和 WireGuard。
- 在 macOS 上使用触摸板滚动时,在被控端的 Windows 系统中,滚动速度过快。
许愿清单
- PiKVM 固件移植
- Tailscale & WireGuard 集成
- IPv6 支持
- IPMI 和 Redfish 支持
- 恢复出厂设置
- …