海康威视硬盘录像机NVR连接公网视频监控平台,注册失败,抓包发现有403 forbidden的问题解决

目录

一、问题描述

二、问题定位

1、查看DVR的配置

2、查看需要使用的端口是否开放

3、查看日志

4、抓包

(1)找出错误

(2)查看数据包内容

三、问题分析

1、国标28181中的域的概念

2、域应该如何定义

(1)查验配置

(2)分析问题

四、问题解决

1、修改DVR 的SIP用户认证ID

2、获取通道

(1)查看设备的视频通道

(2)添加视频通道

(3)通道同步到视频平台

3、相关配置

4、验证结果


一、问题描述

        客户的一台硬盘录像机DVR,通过国标连接到公网视频监控平台,在参数都配置正确的情况下,发现注册不上国标接入平台

二、问题定位

1、查看DVR的配置

         检测DVR的配置,如下图示:

        经过查验,国标的相关配置都是正确。

2、查看需要使用的端口是否开放

         查看DVR侧、国标监控平台侧,端口都已经开放。

3、查看日志

        查看运行日志,发现日志中显示收到了注册信息,但是注册失败。除此之外没发现有关注册失败的原因。

4、抓包

(1)找出错误

        抓包后定位到了错误位置,如下图:

从抓包结果可以看到,平台收到了注册请求,但是平台发出了403 forbidden的消息。

(2)查看数据包内容

继续深入调查403 Forbidden的数据包,如下图:

        发现用户部分(3402000000)与主机部分(3205010000)不一致,是不是这个导致了注册失败呢?需要进一步分析。

三、问题分析

1、国标28181中的域的概念

        国标中的域(Domain)的概念是指视频监控系统网络中的一个逻辑范围,它用于定义系统的组织结构和资源的访问控制。每一个域都有个编号,这个标号是一个用于标识和管理视频监控系统中不同域的唯一标识符。

        域用于定义视频监控系统中不同级别的组织单元,例如城市、区县、派出所等,从而方便管理和维护。域可以帮助管理系统中的资源,如视频摄像机、录像机等,并为这些资源提供访问权限和控制策略。

        域编号用于标识系统中的每一个域,确保每个域都有一个唯一的标识,便于系统识别和管理。域编号有助于构建视频监控系统的组织结构,通过不同的域编号可以清楚地划分系统的各个层级和组成部分。域编号可用于管理域内的资源,如视频监控设备、存储设备等,通过域编号可以方便地定位和管理这些资源。

2、域应该如何定义

(1)查验配置

        国标平台的配置没问题,主要需要查看DVR的配置,如下

        sip服务器ID:32050100002000000001

        sip服务器域:3205010000

        sip服务器地址:117.xx.8.49(走公网)

        sip服务器端口:7060

        SIP用户认证ID:34020000001110000001

        这种配置在常规的NVR和IPC的配置中,应该可以通过。也就是说NVR和IPC的域可以跟上级国标域的编号不同。

(2)分析问题

         是不是这个DVR设备不一样呢?在观察数据包,发现一个问题,如下图绿框所示:

        发现SIP的地址格式如下: sip:34020000001110000001@3205010000

        显然,这是不合理的,也就用户ID中的前10位(3402000000)和设备认为的域ID(3205010000)不一致。

        因此,问题应该出在DVR上面,DVR把SIP服务器的域ID作为自己的域ID;而我们给DVR分配的域ID是3402000000,这样就造成了冲突。

四、问题解决

1、修改DVR 的SIP用户认证ID

         把DVR 的SIP用户认证ID的前十位设置为3205010000,设备很快连接成功,如下为AS-V1000视频监控平台的后台页面,可以看出,DVR已经注册成功,并且上线。

2、获取通道

(1)查看设备的视频通道

        注册成功后,在视频监控平台ASV1000上发现设备中没有通道,检查后发现通道没有配置通道号,如下图所示:

        

(2)添加视频通道

手动添加了通道编码ID,如下图所示:

(3)通道同步到视频平台

        平台再次获取通道后,通道顺利接入到平台中,如下图所示:

3、相关配置

        将视频通道授权给对应的角色和用户。这里就不再累述,可以看前面的文章。

4、验证结果

        登录到AS-V1000的web客户端查看接入设备的视频,可以看到视频,如下图所示:

        问题得到解决!


文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/840808.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT可以开车吗?分享大型语言模型在自动驾驶方面的应用案例

自动驾驶边缘案例需要复杂的、类似人类的推理,远远超出传统的算法和人工智能模型。而大型语言模型正在致力实现这一目标。 人工智能技术如今正在快速发展和应用,人工智能模型也是如此。拥有100亿个参数的通用模型的性能正在碾压拥有5000万个参数的任务特…

缓存IO与直接IO

