HoRain云--Ubuntu 22.04 源码编译OpenSIPS 3.4.3与SIP协议测试指南
配置优化:包含TLS和WebSocket的快速配置方法

🎬 HoRain云小助手:个人主页
🔥 个人专栏: 《Linux 系列教程》《c语言教程》
⛺️生活的理想,就是为了理想的生活!
⛳️ 推荐
前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。
专栏介绍
|
专栏名称 |
专栏介绍 |
|
本专栏主要撰写C干货内容和编程技巧,让大家从底层了解C,把更多的知识由抽象到简单通俗易懂。 |
|
|
本专栏主要是注重从底层来给大家一步步剖析网络协议的奥秘,一起解密网络协议在运行中协议的基本运行机制! |
|
|
全面深入解析 docker 容器,从基础到进阶,涵盖原理、操作、实践案例,助您精通 docker。 |
|
|
本专栏主要撰写Linux干货内容,从基础到进阶,知识由抽象到简单通俗易懂,帮你从新手小白到扫地僧。 |
|
|
本专栏着重撰写Python相关的干货内容与编程技巧,助力大家从底层去认识Python,将更多复杂的知识由抽象转化为简单易懂的内容。 |
|
|
本专栏主要是发布一些考试和练习题库(涵盖软考、HCIE、HRCE、CCNA等) |
目录

一、环境准备
- 系统要求:Ubuntu 20.04/22.04 LTS
- 推荐配置:2核CPU/2GB内存/20GB硬盘
- 更新系统:
sudo apt update && sudo apt upgrade -y
二、依赖安装
sudo apt install -y git gcc make flex bison \
libncurses5-dev libssl-dev libmysqlclient-dev \
libxml2-dev pkg-config
三、源码编译(耗时约15分钟)
wget https://opensips.org/pub/opensips/3.4.3/opensips-3.4.3.tar.gz
tar zxvf opensips-3.4.3.tar.gz
cd opensips-3.4.3
./configure \
--prefix=/usr/local/opensips \
--enable-mysql \
--enable-tls \
--enable-websockets
make -j$(nproc) && sudo make install
四、快速配置
- 创建配置目录:
sudo mkdir -p /etc/opensips
sudo install opensips.cfg /etc/opensips/
sudo install opensipsctlrc /etc/opensips/
- 数据库初始化:
mysql -u root -p
CREATE DATABASE opensips;
CREATE USER 'opensips'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL ON opensips.* TO 'opensips'@'localhost';
FLUSH PRIVILEGES;
exit
/usr/local/opensips/sbin/opensipsdbctl create
五、服务配置
修改/etc/opensips/opensips.cfg关键参数:
listen=udp:192.168.1.100:5060
mpath="/usr/local/opensips/lib/opensips/modules/"
# 数据库配置
db_url="mysql://opensips:your_password@localhost/opensips"
# 加载模块
loadmodule "db_mysql.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
六、服务管理
启动服务:
sudo /usr/local/opensips/sbin/opensipsctl start
查看状态:
sudo opensipsctl monitor
七、功能测试
- 创建测试用户:
sudo opensipsctl add 1000 123456
sudo opensipsctl add 1001 654321
- SIP注册测试(使用sipp工具):
sudo apt install sipp
# 发起注册请求
sipp -sf register.xml 192.168.1.100:5060 \
-s 1000 -ap 123456 -m 1
# 测试通话
sipp -sf uac.xml 192.168.1.100:5060 \
-s 1001 -ap 654321 -m 1 -d 5000
八、进阶配置建议
- TLS加密通信:
sudo openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365
- WebSocket支持:
listen=ws:192.168.1.100:5066
loadmodule "proto_ws.so"
九、排错指南
- 查看实时日志:
tail -f /var/log/opensips.log
- 常见错误处理:
- 注册失败:检查
usrloc和registrar模块加载状态 - 数据库连接失败:验证
db_url格式mysql://user:password@host/database - 端口占用:
sudo netstat -tulnp | grep 5060
- 性能优化:
children=64 # 根据CPU核心数调整
tcp_accept=64 # TCP连接处理数
memlog=1 # 启用内存日志
教程特点:
- 版本时效性:基于当前最新稳定版3.4.3
- 配置优化:包含TLS和WebSocket的快速配置方法
- 实战测试:提供完整的SIP注册和呼叫测试方案
- 性能调优:包含关键参数优化建议
建议配合官方文档(https://www.opensips.org/Documentation)阅读,可根据实际需求启用更多模块。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄
💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍
🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐

所有评论(0)