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:kamailio 推荐使用rtpproxy