Open5gs: Install Apps Pendukung dan RTPEngine

From OnnoWiki
Jump to navigation Jump to search

Install Aplikasi Pendukung Sekaligus

sudo su
apt update
apt upgrade
apt -y install debhelper libxtables-dev libip6tc-dev libip4tc-dev libcurl4-openssl-dev libpcre3-dev libxmlrpc-core-c3-dev markdown libavfilter-dev libavformat-dev libevent-dev libglib2.0-dev libhiredis-dev libjson-glib-dev libpcap0.8-dev libpcap-dev libssl-dev dkms module-assistant nfs-common libb-hooks-op-check-perl libexporter-tidy-perl libbencode-perl libcrypt-rijndael-perl libdigest-hmac-perl libio-socket-inet6-perl libsocket6-perl libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libbcg729-dev libbencode-perl libcrypt-openssl-rsa-perl libcrypt-rijndael-perl libdigest-crc-perl libdigest-hmac-perl libevent-dev libglib2.0-dev libhiredis-dev libio-multiplex-perl libio-socket-inet6-perl libiptc-dev libjson-glib-dev libjson-perl libmosquitto-dev libnet-interface-perl libopus-dev libpcap0.8-dev libpcre3-dev libsocket6-perl libspandsp-dev libssl-dev libswresample-dev libsystemd-dev libtest2-suite-perl libwebsockets-dev libxmlrpc-core-c3-dev libxtables-dev markdown pandoc python3-websockets zlib1g-dev libcurl4-openssl-dev libconfig-tiny-perl nfs-common libnfsidmap1 rpcbind bind9 curl tcpdump screen ntp ntpdate git gcc flex bison make libssl-dev libcurl4-openssl-dev libxml2-dev libpcre3-dev bash-completion g++ autoconf rtpproxy libmnl-dev libsctp-dev strongswan libradcli-dev libradcli4 python3-dev kamailio kamailio-mysql-modules kamailio-ims-modules kamailio-outbound-modules kamailio-presence-modules kamailio-xml-modules kamailio-tls-modules kamailio-utils-modules kamailio-sctp-modules kamailio-xmpp-modules debhelper dh-autoreconf gcc g++ make software-properties-common net-tools ant plocate

Install Aplikasi Pendukung

apt update
apt upgrade
apt-get -y install debhelper libcurl4-openssl-dev libpcre3-dev libxmlrpc-core-c3-dev markdown libavfilter-dev libavformat-dev libevent-dev libglib2.0-dev libhiredis-dev libjson-glib-dev libpcap0.8-dev libpcap-dev libssl-dev dkms module-assistant nfs-common libb-hooks-op-check-perl libexporter-tidy-perl libbencode-perl libcrypt-rijndael-perl libdigest-hmac-perl libio-socket-inet6-perl libsocket6-perl
apt -y install dh-sequence-dkms gperf libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libbcg729-dev libbencode-perl libcrypt-openssl-rsa-perl libcrypt-rijndael-perl libdigest-crc-perl libdigest-hmac-perl libevent-dev libglib2.0-dev libhiredis-dev libio-multiplex-perl libio-socket-inet6-perl libiptc-dev libjson-glib-dev libjson-perl libmosquitto-dev libnet-interface-perl libopus-dev libpcap0.8-dev libpcre3-dev libsocket6-perl libspandsp-dev libssl-dev libswresample-dev libsystemd-dev libtest2-suite-perl libwebsockets-dev libxmlrpc-core-c3-dev libxtables-dev markdown pandoc python3-websockets zlib1g-dev libcurl4-openssl-dev libconfig-tiny-perl nfs-common libnfsidmap1 rpcbind
apt -y install bind9 curl
apt -y install tcpdump screen ntp ntpdate git dkms gcc flex bison make libssl-dev libcurl4-openssl-dev libxml2-dev libpcre3-dev bash-completion g++ autoconf rtpproxy libmnl-dev libsctp-dev strongswan libradcli-dev libradcli4 python3-dev mariadb-server 
sudo apt -y install kamailio kamailio-mysql-modules kamailio-ims-modules kamailio-outbound-modules kamailio-presence-modules kamailio-xml-modules kamailio-tls-modules kamailio-utils-modules kamailio-sctp-modules kamailio-xmpp-modules

Install RTPEngine

apt -y install debhelper dh-autoreconf default-libmysqlclient-dev
cd /usr/local/src
git clone https://github.com/sipwise/rtpengine.git
cd rtpengine
./debian/flavors/no_ngcp
dpkg-buildpackage
cd ..
dpkg -i ngcp-rtpengine-daemon_11.5.0.0+0~mr11.5.0.0_amd64.deb
dpkg -i ngcp-rtpengine-iptables_11.5.0.0+0~mr11.5.0.0_amd64.deb
dpkg -i ngcp-rtpengine-kernel-dkms_11.5.0.0+0~mr11.5.0.0_all.deb
dpkg -i ngcp-rtpengine-iptables-dbgsym_11.5.0.0+0~mr11.5.0.0_amd64.ddeb
dpkg -i ngcp-rtpengine-recording-daemon-dbgsym_11.5.0.0+0~mr11.5.0.0_amd64.ddeb
dpkg -i ngcp-rtpengine-daemon-dbgsym_11.5.0.0+0~mr11.5.0.0_amd64.ddeb
dpkg -i ngcp-rtpengine-recording-daemon_11.5.0.0+0~mr11.5.0.0_amd64.deb
dpkg -i ngcp-rtpengine-utils_11.5.0.0+0~mr11.5.0.0_all.deb
dpkg -i ngcp-rtpengine_11.5.0.0+0~mr11.5.0.0_all.deb

Konfigurasi

Copy konfigurasi,

cp /etc/rtpengine/rtpengine-recording.sample.conf /etc/rtpengine/rtpengine-recording.conf
cp /etc/rtpengine/rtpengine.sample.conf /etc/rtpengine/rtpengine.conf

Masukan nama interface dibawah [rtpengine]:

vi /etc/rtpengine/rtpengine.conf
[rtpengine]
...
...
# interface = any
interface = 10.45.0.1

Set port yang digunakan rtpengine harus sesuai dengan kamailio_pcscf.cfg pada modparam(rtpengine …)

# ----- rtpproxy params -----
modparam("rtpengine", "rtpengine_sock", "1 == udp:localhost:2223")


Edit sebagai berikut,

vi /etc/default/ngcp-rtpengine-daemon
RUN_RTPENGINE=yes

dan,

vi /etc/default/ngcp-rtpengine-recording-daemon
RUN_RTPENGINE_RECORDING=yes


Restart,

mkdir -p /var/spool/rtpengine
systemctl restart ngcp-rtpengine-daemon.service ngcp-rtpengine-recording-daemon.service ngcp-rtpengine-recording-nfs-mount.service
systemctl enable ngcp-rtpengine-daemon.service ngcp-rtpengine-recording-daemon.service ngcp-rtpengine-recording-nfs-mount.service
systemctl stop rtpproxy
systemctl disable rtpproxy
systemctl mask rtpproxy

Second instance dari RTPENGINE dapat di run sebagai berikut (Optional)

iptables -I rtpengine -p udp -j RTPENGINE --id 1
ip6tables -I INPUT -p udp -j RTPENGINE --id 1
echo 'del 1' > /proc/rtpengine/control
/usr/sbin/rtpengine --table=1 --interface=10.45.0.1 --listen-ng=127.0.0.1:2224 --tos=184 --pidfile=ngcp-rtpengine-daemon2.pid --no-fallback --foreground

Referensi


Pranala Menarik