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