ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

海康威视GB/T28181配置全攻略:从SIP注册到视频调取实战

海康威视GB/T28181配置全攻略:从SIP注册到视频调取实战 1. 为什么GB/T28181对接是安防从业者的必修课干了这么多年安防项目我越来越觉得GB/T28181这个协议是绕不过去的一道坎。不管你是做弱电工程、系统集成还是给客户做平台对接只要涉及到海康威视的摄像头和录像机接入第三方平台GB/T28181就是那个“通用语言”。说白了它就像监控设备之间的普通话——海康的设备说海康方言宇视的设备说宇视方言但大家都得会讲GB/T28181否则跨品牌、跨平台的互联互通就无从谈起。这篇文章我想聊的是海康威视摄像头和录像机配置GB/T28181的完整过程。从最基础的概念理解到SIP服务器参数的填写再到通道编码的规则、常见报错排查我会把这几年前前后后踩过的坑、总结出来的经验都倒出来。适合谁看如果你是刚入行的弱电工程师或者正在做平安城市、智慧园区项目需要把海康设备接入上级平台又或者你只是单纯想搞清楚GB/T28181到底怎么配这篇内容应该能帮你省下不少查文档、试参数的时间。先打个预防针GB/T28181配置本身不难难的是细节。SIP ID填错一位、传输协议选错一个、端口没对上设备就是不在线。而且海康不同型号的摄像头和录像机配置界面的位置和叫法还有差异这就很考验人的耐心。我见过太多人卡在“注册失败”这一步最后发现只是SIP服务器ID多写了一个0。2. GB/T28181协议核心概念快速梳理2.1 SIP协议在安防领域扮演什么角色GB/T28181的全称是《公共安全视频监控联网系统信息传输、交换、控制技术要求》它基于SIP协议来实现设备的注册、信令控制和媒体传输。SIP原本是VoIP电话领域的东西用来建立和拆除会话安防领域把它拿过来做了扩展让摄像头、录像机、平台之间能互相“打招呼”。你可以把SIP服务器理解成一个“总机”。摄像头和录像机是分机它们启动后会向总机报到告诉总机“我在线我的编号是XXX”。总机记录下来之后上级平台要调取视频的时候就通过总机找到对应的分机然后建立媒体流通道。这个过程中SIP负责“打电话”而真正的视频数据则通过RTP/RTCP协议传输。海康设备在GB/T28181模式下既可以作为下级设备向上级平台注册也可以作为上级平台接收其他设备的注册。大部分场景下我们做的是前者——把海康的摄像头或录像机接入到一个更大的联网平台中。2.2 关键参数的含义与填写逻辑配置GB/T28181时有几个参数是必须搞清楚的我一个个说。SIP服务器ID这是上级平台的编号通常是一个20位的数字串。你可以把它理解为总机的电话号码。海康设备需要知道往哪个“总机”注册所以这个ID必须和平台侧完全一致。我遇到过有人把平台ID和设备ID搞混结果怎么都注册不上。SIP服务器地址和端口就是总机的IP和端口号。默认端口通常是5060但很多平台会改成其他端口比如7060、6060之类的。这个必须和平台管理员确认清楚不能想当然。SIP用户名和认证密码设备向平台注册时需要提供的身份凭证。用户名通常是设备编号的一部分密码则是平台分配的。这里有个坑海康录像机的SIP用户名和摄像头可能不一样录像机通常用设备自身的编号而摄像头可能用通道编号。设备编号SIP ID这是设备在GB/T28181体系中的唯一标识也是20位。编码规则一般是前8位是中心编码行政区划代码接着2位是行业编码再2位是类型编码最后8位是序号。比如一个典型的摄像头编号可能是34020000001320000001。这个编号必须全局唯一不能重复。通道编号录像机下面挂多个摄像头时每个通道都有自己的编号。通道编号通常是在设备编号的基础上做扩展比如设备编号是34020000001110000001那么它的第一个通道可能是34020000001320000001。这里要注意通道编号的类型编码通常是131摄像头或132录像机通道。注册周期和心跳周期设备定期向平台发送心跳包告诉平台“我还活着”。注册周期一般是3600秒心跳周期一般是60秒。如果平台长时间收不到心跳就会认为设备离线。这个参数可以根据网络状况调整网络差的时候适当缩短心跳周期。传输协议GB/T28181支持UDP和TCP两种传输方式。UDP速度快但不可靠TCP可靠但有延迟。实际项目中我一般建议用TCP尤其是跨网段、跨运营商的场景UDP丢包会让你怀疑人生。3. 海康摄像头GB/T28181配置实操3.1 配置前的准备工作在动手配置之前有几件事必须先确认好否则后面会反复返工。第一确认摄像头型号和固件版本。海康的摄像头型号非常多不同型号的GB/T28181配置界面位置可能不同。一般来说较新的型号比如DS-2CD系列在“网络-高级配置-平台接入”里面老型号可能在“网络-平台接入”或者“配置-网络-平台接入”。固件版本也很重要太老的固件可能不支持GB/T28181或者支持的参数不全。我建议先把固件升级到较新的版本海康官网可以下载。第二从平台侧获取完整的对接参数。包括SIP服务器ID、SIP服务器地址、SIP服务器端口、SIP用户名、SIP密码、设备编号、通道编号。这些参数一个都不能少而且必须和平台侧完全一致。我习惯让平台管理员发一个参数表过来逐项核对后再配置。第三确认网络连通性。摄像头需要能访问到SIP服务器的IP和端口。可以在摄像头的“网络-网络测试”里面用ping命令测试或者用telnet测试端口。如果网络不通后面所有配置都是白费。第四准备好摄像头的登录信息。海康摄像头默认IP是192.168.1.64用户名admin密码是激活时设置的。如果忘了密码只能重置摄像头这个成本很高所以密码一定要记好。3.2 一步步填写平台接入参数登录摄像头Web界面后找到“配置-网络-高级配置-平台接入”选择“GB/T28181”选项卡。不同固件版本可能略有差异但大体路径是这样的。首先勾选“启用”复选框。然后开始填写参数SIP服务器ID填写平台提供的20位编号比如34020000002000000001SIP服务器地址填写平台的IP地址比如10.0.0.100SIP服务器端口填写平台提供的端口比如5060SIP用户名填写平台分配的用户名通常是设备编号SIP用户认证ID有些平台需要单独填写认证ID没有的话留空或与用户名一致密码填写平台分配的密码注册周期默认3600秒可以不改心跳周期默认60秒网络差可以改成30秒设备编号填写分配给这个摄像头的20位编号通道编号填写分配给这个通道的20位编号传输协议选择TCP或UDP建议TCP填完之后点击“保存”。摄像头会重启网络服务然后尝试向平台注册。这时候可以在“平台接入”页面看到注册状态。如果显示“在线”说明注册成功。如果显示“注册失败”或“离线”就需要排查了。注意海康摄像头在GB/T28181模式下默认会关闭ONVIF和RTSP等其他接入方式。如果你同时需要RTSP流需要在配置里面单独开启。另外启用GB/T28181后摄像头的Web界面可能会提示“请点击此处下载插件”这是海康的WebComponents插件安装时需要关闭浏览器否则装不上。3.3 通道编号的编码规则与常见错误通道编号是GB/T28181配置中最容易出错的地方。我见过太多人因为通道编号填错导致平台看不到视频。GB/T28181的编号规则是20位结构如下位数含义示例1-8中心编码行政区划340200009-10行业编码0011-13类型编码131摄像头或132录像机通道14-20序号0000001比如一个完整的摄像头通道编号是34020000001320000001。常见的错误有几种一是类型编码写错摄像头写成132录像机通道写成131二是序号重复多个摄像头用了同一个序号三是位数不够20位前面没有补零。这些错误都会导致平台无法正确识别通道。还有一个坑海康录像机在GB/T28181模式下通道编号的生成方式有两种。一种是自动生成录像机会根据设备编号自动推导通道编号另一种是手动指定需要逐个通道填写。我建议用手动指定因为自动生成的编号有时候不符合平台侧的规划。4. 海康录像机GB/T28181配置实操4.1 录像机与摄像头的配置差异录像机的GB/T28181配置和摄像头大同小异但有几个关键区别需要注意。第一录像机通常有多个通道每个通道对应一个摄像头。配置的时候录像机本身需要一个设备编号每个通道也需要一个通道编号。平台侧看到的是录像机下面的通道而不是摄像头本身。这意味着如果你把摄像头直接接入平台平台看到的是摄像头如果你把摄像头接在录像机下面再把录像机接入平台平台看到的是录像机的通道。第二录像机的SIP用户名和摄像头可能不同。海康录像机的SIP用户名通常是录像机的设备编号而摄像头的SIP用户名可能是通道编号。这个要和平台管理员确认清楚。第三录像机的配置界面位置不同。海康录像机的GB/T28181配置通常在“系统配置-网络配置-平台接入”里面而不是“网络-高级配置”。而且录像机的配置界面更复杂因为涉及到多个通道的管理。第四录像机支持“平台接入”和“通道接入”两种模式。平台接入是把整个录像机作为一个设备注册到平台通道接入是把录像机下面的每个摄像头单独注册到平台。大部分场景下用的是平台接入模式。4.2 录像机多通道编号规划录像机多通道编号规划是个技术活。假设你有一台16路录像机设备编号是34020000001110000001你需要给16个通道分别分配编号。一种做法是顺序编号34020000001320000001到34020000001320000016。这种做法简单直接但要注意序号不能和已有的设备冲突。另一种做法是按实际摄像头的位置编号比如1楼大厅的摄像头编号是340200000013200001012楼走廊的是34020000001320000201。这种做法便于管理但需要提前规划好。我个人的经验是在项目开始之前就做好编号规划表把所有设备、通道的编号都列出来配置的时候照着填。这样能避免编号冲突和重复。编号规划表可以包含以下字段设备名称、设备类型、安装位置、设备编号、通道编号、SIP用户名、备注。提示海康录像机的通道编号在GB/T28181模式下默认是从设备编号自动推导的。比如设备编号是34020000001110000001第一个通道可能是34020000001320000001。但这个规则不是固定的不同固件版本可能不同。建议手动指定通道编号避免自动推导带来的不确定性。4.3 录像机双网口配置注意事项海康录像机很多型号是双网口的比如DS-7808N-K2、DS-7816N-K2等。双网口在GB/T28181配置时有个坑你需要确认哪个网口是“网口1”哪个是“网口2”。海康录像机的双网口通常有两种工作模式多址模式和容错模式。多址模式下两个网口可以配置不同的IP地址分别接入不同的网络。容错模式下两个网口互为备份一个坏了另一个顶上。做GB/T28181对接时我建议用多址模式把其中一个网口专门用于平台接入另一个用于摄像头接入。这样网络隔离更清晰排查问题也方便。具体配置在“系统配置-网络配置-基本配置”里面选择工作模式为“多址设定”然后分别配置两个网口的IP。需要注意的是海康录像机的网口1和网口2在物理上是有区别的。一般来说靠近电源接口的那个是网口1另一个是网口2。但不同型号可能不同最好查一下说明书或者用网线插上去看指示灯。5. 常见问题排查与避坑指南5.1 注册失败的原因分析与解决注册失败是GB/T28181配置中最常见的问题。根据我的经验原因主要有以下几类参数不一致SIP服务器ID、地址、端口、用户名、密码、设备编号任何一个和平台侧不一致都会导致注册失败。排查方法是逐项核对最好让平台管理员截图确认。网络不通摄像头或录像机无法访问SIP服务器。排查方法是在设备上ping服务器IP或者用telnet测试端口。如果网络不通检查路由、防火墙、VLAN配置。端口被占用SIP服务器端口被其他程序占用或者设备侧的本地SIP端口冲突。海康设备默认使用5060作为本地SIP端口如果这个端口被占用可以改成其他端口。认证失败用户名或密码错误。有些平台对密码有复杂度要求比如必须包含大小写字母和数字。如果密码太简单平台可能拒绝认证。设备编号重复多个设备用了同一个编号。平台侧会拒绝重复的编号注册。排查方法是检查所有设备的编号确保唯一。固件版本不兼容老固件可能不支持某些GB/T28181参数或者和平台的协议版本不匹配。解决方法是升级固件。下面是一个常见问题速查表问题现象可能原因解决方法注册失败提示401用户名或密码错误核对SIP用户名和密码注册失败提示403设备编号被禁用或重复检查设备编号是否唯一注册失败提示404SIP服务器地址或端口错误核对服务器地址和端口注册成功但无视频通道编号错误或媒体端口不通检查通道编号和RTP端口频繁掉线心跳周期太长或网络不稳定缩短心跳周期检查网络平台看不到通道通道编号未配置或类型编码错误检查通道编号和类型编码5.2 视频流调取失败的排查思路注册成功只是第一步平台能调取到视频流才算真正成功。视频流调取失败通常有以下几个原因媒体端口未开放GB/T28181的媒体流通过RTP传输默认端口范围是30000-30500。如果防火墙没有开放这个范围视频流就传不过来。解决方法是开放UDP端口范围或者在设备侧指定更小的端口范围。传输协议不匹配平台侧用TCP设备侧用UDP或者反过来。这个要在平台侧和设备侧都确认清楚保持一致。编码格式不兼容平台可能不支持设备使用的视频编码格式。海康摄像头默认用H.265有些老平台只支持H.264。解决方法是在摄像头侧把编码格式改成H.264。SSRC冲突多个设备的SSRC值相同导致平台无法区分视频流。海康设备通常会自动生成SSRC但有时候会冲突。可以在设备侧手动指定SSRC。NAT穿越问题如果设备和平台不在同一个网络可能存在NAT穿越问题。解决方法是用TCP传输或者在平台侧配置STUN服务器。5.3 海康插件安装与浏览器兼容性海康摄像头的Web界面需要安装WebComponents插件才能正常显示视频。这个插件在Chrome、Edge等浏览器上安装时经常出问题。首先安装插件时必须关闭浏览器。如果浏览器开着插件会安装失败。安装完成后重新打开浏览器访问摄像头IP应该能看到视频了。其次Chrome从某个版本开始不再支持NPAPI插件海康的WebComponents插件用的是NPAPI所以在较新的Chrome上可能无法使用。解决方法是使用IE模式或者用海康提供的客户端软件iVMS-4200。另外如果浏览器提示“当前页面非HTTPS安全上下文无法访问摄像头”这是因为Chrome要求HTTPS才能访问摄像头。解决方法是在Chrome的地址栏输入chrome://flags搜索“Insecure origins treated as secure”把摄像头IP加进去。注意海康录像机的Web界面和摄像头略有不同录像机通常不需要安装插件就能预览视频因为它用的是WebSocket而不是NPAPI。但录像机的配置界面可能提示“请点击此处下载插件”这个插件是用于本地视频播放的不装也不影响配置。6. 实战经验与进阶技巧6.1 批量配置的高效方法如果你有几十上百个摄像头需要配置GB/T28181一个一个登录Web界面填参数会疯掉。我总结了几种批量配置的方法。第一种是用海康的批量配置工具。海康官网有提供Batch Configuration Tool可以批量修改摄像头的网络参数、平台接入参数等。用法是先把所有摄像头搜索出来然后选中需要修改的批量填写GB/T28181参数一键下发。第二种是用ONVIF或ISAPI接口。海康摄像头支持ISAPI协议可以通过HTTP请求修改配置。比如用Python写个脚本遍历所有摄像头IP发送ISAPI请求修改GB/T28181参数。这种方法适合有编程基础的工程师。第三种是用录像机统一配置。如果摄像头都接在录像机下面可以在录像机上统一配置GB/T28181参数然后录像机会把参数下发给下面的摄像头。这种方法最省事但要求摄像头和录像机在同一个网络。6.2 平台侧对接的注意事项GB/T28181对接是双向的设备侧配置好了平台侧也要配置正确。我遇到过很多次设备侧没问题但平台侧配置错误导致对接失败的情况。平台侧需要配置的内容包括添加设备、填写设备编号、配置SIP域、配置媒体端口范围。其中最容易出错的是SIP域。SIP域通常是一个10位的编码比如3402000000。设备侧的SIP服务器ID前10位必须和平台侧的SIP域一致否则注册会失败。另外平台侧的媒体端口范围要和设备侧的RTP端口范围匹配。如果平台侧只开放了30000-30100而设备侧用的是30000-30500那么超出范围的视频流就传不过来。还有一个坑有些平台对设备的注册频率有限制比如每分钟最多注册10次。如果设备频繁重启可能会被平台暂时封禁。解决方法是把注册周期设长一点比如7200秒。6.3 安全加固与日常维护建议GB/T28181配置完成后还需要做一些安全加固和日常维护。安全方面首先要修改默认密码。海康设备的默认密码是admin激活密码很多人不改这是很大的安全隐患。其次要关闭不需要的服务比如Telnet、SSH、ONVIF等。如果不需要从外网访问就把设备的公网访问关掉。再次要定期升级固件海康会不定期发布安全补丁。维护方面建议定期检查设备的注册状态。可以在平台侧查看设备的在线率如果发现频繁掉线要及时排查。另外要定期备份设备的配置文件万一设备故障可以快速恢复。我个人的习惯是每个项目做完之后把所有的配置参数整理成一个文档包括设备编号、通道编号、SIP参数、网络参数等。这样以后维护的时候不用再一个个登录设备去查。6.4 跨品牌对接的兼容性处理虽然这篇文章主要讲海康设备但实际项目中经常需要和宇视、大华等品牌的设备混合使用。跨品牌对接时GB/T28181的兼容性是个大问题。不同品牌对GB/T28181的实现有差异。比如海康的设备编号是20位宇视的可能也是20位但编码规则不同。海康的通道编号类型编码是131或132宇视的可能用其他编码。这些差异会导致平台无法正确识别设备。解决方法是第一尽量统一品牌减少兼容性问题。第二如果必须混用要在平台侧做适配比如手动指定设备类型和通道类型。第三在设备侧尽量使用标准的GB/T28181参数避免使用厂商私有的扩展参数。我遇到过最头疼的情况是海康录像机下面挂了宇视的摄像头然后录像机以GB/T28181模式接入平台。这种情况下录像机把宇视摄像头的视频流转发给平台但通道编号用的是海康的规则平台侧看到的是海康的通道编号但实际视频是宇视的。这种混合场景需要仔细规划编号否则后期维护会很乱。6.5 录像机命名规则对配置的影响海康录像机的命名规则其实暗含了它的能力信息。比如DS-7808N-K2DS代表产品系列78代表录像机类型08代表8路N代表网络K2代表代次。了解这些命名规则可以帮助你快速判断录像机是否支持GB/T28181。一般来说海康的NVR网络录像机都支持GB/T28181但不同型号的支持程度不同。较新的型号支持GB/T28181-2016版本老型号可能只支持GB/T28181-2011版本。这两个版本在参数上有差异比如2016版本增加了对H.265编码的支持。在配置之前建议先查一下录像机的规格书确认它支持的GB/T28181版本和参数范围。如果规格书找不到可以在录像机的Web界面里面看“系统信息-版本信息”里面会显示支持的协议版本。另外海康录像机的固件升级也会影响GB/T28181的支持。有些老型号升级固件后GB/T28181的参数选项会变化。所以升级固件之前最好先备份配置升级后重新检查一遍GB/T28181参数。7. 个人实操体会与建议做了这么多年的GB/T28181对接我最大的体会是细节决定成败。这个协议本身不复杂但参数多、规则细任何一个地方出错都会导致对接失败。我的建议是配置之前先做好规划把所有参数列成表格逐项核对。配置的时候先配一个设备测试测试通过后再批量配置。测试的时候不仅要看注册状态还要实际调取视频流确认视频能正常播放。另外我强烈建议在项目现场保留一份完整的配置文档。包括所有设备的编号、IP、SIP参数、通道编号、平台参数等。这份文档在后期维护和故障排查时非常有用。我见过太多项目因为人员变动配置文档丢失导致后期维护困难。最后分享一个小技巧如果注册一直失败可以尝试把传输协议从UDP改成TCP或者反过来。有时候平台侧和设备侧的协议不匹配但错误提示不会明确告诉你。这个简单的切换往往能解决很多莫名其妙的问题。
返回列表