问题描述
Freeswitch做sip中继,sip信令可以接通但是媒体不通,造成的现象就是,电话接通了,可是听不见声音。
产生背景
- 测试用的Freeswitch1发起sip呼叫,经由一个openips和两台Freeswitch组成的集群,再到一个opensips,最后再转发到测试用的Freeswitch2;
- opensips+Freeswitch的集群以及后续的opensips走内网发送sip消息,测试用的Freeswitch和前面的环境通过外网发送sip消息;
- 环境用的服务器为腾讯云Cent OS7 64位系统。
解决方案
- 由于opensips只做信令转发,不处理媒体,所以问题的原因锁定在Freeswitch上;
- 通过
ip a查看Freeswitch所安装的服务器能否看到外网网卡,如果没有说明是专用网络而非经典网络,此处为专用网络的解决方案; - 修改Freeswitch安装目录下的conf/sip_profiles/路径下的external.xml和external.xml文件,修改
<param name="ext-rtp-ip" value="auto"/>中的auto为服务器的外网ip,sip信令路径上的所有Freeswitch都需要做修改; - 安装Freeswitch的服务器,安全策略需要开放UDP的端口,例如
UDP:10000-30000; - 修改Freeswitch安装目录下的conf/autoload_configs/路径下的switch.conf.xml文件,修改Freeswitch的端口范围在服务器安全策略允许的范围以内
<param name="rtp-start-port" value="10000"/>和<param name="rtp-e

本文详细介绍了在Freeswitch作为SIP中继时遇到的媒体不通问题,表现为电话接通但无声音。问题背景涉及多台Freeswitch服务器和opensips的集群环境。解决方案集中在检查和修改Freeswitch配置,包括设置服务器外网IP、调整端口策略以及检查 sip 转发属性,最后重启Freeswitch以应用更改。
最低0.47元/天 解锁文章
5551

被折叠的 条评论
为什么被折叠?



