知乎專欄 | 多維度架構 | 微信號 netkiller-ebook | QQ群:128659835 請註明“讀者” |
目錄
OpenSER SIP Server 已經更名為 OpenSIPS
http://www.openser.org/ 域名將跳轉至 http://www.opensips.org/
centos 6.5 環境預設 opensips 包含如下軟件包版本為1.7
# yum search opensips
opensips-jabber.x86_64 : Gateway between OpenSIPS and a jabber server opensips-mysql.x86_64 : MySQL Storage Support for the OpenSIPS opensips-perl.x86_64 : Helps implement your own OpenSIPS extensions in Perl opensips-postgresql.x86_64 : PostgreSQL Storage Support for the OpenSIPS opensips-snmpstats.x86_64 : SNMP management interface for the OpenSIPS opensips-tlsops.x86_64 : TLS-relating functions for the OpenSIPS opensips-unixodbc.x86_64 : OpenSIPS unixODBC Storage support opensips-xmpp.x86_64 : Gateway between OpenSIPS and a jabber server opensips.x86_64 : Open Source SIP Server opensips-aaa_radius.x86_64 : RADIUS backend for AAA api opensips-acc.x86_64 : Accounts transactions information to different backends opensips-auth_aaa.x86_64 : Performs authentication using an AAA server opensips-auth_diameter.x86_64 : Performs authentication using a Diameter server opensips-b2bua.x86_64 : Back-2-Back User Agent opensips-carrierroute.x86_64 : Routing extension suitable for carriers opensips-cpl-c.x86_64 : Call Processing Language interpreter opensips-db_berkeley.x86_64 : Berkley DB backend support opensips-db_http.x86_64 : HTTP DB backend support opensips-event_datagram.x86_64 : Event datagram module opensips-h350.x86_64 : H350 implementation opensips-ldap.x86_64 : LDAP connector opensips-mmgeoip.x86_64 : Wrapper for the MaxMind GeoIP API opensips-peering.x86_64 : Radius peering opensips-perlvdb.x86_64 : Perl virtual database engine opensips-presence.x86_64 : Presence server opensips-presence_callinfo.x86_64 : SIMPLE Presence extension opensips-presence_dialoginfo.x86_64 : Extension to Presence server for Dialog-Info opensips-presence_mwi.x86_64 : Extension to Presence server for Message Waiting Indication opensips-presence_xcapdiff.x86_64 : Extension to Presence server for XCAP-DIFF event opensips-presence_xml.x86_64 : SIMPLE Presence extension opensips-pua.x86_64 : Offer the functionality of a presence user agent client opensips-pua_bla.x86_64 : BLA extension for PUA opensips-pua_dialoginfo.x86_64 : Dialog-Info extension for PUA opensips-pua_mi.x86_64 : Connector between usrloc and MI interface opensips-pua_usrloc.x86_64 : Connector between usrloc and pua modules opensips-pua_xmpp.x86_64 : SIMPLE-XMPP Presence gateway opensips-python.x86_64 : Python scripting support opensips-regex.x86_64 : RegExp via PCRE library opensips-rls.x86_64 : Resource List Server opensips-seas.x86_64 : Transfers the execution logic control to a given external entity opensips-sms.x86_64 : Gateway between SIP and GSM networks via sms opensips-xcap_client.x86_64 : XCAP client
Version : 1.7.2
# yum info opensips Loaded plugins: fastestmirror, presto, refresh-packagekit Loading mirror speeds from cached hostfile * base: mirrors.hust.edu.cn * epel: mirrors.vinahost.vn * extras: mirrors.neusoft.edu.cn * updates: mirrors.tuna.tsinghua.edu.cn Installed Packages Name : opensips Arch : x86_64 Version : 1.7.2 Release : 2.el6 Size : 5.1 M Repo : installed From repo : epel Summary : Open Source SIP Server URL : http://opensips.org License : GPLv2+ Description : OpenSIPS or Open SIP Server is a very fast and flexible SIP (RFC3261) : proxy server. Written entirely in C, opensips can handle thousands calls : per second even on low-budget hardware. A C Shell like scripting language : provides full control over the server's behaviour. It's modular : architecture allows only required functionality to be loaded. : Currently the following modules are available: digest authentication, : CPL scripts, instant messaging, MySQL and UNIXODBC support, a presence agent, : radius authentication, record routing, an SMS gateway, a jabber gateway, a : transaction and dialog module, OSP module, statistics support, : registrar and user location.
安裝 opensips
# yum install opensips
啟動 opensips
# /etc/init.d/opensips start
安裝 yum.opensips.org 源
# rpm -ivh http://yum.opensips.org/1.10/releases/el/6/x86_64/opensips-yum-releases-1.10-1.el6.noarch.rpm Retrieving http://yum.opensips.org/1.10/releases/el/6/x86_64/opensips-yum-releases-1.10-1.el6.noarch.rpm warning: /var/tmp/rpm-tmp.M3Govv: Header V4 DSA/SHA1 Signature, key ID 5f2fbb7c: NOKEY Preparing... ########################################### [100%] 1:opensips-yum-releases ########################################### [100%]
查看版本,正確應該是Version : 1.10.0
# yum info opensips Loaded plugins: fastestmirror, presto, refresh-packagekit Loading mirror speeds from cached hostfile * base: mirrors.hust.edu.cn * epel: mirrors.vinahost.vn * extras: mirrors.neusoft.edu.cn * updates: mirrors.tuna.tsinghua.edu.cn Available Packages Name : opensips Arch : x86_64 Version : 1.10.0 Release : 1.el6 Size : 5.5 M Repo : opensips Summary : Open Source SIP Server URL : http://opensips.org License : GPLv2+ Description : OpenSIPS or Open SIP Server is a very fast and flexible SIP (RFC3261) : proxy server. Written entirely in C, opensips can handle thousands calls : per second even on low-budget hardware. A C Shell like scripting language : provides full control over the server's behaviour. It's modular : architecture allows only required functionality to be loaded. : Currently the following modules are available: digest authentication, : CPL scripts, instant messaging, MySQL and UNIXODBC support, a presence agent, : radius authentication, record routing, an SMS gateway, a jabber gateway, a : transaction and dialog module, OSP module, statistics support, : registrar and user location.
該版本有如下軟件包
opensips-jabber.x86_64 : Gateway between OpenSIPS and a jabber server opensips-mysql.x86_64 : MySQL Storage Support for the OpenSIPS opensips-perl.x86_64 : Helps implement your own OpenSIPS extensions in Perl opensips-postgresql.x86_64 : PostgreSQL Storage Support for the OpenSIPS opensips-snmpstats.x86_64 : SNMP management interface for the OpenSIPS opensips-tlsops.x86_64 : TLS-relating functions for the OpenSIPS opensips-unixodbc.x86_64 : OpenSIPS unixODBC Storage support opensips-xmpp.x86_64 : Gateway between OpenSIPS and a jabber server opensips-yum-releases.noarch : OpenSIPS 1.10 RPMs for el6 - Yum Repository Configuration opensips.x86_64 : Open Source SIP Server opensips-aaa_radius.x86_64 : RADIUS backend for AAA api opensips-acc.x86_64 : Accounts transactions information to different backends opensips-auth_aaa.x86_64 : Performs authentication using an AAA server opensips-auth_diameter.x86_64 : Performs authentication using a Diameter server opensips-b2bua.x86_64 : Back-2-Back User Agent opensips-carrierroute.x86_64 : Routing extension suitable for carriers opensips-cpl-c.x86_64 : Call Processing Language interpreter opensips-db_berkeley.x86_64 : Berkley DB backend support opensips-db_http.x86_64 : HTTP DB backend support opensips-db_perlvdb.x86_64 : Perl virtual database engine opensips-event_datagram.x86_64 : Event datagram module opensips-event_rabbitmq.x86_64 : Event RabbitMQ module opensips-event_route.x86_64 : Route triggering based on events opensips-event_xmlrpc.x86_64 : Event XMLRPC client module opensips-h350.x86_64 : H350 implementation opensips-httpd.x86_64 : HTTP transport layer implementation opensips-json.x86_64 : A JSON variables within the script opensips-ldap.x86_64 : LDAP connector opensips-memcached.x86_64 : Memcached connector opensips-mmgeoip.x86_64 : Wrapper for the MaxMind GeoIP API opensips-peering.x86_64 : Radius peering opensips-perlvdb.x86_64 : Perl virtual database engine opensips-pi_http.x86_64 : Provisioning Interface module opensips-presence.x86_64 : Presence server opensips-presence_callinfo.x86_64 : SIMPLE Presence extension opensips-presence_dialoginfo.x86_64 : Extension to Presence server for Dialog-Info opensips-presence_mwi.x86_64 : Extension to Presence server for Message Waiting Indication opensips-presence_xcapdiff.x86_64 : Extension to Presence server for XCAP-DIFF event opensips-presence_xml.x86_64 : SIMPLE Presence extension opensips-pua.x86_64 : Offer the functionality of a presence user agent client opensips-pua_bla.x86_64 : BLA extension for PUA opensips-pua_dialoginfo.x86_64 : Dialog-Info extension for PUA opensips-pua_mi.x86_64 : Connector between usrloc and MI interface opensips-pua_usrloc.x86_64 : Connector between usrloc and pua modules opensips-pua_xmpp.x86_64 : SIMPLE-XMPP Presence gateway opensips-python.x86_64 : Python scripting support opensips-redis.x86_64 : Redis connector opensips-regex.x86_64 : RegExp via PCRE library opensips-rest_client.x86_64 : Implementation of an HTTP client opensips-rls.x86_64 : Resource List Server opensips-seas.x86_64 : Transfers the execution logic control to a given external entity opensips-sms.x86_64 : Gateway between SIP and GSM networks via sms opensips-xcap.x86_64 : XCAP API provider opensips-xcap_client.x86_64 : XCAP client opensips-xmlrpc.x86_64 : A xmlrpc server
安裝 opensips
yum install opensips
安裝認證資料庫,選擇其中一種
yum install opensips-mysql yum install opensips-postgresql yum install opensips-db_berkeley
配置監聽地址
# vim opensips.cfg #listen=udp:127.0.0.1:5060 # CUSTOMIZE ME listen=udp:192.168.6.9:5060 # 註釋上面一行,新增一行
啟動opensips
service opensips start
查看UDP連接埠
# netstat -lnu | grep 5060 udp 0 0 192.168.6.9:5060 0.0.0.0:*