Openser中文网

专注于VoIP,Opensips,Kamailio等技术,QQ群:QQ群:293697898

Kamailio配MediaProxy


tags:Kamailio MediaProxy 创建时间:2016-08-24 19:14:05

以下由QQ群友 風華血月(963641045)分享

1.环境:阿里云Debian 8.04 64位系统,防火墙默认开启,数据库mysql

防火墙充许所有的请求

2.默认已经安装了kamailio,配置连mysql数据库,添加用户,不会的可以根据官方文档: http://www.kamailio.org/wiki/install/4.4.x/git

或群里崔工文档进行安装

3.安装mediaproxy,mediaproxy属于AG Projects ,参考官方文档:http://mediaproxy.ag-projects.com/projects/mediaproxy/wiki/InstallationGuide

首先添加AG Projects - Software Repositories :http://projects.ag-projects.com/projects/documentation/wiki/Repositories

根据我自己系统选择

加入/etc/apt/sources.list。

然后添加key:

wget http://download.ag-projects.com/agp-debian-gpg.key

apt-key add agp-debian-gpg.key (如不是root用户,需要前面加 sudo)

apt-get update

添加AG Projects源完成。

安装mediaproxy命令如下:

apt-get install mediaproxy-dispatcher mediaproxy-relay mediaproxy-web-sessions

4.配置mediaproxy,mediaproxy依赖IPtables(默认开启)

开启ip_forward

sed -i 's#net.ipv4.ip_forward = 0#net.ipv4.ip_forward = 1#g' /etc/sysctl.conf

sysctl -p

打开/etc/mediaproxy/config.ini ,修改如下: dispatchers = 192.168.88.245(你可以改为自己机器公网IP) passport = None relay_ip = 192.168.88.245(你可以改为自己机器公网IP) port_range = 50000:60000 log_level = DEBUG on_hold_timeout = 1800 [Dispatcher] socket_path = dispatcher.sock listen = 192.168.88.245(你可以改为自己机器公网IP) listen_management = 192.168.88.245(你可以改为自己机器公网IP) management_use_tls = no passport = None management_passport = None log_level = DEBUG [TLS] [Database] [Radius] [kamailio] (我们用的kamailio,把OpenSIPS改为kamailio) socket_path = /var/run/kamailio/socket max_connections = 10

5.kamailio配置mediaproxy

在kamailio的配置文件kamailio.cfg的route上面增加

loadmodule "mediaproxy.so" modparam("mediaproxy", "disable", 0) modparam("mediaproxy", "mediaproxy_socket", "/var/run/mediaproxy/dispatcher.sock") modparam("mediaproxy", "mediaproxy_timeout", 1000) modparam("mediaproxy", "signaling_ip_avp", "$avp(nat_ip)") modparam("mediaproxy", "media_relay_avp", "$avp(media_relay)") modparam("mediaproxy", "ice_candidate", "low-priority")

Ps:这没有验证,仅供参考,参考链接:http://fengwan.blog.51cto.com/508652/1652807 问题:

运行media-dispatcher可能没有问题,可是运行media-relay可能会出现问题

运行命令:lsmod | grep nat 没有输出

解决方法:

运行命令: modprobe iptable_nat

在运行:lsmod | grep nat

使用modprobe iptable_nat可能重新启动后就失效,这个时候你需要

echo "modprobe iptable_nat" >> /etc/sysconfig/modules/iptable_nat.modules

chmod +x /etc/sysconfig/modules/iptable_nat.modules

在启动media-relay就成功了。



如果在有疑问或需要沟通的地方,可以QQ:1354608370 或 加FreeSWITCH+Kamailio+Opensips QQ群: 293697898 沟通交流!