GB28181出内网
最近关注GB28181的朋友很多,昨天有位朋友问到GB28181出内网的问题,希望我花5分钟的时间
讲讲如何通过GB28181协议将内网的摄像机视频推送到公网。要说清楚这个问题,5分钟的时间应该不
够,还是写篇文章跟大家分享下。
说这个问题之前,我想先聊聊GB28181协议,首先我们需要了解的是GB28181是应用层协议,而
不是传输层协议。所谓应用层协议说简单点就是发送方跟接收方商议怎么协作:比如第一个信令由谁
发起,视频流的采用什么封装格式,什么时候开始推送视频,什么时候结束推送等等。GB28181协议
规定下级(也可以理解为客户端)首先向上级(服务端)注册,这一点让内网摄像机设备通过GB281
81协议主动推送视频到公网有了可能性。局域网的摄像机设备只有内网IP,公网下的服务无法主动找
到摄像机设备,然公网下的服务有公网IP,内网中的摄像机通过路由转换最终可以将注册信息发送给公
网下的服务(这一点rtsp协议是做不到的,rtsp协议规定首先得服务端向客户端发送命令,所以内网摄
像机设备通过rtsp协议主动推送视频到公网是行不通,通过在内网部署流媒体服务主动推送视频流到公
网可行,代价是增加一台服务器)。
客户端设备已经注册上来了,接下来服务端要做的事情是查询设备信息以及发起视频流请求命令。
客户端设备跟服务端在同一个局域网时,服务端发送的查询及请求命令的目的地址直接填写客户端设备
的IP及Port即可;客户端设备在内网服务端在公网时服务端发送命令的目的地址该填什么呢?直接填客
户端设备的内网IP及Port?显然不正确,身在公网的服务根本不知道客户端设备内网IP + Port家住何方,
哪一条路可以抵达。服务端要想将命令成功发送给客户端设备必须得找到合适的路径(路由路径)。
合适在路径在哪,摄像机设备注册到服务端会产生一条从内网设备到公网服务的路径,服务端沿着这
条路径下发命令即可将命令发送给内网客户端设备。服务端并不用关心这条路径的所有节点,只要将
目的地址的IP及Port设置为设备注册上来时公网测的IP及Port即可。
如需交流,可以加QQ群766718184,或者QQ:350197870
博主提供Ffmpeg、GB28181视频教程
播放地址: http://www.iqiyi.com/u/1426749687
源码及Demo下载地址:http://www.chungen90.com/index.php?m=text&a=index&classify_id=207
视频下载地址: http://www.chungen90.com/index.php?m=text&a=index&classify_id=208
GB28181出内网的更多相关文章
- 内网劫持渗透新姿势:MITMf简要指南
声明:本文具有一定攻击性,仅作为技术交流和安全教学之用,不要用在除了搭建环境之外的环境. 0×01 题记 又是一年十月一,想到小伙伴们都纷纷出门旅游,皆有美酒佳人相伴,想到这里,不禁潸然泪下.子曰:& ...
- 内网穿透神器(ngrok)服务端部署【分享一台自己的ngrok服务器】【多平台】
Ngrok为何物 “ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道.ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放.”这是百度百科上给Ng ...
- 烂泥:openvpn tun模式下客户端与内网机器通信
本文由秀依林枫提供友情赞助,首发于烂泥行天下 前两篇文章我们介绍了有关openvpn的搭建与配置文件的讲解,这篇文章我们再聊介绍下,在tun模式下openvpn客户端如何与内网机器通信的问题. 一.实 ...
- <<< 如何查看自己是外网还是内网
判断的方法很简单,就是看你的网络中有没有路由器,不管是有线路由还是无线路由,只要你的网络中用了路由,那你就是内网,用路由器的网络有一个特点,那就是只要路由器在开着,那你开了电脑之后就可以直接上网,不需 ...
- 内网公告牌获取天气信息解决方案(C# WebForm)
需求:内网公告牌能够正确显示未来三天的天气信息 本文关键字:C#/WebForm/Web定时任务/Ajax跨域 规划: 1.天定时读取百度接口获取天气信息并存储至Txt文档: 2.示牌开启时请求Web ...
- 内网渗透测试思路-FREEBUF
(在拿到webshell的时候,想办法获取系统信息拿到系统权限) 一.通过常规web渗透,已经拿到webshell.那么接下来作重要的就是探测系统信息,提权,针对windows想办法开启远程桌面连接, ...
- 解决内网主机ping不通网关能ping内网
有一台笔记本电脑可以自动获取IP,可以和内网其他主机互相PING通,就是PING 不通网关,只能上内网,不能上外网,IP换到其他主机上也可以上外网,说明路由器上没什么限制.路由器也查了,电脑也重装了, ...
- vIDC v2.0 强大的端口转发神器使用总结-开放内网tfs代码服务
vIDC2.0 端口映射工具,最近在公司闲来无事,想自己整个tfs来管理自己的研究代码. 本来是想用微软Visual Studio提供的免费tfs,但是无奈速度太慢.他们的服务器在美国,中国也没有代理 ...
- 在centos下部署docker内网私服
Docker内网私服:docker-registry with nginx & ssl on centos docker-registry既然也是软件应用,自然最简单的方法就是使用官方提供的已 ...
随机推荐
- mogilefsdBUG mogilefsd[15624]: crash log: Modification of a read-only value attempted at /usr/local/share/perl5/Sys/Syscall.pm line 227
mogilefsd[15624]: crash log: Modification of a read-only value attempted at /usr/local/share/perl5/S ...
- ectouch 微信支付成功后订单状态未改变的解决办法 (转载)
原文地址: 微信支付支付成功后,返回到mobile/wx_native_callback.php 之前代码 define('IN_ECS', true); require(dirname(__FILE ...
- centos7 挂载exfat格式的u盘
下载 两个包 rpm -ivh http://download1.rpmfusion.org/free/el/updates/7/x86_64/f/fuse-exfat-1.2.8-1.el7.x86 ...
- postgres 基本使用
postgres=# help 您正在使用psql, 这是一种用于访问PostgreSQL的命令行界面 键入: \copyright 显示发行条款 \h 显示 SQL 命令的说明 \? 显示 pgsq ...
- 关于python浮点数的精度问题。
若想严格按照四舍五入进行,可使用Decimal,代码如下: from decimal import Decimal, ROUND_HALF_UP def round(x, n): return Dec ...
- poj 1106(半圆围绕圆心旋转能够覆盖平面内最多的点)
Transmitters Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4955 Accepted: 2624 Desc ...
- 在C#中将金额转换成中文大写金额
具体代码如下: /// <summary> /// 金额转换成中文大写金额 /// </summary> /// <param name="LowerMoney ...
- 2018年最重要的HTML5开发手册,传播正能量
今天给大家推荐这个HTML5开发手册,希望能帮助正在学习web前端的人,鄙人也是刚学习前端没多久,借助于一点资讯平台能够结识更多前端大牛,这是我的web前端/HTML5/javscript技术学习群: ...
- CodeChef February Challenge 2018 Broken Clock (三角函数推导 + 矩阵快速幂)
题目链接 Broken Clock 中文题面链接 令$cos(xα) = f(x)$ 根据三角函数变换公式有 $f(x) = \frac{2d}{l} f(x-1) - f(x-2)$ 我们现在 ...
- http 头信息详解(转)
HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2616.HTTP协议采用了请求/响应模型.客户 ...