IO类型 缓存 I/O 缓存 I/O 又被称作标准 I/O,大多数文件系统的默认 I/O 操作都是缓存 I/O。在 Linux 的缓存 I/O 机制中,数据先从磁盘复制到内核空间的缓冲区,然后从内核空间缓冲区复制到应用程序的地址空间(用户空间&#xff0…

提示优化 | PhaseEvo:面向大型语言模型的统一上下文提示优化

【摘要】为大型语言模型 (LLM) 制作理想的提示是一项具有挑战性的任务,需要大量资源和专家的人力投入。现有的工作将提示教学和情境学习示例的优化视为不同的问题,导致提示性能不佳。本研究通过建立统一的上下文提示优化框架来解决这一限制,旨…

ACE之ACE_Reactor

简介 ACE_Reactor实现了reactor模式,其使用了桥接设计模式,实现类的抽象为ACE_Reactor_Impl 结构 #mermaid-svg-RxRq4dmugv7inayl {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-RxRq4dmug…

Langchain-Chatchat的markdownHeaderTextSplitter使用

文章目录 背景排查步骤官方issue排查测试正常对话测试官方默认知识库Debug排查vscode配置launch.json命令行自动启动condadebug知识库搜索测试更换ChineseRecursiveTextSplitter分词器 结论 关于markdownHeaderTextSplitter的探索标准的markdown测试集Langchain区分head1和head…

OSI七层模型和TCP/IP四层模型的区别

OSI七层模型 1.物理层(Physical Layer) 实现相邻节点之间比特流的透明传输,尽可能屏蔽传输介质带来的差异。典型设备:集线器(Hub)。 2.数据链路层(Data Link Layer) 将网络层传下来…

字符串相似性匹配实际问题(一)

背景:很多人都是直接说dp编辑距离,我只想说,凡事都是说起来容易,做起来难。 问题:现有一个Python函数similarity_function,用于计算字符串之间的相似性,可以直接使用该函数完成下面的算法: 给定一个字符串列表List,其中的元素都是字符串string,给定一个substring,求…

Linux驱动(2)---Linux内核的组成

1.Linux内核源码目录 arch包含和硬件体系相关结构相关源码,每个平台占用一个目录 block:块设备驱动程序I/O调度 crypto:常用加密和三列算法,还有一些压缩和CRC校验算法。 documentation:内核个部分的通用解释和注释.。 drive…

gdb调试openjdk

参考Linux安装百度网盘-CSDN博客 在百度网盘官网下载Linux版本的安装包(deb格式)。 linux环境安装百度网盘: sudo dpkg -i baidunetdisk_linux_2.0.1.deb sudo apt-get -f install 在编译OpenJDK过程中,需要用到的软件如下: …

01_尚硅谷JavaWeb最新版笔记

尚硅谷JAVAWEB概述 课程概述 计划学习时间:1周以内

【2024软考】史上最全!软考刷题+解析大合集(9万字全手工打,货真价实)

计算机基础知识 1.中断向量表用来保存各个中断源的中断服务程序的入口地址。当外设发出中断请求信号(INTR)以后,由中断控制器(INTC)确定其中断号,并根据中断号查找中断向量表来取得其中断服务程序的入口地…

Pytorch-03 数据集与数据加载器

在 PyTorch 中,数据集和数据加载器是用于有效加载和处理数据的重要组件,特别是在训练深度学习模型时。以下是关于 PyTorch 数据集和数据加载器的简要介绍以及示例代码: 数据集(Dataset): 数据集是一个抽象…

python --创建固定字符串长度,先进先出

a 123def concatenate_within_limit(b, new_string):# 计算新字符串与a的长度之和a btotal_length len(a) len(new_string)# 如果长度超过1024,从前面删除足够的字符if total_length > 5:diff total_length - 5a a[diff:] new_string # 删除前diff个字符…

第86天:代码审计-PHP项目TP框架安全写法1day利用0day分析

案例一: 利用框架漏洞-TP3框架-SQL注入&Demo&YxtCMF 首先先查询thinkphp的版本 去寻找版本漏洞: Thinkphp3.2.3及以下版本漏洞整理_thinkphp3.2.3漏洞-CSDN博客 去查这个exp注入 这里的利用条件是必须有find方法,并且where后面的参数是数组 …

java基础-JVM日志、参数、内存结构、垃圾回收器

一、基础基础 1.1 数据类型 Java的数据类型分为原始数据类型和引用数据类型。 原始数据类型又分为数字型和布尔型。 数字型又有byte、short、int、long、char、float、double。注意,在这里char被定义为整数型,并且在规范中明确定义:byte、…

电赛一等奖!基于TMS320F2812的简易数字频率计

电赛一等奖!简易数字频率计设计(原理图、PCB、源码、分析报告) 这份文件是关于合肥工业大学电气与自动化工程学院的一个项目报告,题目为“基于TMS320F2812的简易数字频率计”。项目由方敏、侯其立、李苗、张巧云四位本科生完成&am…

Redis 哨兵机制的工作原理——Java全栈知识(22)

Redis 哨兵机制的工作原理 在之前的文章我们讲到了 Redis 的三种集群架构:跳转文章:Redis集群模式 接下来我们详细讲哨兵机制的作用以及实现原理 以下是 Redis 哨兵的结构图 1、Redis 哨兵的作用 哨兵的作用如下: 1、监控,2、…

如何使用Python中的生成器

如何使用Python中的生成器 在Python中,生成器是一种特殊的迭代器,它允许你逐个地生成值,而不是一次性地计算并存储所有的值。这对于处理大量数据或者无限序列特别有用,因为它能够节省内存并提高效率。 生成器通常是通过以下两种…

Java API使用避坑合集

Java API使用避坑合集 总结常见的容易踩坑点记录下来以供参考 相当于避坑大杂烩、会涉及各种坑,持续更新… 1、数组转集合 Arrays.asList() 方法 Arrays.asList() 方法 返回的集合不支持修改操作,否则会抛异常 java.lang.UnsupportedOperationExcept…

5月25日,每日信息差

第一、博通推出 P1400GD 高速网卡:支持 400Gbps 网络、5nm 工艺,搭载 BCM57608 芯片,符合 IEEE P802.3bs 标准。这款网卡采用 5nm 制程技术,为 AI/ML、云、高性能计算提供支持,配备第六代增强型 NIC 架构、第四代 RoCE…