大家好~我叫彼得,搞技术支持,但拒绝说「你重启试试」,每天两眼一睁就是给客户解决各种疑难杂症(俺不中嘞)。
最近收到用户反馈,说现场设备没法给EasyCVR服务器推流,这可把人急坏了。我把排查和解决的步骤整理了一下,有类似问题的朋友可以参考看看~
解决方案1)先看看端口占用情况咱们得先确认EasyCVR服务监听的1935端口(这是默认的RTMP推流端口)是不是被占用了。
检查之后,发现端口是正常占用的,说明服务正在好好运行着呢。
2)再瞧瞧防火墙状态
接着我检查了操作系统的基础防火墙,发现它是关闭的。
不过!重点来啦~进一步检查时,我发现Windows高级安全防火墙是开启的状态。
3)配置防火墙策略(现场不能关防火墙)
因为现场有规定不能关闭防火墙,所以咱们就采用开放特定端口的办法。
在Windows高级安全防火墙里,给1935端口分别创建入站规则和出站规则,允许TCP/UDP协议通过这个端口通信就行。
4)验证结果
等配置好防火墙策略,现场设备就成功和EasyCVR服务器建立推流连接了,问题完美解决~
经验总结:
其实从这次的问题中,也能总结出一些排查经验。遇到设备连接或推流失败的情况,咱们可以先从基础的服务状态和端口情况入手,确认服务是否正常运行、端口是否被正确占用,这是排查的第一步。
而网络层面的防火墙往往是容易被忽略的,尤其是像Windows高级安全防火墙这类可能存在的多层防护,一定要逐一检查,别放过任何一个可能限制通信的环节。
另外,解决问题时也要灵活应对,就像这次现场不能关闭防火墙,咱们就换个思路,通过开放特定端口来实现通信,既保证了安全又解决了问题。