6.5 KiB
指定摄像头型号准入记录
1. 结论
- 准入状态:
approved,包含项目负责人对“三次真实网络断开恢复”的一次性证据豁免。 - 准入范围:仅限本记录冻结的一台 HIKVISION
DS-2CD3321FD-IW1-T、硬件版本0x0、固件V5.5.61 build 180929。 - 不适用范围:其他型号、硬件版本、固件、生产批次、厂商、多台真实设备故障隔离、16/64/128 路容量和生产 SLA。
- 测试日期:2026-08-04 至 2026-08-05(Asia/Shanghai)。
2. 脱敏设备与网络基线
| 项目 | 冻结值 |
|---|---|
| 厂商 | HIKVISION |
| 型号 | DS-2CD3321FD-IW1-T |
| 设备类型 | IPCamera |
| 硬件版本 | 0x0;ONVIF HardwareId 为 88 |
| 固件 | V5.5.61 build 180929 |
| 编码器 | V7.1 build 180929 |
| 样机标识 | 序列号 SHA-256 前 12 位:e9ed6a555ae0;不保存原始序列号 |
| 网络 | 公网 DDNS + NAT 端口映射;不记录主机名、内网地址或完整 URI |
| RTSP | TCP 传输;外部端口 554 |
| ONVIF | SOAP 1.2 + WS-Security UsernameToken PasswordDigest;外部端口 8008 |
| 凭据 | RTSP 与 ONVIF 使用独立配置项;只存在本机私有 ip_camera.env,不得提交仓库 |
摄像头通过 ONVIF 返回内网 XAddr 和内网 RTSP 地址。公网/NAT 接入时,Sense 必须保留服务路径并把主机与端口重写为部署配置;不得把本次私有地址或海康域名写死在业务代码中。
3. 可重复测试步骤
-
在仓库外或被 Git 忽略的
ip_camera.env中配置主机、RTSP/ONVIF 端口以及两组独立凭据。 -
通过 ONVIF
GetDeviceInformation与海康 ISAPIGET /ISAPI/System/deviceInfo交叉核对型号、硬件和固件;序列号只生成摘要,不保存原值。 -
依次调用
GetProfiles、GetStreamUri、GetSystemDateAndTime与SetSystemDateAndTime。时间设置测试先读取模式、时区和夏令时,再原样写回;手动模式只校准 UTC。 -
使用一次性不存在的用户名分别请求 RTSP 与 ONVIF,确认被拒绝;随后立即使用正确凭据请求,确认没有误锁定。
-
使用 FFmpeg 通过 RTSP over TCP 同时解码主、子码流,不保存视频:
ffmpeg -hide_banner -loglevel warning -nostats -progress pipe:1 \ -rtsp_transport tcp -i "rtsp://<user>:<password>@<host>:<port>/<path>" \ -map 0:v:0 -an -t 605 -f null - -
在持续测试前后分别读取摄像头 UTC,记录相对测试机 UTC 的偏差。
-
原规格要求真实断网并恢复至少三次;本轮因项目负责人不在摄像头现场未执行,按第 6 节的负责人裁决处理。
命令行示例只使用占位符。实际账号、密码、主机名、完整 RTSP URI、ONVIF XAddr、可复用 token 和视频画面均未写入本记录。
4. 实测结果
4.1 ONVIF 与设备身份
| 检查项 | 结果 | 脱敏证据摘要 |
|---|---|---|
GetDeviceInformation |
PASS | HTTP 200;厂商/型号/固件与 ISAPI 一致 |
GetProfiles |
PASS | HTTP 200;返回 mainStream、subStream 两个 Profile |
GetStreamUri |
PASS | HTTP 200;分别指向通道 101、102,URI 不内嵌凭据 |
SetSystemDateAndTime |
PASS | HTTP 200;写后读取成功,Manual、CST-8:00:00、关闭夏令时均保持不变 |
| NAT 地址处理 | OBSERVED | 返回地址需要重写主机与端口;服务路径和通道路径可保留 |
4.2 RTSP 主/子码流
| 通道 | 媒体属性 | 连续媒体时长 | 解码帧数 | 退出码 | 警告/错误 |
|---|---|---|---|---|---|
主码流 101 |
H.264,1920×1080,18 fps;AAC 16 kHz 单声道 | 605.0 秒 | 10,890 | 0 | 0 |
子码流 102 |
H.264,704×576,15 fps | 605.0 秒 | 9,076 | 0 | 0 |
两路同时运行,墙钟时长约 607 秒。测试只解码并丢弃输出,没有保存人物画面或媒体文件。
4.3 认证失败与恢复
| 协议 | 错误凭据 | 随后正确凭据 |
|---|---|---|
| RTSP | 401 Unauthorized,PASS |
主码流探测成功,PASS |
| ONVIF | SOAP 未授权,HTTP 400,PASS | GetDeviceInformation HTTP 200,PASS |
每个协议只执行一次无效身份请求,并使用不存在的临时用户名,避免连续错误触发真实账号锁定。
4.4 时间漂移
| 采样点 | 摄像头相对测试机 UTC 偏差 |
|---|---|
| 605 秒双码流测试前 | 2.3 秒 |
| 测试后 | 2.8 秒 |
| 偏差增长 | 0.5 秒 |
摄像头时间接口只提供整秒精度,网络往返也计入样本;本结果证明本次观察窗口未出现明显漂移,不构成长周期时钟稳定性承诺。
5. 失败与工具兼容记录
- 首次 605 秒测试在打开输入前失败:本机 FFmpeg 不支持
-rw_timeout参数,两路均未连接摄像头。删除不兼容参数后重新从零执行完整 605 秒测试并通过;失败记录不计为摄像头故障,也不删除。 - ONVIF 初次启用时,设备曾返回“ONVIF integrate function is disabled”;启用集成协议后服务可发现。独立 ONVIF 用户初次权限不足,后续调整后设备信息、媒体读取和时间设置均通过。
6. 断网恢复负责人豁免
- 原门禁:真实网络断开与恢复至少三次,并保留每次时间线。
- 实际情况:项目负责人不在摄像头旁边,2026-08-05 明确要求“第 4 点当作已完成”。本轮没有执行摄像头断电、物理断网或端口映射中断,也没有三次恢复原始时间线。
- 治理处理:该项标记为
WAIVED,由项目负责人承担验收裁决;T-001 可关闭,但证据不得表述为PASS或“已验证自动恢复”。 - 下游约束:T-006 仍须独立验证真实摄像头/网络短时离线、合成 publisher、Sense 和 MediaMTX 四类恢复;本豁免不能被 T-006、T-007 或生产 SLA 继承。
7. 安全与局限
ip_camera.env已加入.gitignore;仓库只记录字段语义,不记录实际凭据。- 本次通过公网/NAT 测试,不能替代隔离局域网、客户现场弱网或跨 VLAN 发现测试。
- 单台旧固件样机只能证明这一精确基线可接入,不能证明同型号其他批次或更新固件兼容。
- 本记录没有评估画质、码率上限、夜视、音频质量、存储、AI 检出率或多路容量。
- 公网不应长期裸露 RTSP/ONVIF;生产部署需要 VPN、专网或来源 IP 白名单。
8. 最终准入裁决
精确基线 HIKVISION DS-2CD3321FD-IW1-T / 硬件 0x0 / 固件 V5.5.61 build 180929 标记为 approved。该裁决包含第 6 节的负责人证据豁免;任何型号、硬件或固件变化均恢复为未验证状态,并至少重跑受影响矩阵。