1.环境:

本文测试Kamailio 5.2  freeswitch 1.10.3    fs 和 kamailio 部署在阿里云公网ip:47.xx  内网172.xx

官方文档http://kb.asipto.com/freeswitch:kamailio-3.3.x-freeswitch-1.2.x-sbc

2.安装:

https://kamailio.org/docs/tutorials/5.2.x/kamailio-install-guide-git/  5.2 其他的版本到https://www.kamailio.org/w/documentation/

一步步操作就行

fs 安装好  官方也有文档

3.官方说明

Following services are handled in the scenario built within document:

  • kamailio

    • user authentication

    • user registration

    • user location

    • call routing

    • instant messaging and presence

  • freeswitch

    • voicemail

    • conference

    • SBC - this can be used for topology hiding, transcoding, prepaid or playing audio messages within calls

    • other media services (announcement, ivr, a.s.o)

配置参考上面地址的就行主要是WITH_FREESWITCH 定义的地方全拷过去

里面 freeswitch.bindip配置为外网ip 端口用sip的internal_sip_port

注意下这个拨号的规定就行

switch($rU) {case /"^41$":# 41 - voicebox menu# allow only authenticated usersif($au==$null){sl_send_reply("403", "Not allowed");exit;}$rU = "vm-" + $au;break;case /"^441[0-9][0-9]$":# starting with 44 folowed by 1XY - direct call to voice boxstrip(2);route(FSVBOX);break;case /"^433[01][0-9][0-9]$":# starting with 433 folowed by (0|1)XY - conferencestrip(2);break;case /"^45[0-9]+$":strip(2);break;default:# offline - send to voiceboxif (!registered("location")){route(FSVBOX);exit;}# online - do bridgingprefix("kb-");if(is_method("INVITE")){# in case of failure - re-route to FreeSWITCH VoiceMailt_on_failure("FAIL_FSVBOX");}}

注意下会议的拨号433000  和相互拨打的会加个prefix("kb-")前缀  fs日志看的到的到时候

启动kamailio 没错误就行

./sbin/kamailio -P /var/run/kamailio/kamailio.pid -m 128 -M 12

最后添加100 101两个用户

3.fs配置

修改conf/vars.xml里面的

<X-PRE-PROCESS cmd="set" data="internal_auth_calls=false"/>  false

修改conf/autoload_configs/acl.conf.xml 为kamailio内网ip 和外网ip

 <list name="domains" default="deny"><node type="allow" domain="$${domain}"/><node type="allow" cidr="47.xx.xx.xx/32"/><node type="allow" cidr="172.xx.xx.xx/32"/>
</list>

修改 conf/dialplan/public.xml 注意为kamailio外网ip

 <extension name="from_kamailio"><condition field="network_addr" expression="^47\.xx\.xx\.xx$" /><condition field="destination_number" expression="^(.+)$"><action application="transfer" data="$1 XML default"/></condition></extension>

conf/dialplan/default.xml

 <extension name="vbox"><condition field="destination_number" expression="^vb-(1[0-9][0-9])$"><action application="answer"/><action application="voicemail" data="default ${domain_name} $1"/></condition></extension><extension name="vmenu"><condition field="destination_number" expression="^vm-(1[0-9][0-9])$"><action application="voicemail" data="check default ${domain_name} $1"/></condition></extension><extension name="kbridge"><condition field="destination_number" expression="^kb-(.+)$"><action application="set" data="proxy_media=true"/>      mod_sofia的proxy sdp 地址获取是空的 日志可以看到  sofia_glue.c:1620 sofia/internal/100@xx:6060 sending invite version: 1.10.3-release  64bit <action application="set" data="call_timeout=50"/><action application="set" data="continue_on_fail=true"/><action application="set" data="hangup_after_bridge=true"/><action application="set" data="sip_invite_domain=192.168.178.23"/>//这里改成kamailio外网<action application="export" data="sip_contact_user=ufs"/><action application="bridge" data="sofia/(fs外网IP)/$1@192.168.178.23"/>//这里改成kamailio外网<action application="answer"/><action application="voicemail" data="default ${domain_name} $1"/></condition></extension>

好的基本可以了

100 用户登陆可以测试呼叫433000  参加会议

100 用户登陆可以测试呼叫101  相互通话

注意下default.xml的配置和fs 的nat 问题就没问题了

还可以 使用kamailio的pike 对注册ip的限制  屏蔽一些国外的不断注册 invite 也是如此 

你还可以用2个kamailio做数据共享(dmq)多个代理

sbc用load_dispatcher 2个fs 共享数据库就行

交流群261074724 或技术help https://shop121230895.taobao.com/

公网Kamailio 代理 freeswitch 和做 sbc相关推荐

  1. freeswitch系列二 kamailio 5.0安装及实现kamailio集成freeswitch

    1. 概述 kamailio是个纯粹的SIP服务器.本文介绍先如何在debian8下安装debian5.0,然后详细介绍如何实现使用kamailio做freeswitch均衡负载.kamailio同时 ...

  2. 手游代理是怎么做的?

    手游代理是我们普通人接触到手游运营的最主要的方式之一.手游代理到底是什么?手游代理是怎么做的?手游代理的基本流程是什么? 手游代理首先要寻找一个可靠的有实力手游代理平台,这是我们进行手游代理的前提.选 ...

  3. 如何利用动态代理IP来做SEO(网络营销)

    对动态代理IP大家都不陌生,今天我们来聊下如何利用动态代理ip来做SEO优化.其实除了SEO很多网络营销也都需要用到代理IP,因为很多网络营销的用户都知道,投票.注册帐号.发帖子等工作,都需要用到代理 ...

  4. 外呼系统《OpenSIPS2.4代理FreeSwitch》(2022版)

    外呼系统之 FreeSwitch 高可用,OpenSIPS2.4 做代理服务器 OpenSIPS介绍 进入正文 总结 OpenSIPS介绍 OpenSIPS (Open SIP Server) is ...

  5. java 使用本机代理_Java与本机代理–他们所做的强大功能

    java 使用本机代理 在安装代理之前应了解的内容及其对代码的影响 在构建可伸缩的服务器端应用程序时,我们花费大量时间思考如何在生产中监视,操作和更新代码. 已经开发出一种新的工具来帮助Java和Sc ...

  6. Java与本机代理–他们所做的强大功能

    在安装代理之前应了解的内容以及它如何影响您的代码 在构建可伸缩的服务器端应用程序时,我们花费大量时间思考如何在生产中监视,操作和更新代码. 已经开发出一种新的工具来帮助Java和Scala开发人员做到 ...

  7. 代理记账需要做哪些工作

    代理业务编辑 一般,代理机构会提供以下业务: 1.整理原始单据.记账凭证: 2.出具财务报表(资产负债表.损益表): 3.每月纳税申报及税款交纳,年度所得税汇算清缴: 4.新公司国地税报到等: 另外, ...

  8. python代理charles_Mitmproxy + Python 做拦截代理

    在测试过程中,我们经常用到Charles.Fiddler等抓包工具,通过抓取http请求进行相关的测试.问题排查.但是在一些特殊场景下,例如我们的数据传输是加密的,可能需要抓取到数据后再进行解密,这个 ...

  9. 如何遥开内外网穿透的问题 --- MCU做简单外网代理

    如何遥开内外网穿透的问题 --- MCU做简单外网代理 上头要求研究如何让一个在某一内网里的MCU所召开的会议让外网EP(公网或其他能到达公网的EP)参加进来. 我提出了两个方案: 1. 把原有使用o ...

  10. python ip动态代理_给自己的爬虫做一个简单的动态代理池

    使用代理服务器一直是爬虫防BAN最有效的手段,但网上的免费代理往往质量很低,大部分代理完全不能使用,剩下能用的代理很多也只有几分钟的寿命,没法直接用到爬虫项目中. 下面简单记录一下我用scrapy+r ...

最新文章

  1. Java项目:网上商城系统(java+SSM+jsp+mysql+maven)
  2. Windows 10 powershell 中文乱码解决方案
  3. 符号说明表怎么做_教会你的孩子正确使用标点符号
  4. boost::units::information相关的测试程序
  5. ITK:计算图像的正向FFT
  6. react 导航条选中颜色_调整安卓手机的颜色以更好地查看一切
  7. Unity SRP从零搭建一套图形渲染管线
  8. 电机驱动详解--从原理到智能车驱动(DRV8701)
  9. golang的优劣与前景分析
  10. java根据日期计算农历_Java给定公历日期计算相应农历/阴历日期
  11. PCA 实践 利用 PCA 算法对人脸数据集内所有人进行降维和特征提取 PCA原理解析+代码
  12. Python 猴子偷桃
  13. 苹果账号申请流程——99刀(个人版或公司版 ),299刀(企业版)
  14. 《工业控制系统信息安全防护指南》实施建议(下)
  15. mysql汉字按英文字母排序
  16. Redis 之 subscribe 订阅模式封装
  17. 安排,都安排上!双11天气预报惊现“杰克马”:十亿,安排妥了!
  18. 科大奥锐干涉法测微小量实验的数据_干涉法测微小量-集美大学基础物理虚拟仿真实验教学中心 | 物理实验中心...
  19. 冥冥中的感觉,是梦非梦
  20. 三个故事,说穿了许多人

热门文章

  1. 网络广告的12种计费方式
  2. 计算机发挥cpu全部,怎样提升CPU性能?怎么让CPU发挥最大的性能
  3. .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  4. 机器学习核心概念完全解析(建议收藏)
  5. LeNet论文阅读笔记
  6. [Silverlight C#]反向波兰语表示法计算器教程
  7. 常见互联网职业英文简写,你是哪个O?
  8. vscode 文件夹中查找_VSCode 多文件搜索和替换
  9. Cpp 语法基础总结
  10. 一文读懂微生物扩增子16s测序