1、前期准备
- Debian 10.10
- 安装环境依赖
apt-get update \
&& apt-get -y --quiet --force-yes upgrade curl iproute2 \
&& apt-get install -y --no-install-recommends ca-certificates gcc g++ make build-essential git iptables-dev libavfilter-dev \
libevent-dev libpcap-dev libxmlrpc-core-c3-dev markdown git \
libjson-glib-dev default-libmysqlclient-dev libhiredis-dev libssl-dev \
libcurl4-openssl-dev libavcodec-extra gperf libspandsp-dev libwebsockets-dev libmosquitto-dev \
- 安装 bcg729 依赖环境,参考 https://github.com/ossobv/bcg729-deb
# 指定版本
VER=1.0.4
# 下载源码
curl https://codeload.github.com/BelledonneCommunications/bcg729/tar.gz/$VER >bcg729_$VER.orig.tar.gz
# 解压
tar zxf bcg729_$VER.orig.tar.gz
# 进入文件夹
cd bcg729-$VER
# clone 源码
git clone https://github.com/ossobv/bcg729-deb.git debian
# 编译成deb安装包
dpkg-buildpackage -us -uc -sa
# 安装deb文件
dpkg -i libbcg729-*.deb
2、编译
参考:https://github.com/sipwise/rtpengine
# 下载源码
git clone https://github.com/sipwise/rtpengine.git
# 进入文件夹
cd rtpengine
# 检查环境是否满足,会提示未安装的依赖环境,需要安装完成再执行一遍
dpkg-checkbuilddeps
# 编译成deb安装包,输出到上一层目录
dpkg-buildpackage
# 安装deb文件
cd ../
dpkg -i *.deb
# 安装deb包时,不满足依赖环境,需要执行
apt-get -f install
# 重新安装deb文件
dpkg -i *.deb
3、启动
# 端口192.168.10.113:7722监听,执行ng协议,两个网卡的地址分别为192.168.10.113、192.168.10.113,线程数目为32个,priv和pub两个ip分属内外网两块网卡
rtpengine -n 192.168.10.113:7722 --interface=pub/192.168.10.113 --interface=priv/192.168.10.113 --log-facility=local3 --num-threads=32 --tos=184
# 在UDP端口127.0.0.1:7722监听,执行ng协议,使用接口10.10.200.77,两个网卡的地址分别为10.10.28.131、192.168.28.131,线程数目为32个, 在rtpengine/daemon目录下
rtpengine -n 127.0.0.1:7722 --interface=pub/10.10.28.131 --interface=priv/192.168.28.131 --log-facility=local3 --num-threads=32 --tos=184
参考:
开源的 softswitch-gateway 项目:https://github.com/Atoms-Cat/softswitch-gateway
oepnsips、freeswitch高可用实现方案部署