Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
sidebar_position: 2
---

# Radxa Linkr
# 灵控 KVM

<DocCardList />
Original file line number Diff line number Diff line change
Expand Up @@ -4,24 +4,24 @@ sidebar_position: 5

# 访问令牌

瑞莎灵控(Radxa Linkr提供 **访问令牌(Access Token)** 功能,用于在无需 Web 登录会话的情况下,通过 API 以编程方式访问灵控的部分能力。适用于自动化脚本、监控集成、第三方工具调用等场景。
Linkr KVM 提供 **访问令牌(Access Token)** 功能,用于在无需 Web 登录会话的情况下,通过 API 以编程方式访问 KVM 的部分能力。适用于自动化脚本、监控集成、第三方工具调用等场景。

访问令牌等同于 API Key,创建后可用于调用设备的公开 API 接口。

## 功能概述

| 能力 | 说明 |
| --- | --- |
| Web 界面管理 | 在系统设置中创建、查看名称、删除访问令牌 |
| 密码验证 | 生成新令牌时需输入灵控登录密码,防止未授权创建 |
| 一次性展示 | 令牌明文仅在创建成功时显示一次,关闭弹窗后无法再次查看 |
| 持久保存 | 令牌保存在设备本地配置中,重启后仍然有效,直至手动删除 |
| 能力 | 说明 |
| ------------ | ------------------------------------------------------ |
| Web 界面管理 | 在系统设置中创建、查看名称、删除访问令牌 |
| 密码验证 | 生成新令牌时需输入 KVM 登录密码,防止未授权创建 |
| 一次性展示 | 令牌明文仅在创建成功时显示一次,关闭弹窗后无法再次查看 |
| 持久保存 | 令牌保存在设备本地配置中,重启后仍然有效,直至手动删除 |

## 适用场景

- **远程截图**:定时获取灵控当前画面快照,用于监控或巡检
- **远程截图**:定时获取 KVM 当前画面快照,用于监控或巡检
- **远程控制**:通过 API 发送控制指令(键盘、鼠标等)
- **自动化集成**:将灵控接入 CI/CD、运维平台或自定义脚本
- **自动化集成**:将 KVM 接入 CI/CD、运维平台或自定义脚本

:::caution 安全提示
访问令牌拥有与创建者相当的 API 访问权限。请妥善保管,切勿提交到公开代码仓库或分享给不可信方。若令牌泄露,请立即在管理界面删除并重新生成。
Expand All @@ -31,7 +31,7 @@ sidebar_position: 5

### 1. 进入系统设置

1. 打开灵控管理 Web 界面并登录。
1. 打开 KVM 管理 Web 界面并登录。
2. 点击左侧边栏的 **系统设置**(设置图标)。
3. 找到 **访问令牌** 折叠面板。

Expand All @@ -43,7 +43,7 @@ sidebar_position: 5
- 必须以字母或数字开头,不能以 `-` 开头或结尾
- 最长 20 个字符
- 示例:`monitor-script`、`ci-deploy-01`
3. 填写 **用户密码**(必填):输入当前灵控管理账号的登录密码,用于身份验证。
3. 填写 **用户密码**(必填):输入当前 KVM 管理账号的登录密码,用于身份验证。
4. 点击绿色 **生成** 按钮。

### 3. 保存令牌
Expand All @@ -70,7 +70,7 @@ sidebar_position: 5

在 HTTP 请求头中携带访问令牌:

```
```http
Authorization: token <你的访问令牌>
```

Expand All @@ -82,16 +82,16 @@ curl -H "Authorization: token radxa_linkr_xxxxxxxx" \
--output snapshot.jpg
```

请将 `<kvm-ip>` 替换为灵控的实际 IP 地址或域名(本地局域网 IP、Tailscale IP 等均可)。
请将 `<kvm-ip>` 替换为 KVM 的实际 IP 地址或域名(本地局域网 IP、Tailscale IP 等均可)。

### 可用公开 API

当前支持通过访问令牌认证的公开接口如下:

| 接口 | 方法 | 说明 |
| --- | --- | --- |
| `/api/public/snapshot` | GET | 获取当前画面 JPEG 截图 |
| `/api/public/control` | POST | 发送远程控制指令(请求体为控制协议数据) |
| 接口 | 方法 | 说明 |
| ---------------------- | ---- | ---------------------------------------- |
| `/api/public/snapshot` | GET | 获取当前画面 JPEG 截图 |
| `/api/public/control` | POST | 发送远程控制指令(请求体为控制协议数据) |

#### 获取截图示例

Expand All @@ -113,7 +113,7 @@ curl -X POST \
"https://192.168.1.100/api/public/control"
```

控制数据的格式取决于灵控控制协议,具体字段请参考 API 文档或集成 SDK。
控制数据的格式取决于 KVM 控制协议,具体字段请参考 API 文档或集成 SDK。

### 认证失败

Expand All @@ -122,7 +122,7 @@ curl -X POST \
- `Authorization` 头格式是否为 `token <令牌>`(注意 `token` 与令牌之间有一个空格)
- 令牌是否完整、未被截断
- 该令牌是否已被删除
- 灵控设备 IP 或网络是否可达
- KVM 设备 IP 或网络是否可达

## 令牌格式说明

Expand All @@ -137,7 +137,7 @@ curl -X POST \
1. **最小权限原则**:为不同用途创建不同名称的令牌,便于单独吊销。
2. **定期轮换**:建议定期删除旧令牌并重新生成,尤其在人员变动或脚本迁移后。
3. **安全存储**:使用环境变量或密钥管理工具存放令牌,不要硬编码在源码中。
4. **HTTPS 访问**:生产环境建议通过 HTTPS 访问灵控 API,避免令牌在传输中被窃听。
4. **HTTPS 访问**:生产环境建议通过 HTTPS 访问 KVM API,避免令牌在传输中被窃听。
5. **及时吊销**:发现泄露或不再使用时,立即在系统设置中删除对应令牌。

## 常见问题
Expand All @@ -152,7 +152,7 @@ curl -X POST \

### 提示密码错误

生成令牌时输入的用户密码与灵控登录密码不一致。请使用当前管理账号的正确密码。
生成令牌时输入的用户密码与 KVM 登录密码不一致。请使用当前管理账号的正确密码。

### 提示名称已被占用

Expand All @@ -165,4 +165,3 @@ curl -X POST \
### 删除令牌后脚本仍报错 403

删除操作立即生效。请在脚本或环境中更新为新令牌,或重新生成并配置。

Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
sidebar_position: 6
---

# 高级使用指南
# 高级使用指南
Original file line number Diff line number Diff line change
Expand Up @@ -4,30 +4,30 @@ sidebar_position: 1

# Tailscale 远程访问

瑞莎灵控(Radxa Linkr内置了 [Tailscale](https://tailscale.com/) 客户端,可将设备加入你的 Tailscale 虚拟专用网络(VPN),在任意地点通过加密隧道安全访问灵控管理界面,无需公网 IP 或手动配置端口转发。
Linkr KVM 内置了 [Tailscale](https://tailscale.com/) 客户端,可将设备加入你的 Tailscale 虚拟专用网络(VPN),在任意地点通过加密隧道安全访问 KVM 管理界面,无需公网 IP 或手动配置端口转发。

Tailscale 基于 WireGuard 协议,由 Tailscale 协调服务器负责节点发现与密钥交换,设备之间建立点对点加密连接。

## 功能概述

| 能力 | 说明 |
| --- | --- |
| 内置客户端 | 固件预装 `tailscale` / `tailscaled` 二进制,无需额外安装 |
| Web 界面管理 | 在灵控管理界面中启用、登录、解绑 Tailscale 账号 |
| 开机自启 | 启用后配置持久保存,设备重启后自动启动 `tailscaled` |
| 安全组网 | 流量经 WireGuard 加密,仅同一 Tailnet 内的设备可互通 |
| 能力 | 说明 |
| ------------ | -------------------------------------------------------- |
| 内置客户端 | 固件预装 `tailscale` / `tailscaled` 二进制,无需额外安装 |
| Web 界面管理 | 在 KVM 管理界面中启用、登录、解绑 Tailscale 账号 |
| 开机自启 | 启用后配置持久保存,设备重启后自动启动 `tailscaled` |
| 安全组网 | 流量经 WireGuard 加密,仅同一 Tailnet 内的设备可互通 |

## 使用前准备

1. **Tailscale 账号**:在 [tailscale.com](https://tailscale.com/) 注册个人或团队账号(免费套餐即可满足个人使用)。
2. **网络连接**:灵控设备需能访问互联网(RJ45有线或Wi-Fi均可),以便与 Tailscale 协调服务器通信。
2. **网络连接**:KVM 设备需能访问互联网(RJ45有线或Wi-Fi均可),以便与 Tailscale 协调服务器通信。
3. **浏览器**:绑定账号时需在浏览器中完成 Tailscale 授权,请确保管理端浏览器允许弹出窗口。

## 操作步骤

### 1. 进入设置页面

1. 打开灵控管理 Web 界面并登录。
1. 打开 KVM 管理 Web 界面并登录。
2. 在左侧边栏进入 **系统** → **高级设置**。
3. 找到 **Tailscale** 配置项。

Expand All @@ -53,25 +53,24 @@ Tailscale 基于 WireGuard 协议,由 Tailscale 协调服务器负责节点发

![img](/img/linkr/tailscale-3.png)


### 4. 通过 Tailscale 访问灵控
### 4. 通过 Tailscale 访问 KVM

绑定成功后,可在 [Tailscale 管理后台](https://login.tailscale.com/admin/machines) 查看设备分配的 Tailscale IP(通常为 `100.x.x.x` 网段)。

在同一 Tailnet 内的任意设备上,使用以下地址访问灵控
在同一 Tailnet 内的任意设备上,使用以下地址访问 KVM

```
```text
https://<设备 Tailscale IP>
```

也可使用 Tailscale MagicDNS 主机名(若已在 Tailnet 中启用):

```
```text
https://<设备主机名>.<你的-tailnet>.ts.net
```

:::tip 提示
通过 Tailscale 访问时,仍需使用灵控的本地登录凭据(用户名与密码),Tailscale 仅提供网络层连通性,不替代灵控的身份认证
通过 Tailscale 访问时,仍需使用 KVM 的本地登录凭据(用户名与密码),Tailscale 仅提供网络层连通性,不替代 KVM 的身份认证
:::

### 5. 解绑账号
Expand All @@ -84,12 +83,12 @@ https://<设备主机名>.<你的-tailnet>.ts.net

## 界面状态说明

| 状态 | 含义 |
| --- | --- |
| 开关关闭 | Tailscale 功能未启用,`tailscaled` 未运行 |
| 开关开启,未绑定 | 服务已启动,等待绑定 Tailscale 账号 |
| 状态 | 含义 |
| ---------------- | ------------------------------------------------ |
| 开关关闭 | Tailscale 功能未启用,`tailscaled` 未运行 |
| 开关开启,未绑定 | 服务已启动,等待绑定 Tailscale 账号 |
| 开关开启,已绑定 | 设备已加入 Tailnet,可通过 Tailscale IP 远程访问 |
| 版本号 | 显示当前固件内置的 Tailscale 客户端版本 |
| 版本号 | 显示当前固件内置的 Tailscale 客户端版本 |

## 技术说明

Expand All @@ -99,21 +98,21 @@ Tailscale 客户端以内置二进制形式打包进固件:

### 与本地访问的关系

启用 Tailscale 不会影响灵控的本地网络访问方式。设备仍可通过局域网 IP、Wi-Fi 或 USB 网络等方式访问,Tailscale 作为额外的远程访问通道叠加使用。
启用 Tailscale 不会影响 KVM 的本地网络访问方式。设备仍可通过局域网 IP、Wi-Fi 或 USB 网络等方式访问,Tailscale 作为额外的远程访问通道叠加使用。

## 常见问题

### 绑定失败或长时间无响应

- 确认灵控设备已连接互联网
- 确认 KVM 设备已连接互联网
- 检查浏览器是否拦截了弹出窗口。
- 确认 Tailscale 协调服务器(`controlplane.tailscale.com`)未被防火墙阻断。
- 尝试关闭后重新启用 Tailscale,再次绑定。

### 启用后无法通过 Tailscale IP 访问

- 在 Tailscale 管理后台确认设备在线(Online)。
- 确认访问端与灵控在同一 Tailnet 内。
- 确认访问端与 KVM 在同一 Tailnet 内。
- 检查访问端 Tailscale 客户端是否已连接。
- 确认使用的是 `https://` 协议及正确的 Tailscale IP。

Expand All @@ -130,4 +129,4 @@ Tailscale 客户端以内置二进制形式打包进固件:

- [Tailscale 官方文档](https://tailscale.com/kb/)
- [Tailscale 管理后台](https://login.tailscale.com/admin/machines)
- [WireGuard 协议](https://www.wireguard.com/)
- [WireGuard 协议](https://www.wireguard.com/)
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ sidebar_position: 2

# Wake on LAN 设备唤醒

瑞莎灵控(Radxa Linkr支持 **Wake on LAN(WOL,网络唤醒)** 功能。当远端电脑处于关机或休眠状态时,可通过灵控向其网卡发送 Magic Packet(魔术包),远程唤醒目标设备,无需到现场按电源键。
Linkr KVM 支持 **Wake on LAN(WOL,网络唤醒)** 功能。当远端电脑处于关机或休眠状态时,可通过 KVM 向其网卡发送 Magic Packet(魔术包),远程唤醒目标设备,无需到现场按电源键。

灵控与目标电脑通常通过网线或交换机处于同一局域网内;发送唤醒包后,目标机器收到符合其 MAC 地址的广播包即可启动。
KVM 与目标电脑通常通过网线或交换机处于同一局域网内;发送唤醒包后,目标机器收到符合其 MAC 地址的广播包即可启动。

## 功能概述

Expand All @@ -18,7 +18,7 @@ sidebar_position: 2

## 使用前准备

在通过灵控唤醒目标电脑前,请确认目标机器已正确配置 WOL:
在通过 KVM 唤醒目标电脑前,请确认目标机器已正确配置 WOL:

### 1. 在 BIOS/UEFI 中启用 Wake on LAN

Expand Down Expand Up @@ -49,8 +49,8 @@ sudo ethtool -s eth0 wol g

### 3. 网络连接要求

- 目标电脑关机后,**有线网卡**需保持与网络的物理连接(接网线、交换机或灵控所在网段)。
- 灵控与目标电脑应在**同一二层广播域**(同一局域网或 VLAN)内,唤醒包以 UDP 广播方式发送。
- 目标电脑关机后,**有线网卡**需保持与网络的物理连接(接网线、交换机或 KVM 所在网段)。
- KVM 与目标电脑应在**同一二层广播域**(同一局域网或 VLAN)内,唤醒包以 UDP 广播方式发送。
- 无线网卡对 WOL 支持普遍较差,建议使用有线网口对应的 MAC 地址。

### 4. 获取目标 MAC 地址
Expand All @@ -61,13 +61,13 @@ sudo ethtool -s eth0 wol g
- Linux:`ip link show`
- macOS:`ifconfig`

记下用于连接灵控所在局域网的那块网卡的 MAC 地址。
记下用于连接 KVM 所在局域网的那块网卡的 MAC 地址。

## 操作步骤

### 1. 进入高级设置

1. 打开灵控管理 Web 界面并登录。
1. 打开 KVM 管理 Web 界面并登录。
2. 点击左侧边栏底部的 **高级设置**(齿轮图标)。
3. 在页面中找到 **设备唤醒** 折叠面板并展开。

Expand All @@ -93,19 +93,19 @@ sudo ethtool -s eth0 wol g
- **发送失败**:请检查网络连接与目标端 WOL 配置后重试。

:::tip 提示
「发送成功」表示灵控已成功发出 Magic Packet,并不保证目标电脑一定开机。若目标端未正确配置 WOL 或不在同一广播域,电脑可能仍无法唤醒。
「发送成功」表示 KVM 已成功发出 Magic Packet,并不保证目标电脑一定开机。若目标端未正确配置 WOL 或不在同一广播域,电脑可能仍无法唤醒。
:::

## 工作原理

Wake on LAN 使用标准 Magic Packet 格式:

1. 包体由 6 字节 `0xFF` 头部 + 16 次重复的目标 MAC 地址组成,共 102 字节。
2. 灵控通过 UDP 将数据包广播到 `255.255.255.255:9`(标准 WOL 端口)。
2. KVM 通过 UDP 将数据包广播到 `255.255.255.255:9`(标准 WOL 端口)。
3. 目标网卡在关机/休眠但保持供电的状态下监听链路层流量,识别到自身 MAC 后触发主板开机。

```
灵控 管理界面 → 输入 MAC → 点击「唤醒」
KVM 管理界面 → 输入 MAC → 点击「唤醒」
构造 Magic Packet(102 字节)
Expand All @@ -128,21 +128,21 @@ Wake on LAN 使用标准 Magic Packet 格式:
- 确认使用的是**有线网卡** MAC,且关机后网线仍连接在同一局域网。
- 检查主板是否关闭了关机后的网卡供电(ErP、EuP 等节能选项)。
- 部分电脑仅支持从**休眠/睡眠**唤醒,不支持从完全关机(S5)状态唤醒。
- 若灵控与目标电脑不在同一网段或 VLAN,广播包可能无法到达目标网卡。
- 若 KVM 与目标电脑不在同一网段或 VLAN,广播包可能无法到达目标网卡。

### 发送失败

- 确认灵控设备网络正常,能访问管理界面即表示基本连通。
- 检查灵控与目标设备之间的交换机、路由器是否允许广播流量透传。
- 稍后重试;若持续失败,可重启灵控网络服务或检查固件版本
- 确认 KVM 设备网络正常,能访问管理界面即表示基本连通。
- 检查 KVM 与目标设备之间的交换机、路由器是否允许广播流量透传。
- 稍后重试;若持续失败,可重启 KVM 网络服务或检查固件版本

### 如何确认用的是哪块网卡的 MAC

若电脑有多块网卡(有线、无线、虚拟网卡),请使用**实际接入灵控所在局域网的那块有线网卡** MAC。可通过暂时禁用其他网卡后执行 `ipconfig` / `ip link` 来确认。
若电脑有多块网卡(有线、无线、虚拟网卡),请使用**实际接入 KVM 所在局域网的那块有线网卡** MAC。可通过暂时禁用其他网卡后执行 `ipconfig` / `ip link` 来确认。

## 与「防止休眠」功能的区别

灵控 还提供 **防止休眠** 功能:在已连接远端电脑时,定时发送微小鼠标移动,防止系统进入休眠。该功能作用于**已开机且已通过灵控连接**的场景。
KVM 还提供 **防止休眠** 功能:在已连接远端电脑时,定时发送微小鼠标移动,防止系统进入休眠。该功能作用于**已开机且已通过 KVM 连接**的场景。

**Wake on LAN(设备唤醒)** 则用于**电脑已关机或深度休眠**时,通过网络魔术包远程开机。两者用途不同,请根据实际场景选择。

Expand Down
Loading
Loading