Files
sing-box-extended-mirror/docs/configuration/service/usbip-server.zh.md
T

74 lines
2.0 KiB
Markdown
Raw Normal View History

2026-06-17 18:53:38 +08:00
---
icon: material/new-box
---
!!! question "自 sing-box 1.14.0 起"
# USB/IP Server
USB/IP Server 服务通过 [USB/IP](https://usbip.sourceforge.net/) 导出本地 USB 设备,供 [USB/IP Client](/zh/configuration/service/usbip-client/) 或标准 USB/IP 客户端导入。
可用于 Linux、Windows 和 macOS(macOS 需要使用 CGO 构建,且导出设备需要禁用系统完整性保护)。不支持 iOS。
### 结构
```json
{
"type": "usbip-server",
... // 监听字段
"provider": "",
"devices": []
}
```
!!! info "与官方 USB/IP 协议的区别"
sing-box 使用 [sing-usbip](https://github.com/SagerNet/sing-usbip),它使用一套附加协议来支持热插拔等增强功能,但仍然可以与标准 USB/IP 互操作。
### 监听字段
参阅 [监听字段](/zh/configuration/shared/listen/) 了解详情。
`listen_port` 默认为 `3240`。
### 字段
#### provider
设备来源提供者。
- `default`:导出由 `devices` 匹配的本地设备。默认值。
- `dynamic`:设备在运行时通过 [sing-box API](/zh/configuration/service/api/) 客户端提供,而非来自配置文件,支持的平台包括 [macOS](/zh/clients/apple/) 和 [Android](/zh/clients/android/) 上的 sing-box 图形客户端,以及配合 [sing-box Dashboard](https://github.com/SagerNet/sing-box-dashboard) 的基于 Chromium 的浏览器。
!!! quote ""
`default` 提供者仅支持通过 CLI 直接运行在 Linux、Windows 和 macOS 上,并且需要提升的权限。
#### devices
使用 `default` 提供者时 ==必填==。
设备匹配列表,用于选择要导出的本地 USB 设备。
对象格式:
```json
{
"bus_id": "",
"vendor_id": 0,
"product_id": 0,
"serial": ""
}
```
对象字段:
- `bus_id`:USB 总线 ID,例如 `1-2`。
- `vendor_id`:USB 供应商 ID,为数字。
- `product_id`:USB 产品 ID,为数字。
- `serial`:设备序列号。
在一个对象内,所有指定的字段都必须匹配;多个对象之间取并集。至少需要一个字段。