博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HowTo:freeswitch在多网卡服务器下如何配置
阅读量:5109 次
发布时间:2019-06-13

本文共 2800 字,大约阅读时间需要 9 分钟。

HowTo:freeswitch在多网卡服务器下如何配置

edit by jizhask, 2011-10-20

关于如何指定FreeSWITCH使用多网卡服务器上的某一个IP地址,FS官网给了新的方法,如下:

设置方法:

1、修改文件internal.xml和external.xml

位置:/usr/local/freeswitch/conf/sip_profiles/internal.xml

修改内容:

<param name="rtp-ip" value="192.168.1.3"/>

<param name="sip-ip" value="192.168.1.3"/>

注:192.168.1.3为指定的IP地址

2、修改文件sofia.conf.xml

位置:/usr/local/freeswitch/conf/autoload_configs/sofia.conf.xml

修改内容:

<param name="auto-restart" value="false"/>

该属性设置的目的是防止FS在检测到IP地址发生改变后,自动重启sofia模块。

3、重启FreeSWITCH,开始测试。

over.

下面是旧的设置方法,不担保是否有问题----------------------------------------------------------

本篇教程基于Centos 5.5下面的FreeSWITCH1.0.6,使用的是FreeSWITCH自带的样例配置文件。

服务器网络配置如下:

        eth0:连接公网,拥有动态IP(使用DHCP获取)
        eth1:连接内网,拥有静态IP
该教程假设已经有一个号码为1000的sip话机连接到系统上,用于呼入呼出。系统默认配置文件
位于/usr/local/freeswitch/conf.
下面为具体的设置步骤:
1、打开conf目录下的vars.xml文件,并做如下修改:
    1)查找变量domain,并修改为公网IP地址或DNS地址
            <X-PRE-PROCESS cmd="set" data="domain=(公网IP)"/>
            
    2)移动到文件末尾,增加如下变量
        其中,$${local_ip_v4}代表系统所在的公网地址,192.168.100.1是用于连接内网的私有IP地址
            <X-PRE-PROCESS cmd="set" data="external_sip_ip=$${local_ip_v4}"/>
            <X-PRE-PROCESS cmd="set" data="external_rtp_ip=$${local_ip_v4}"/>
            <X-PRE-PROCESS cmd="set" data="internal_sip_ip=192.168.100.1"/>
            <X-PRE-PROCESS cmd="set" data="internal_rtp_ip=192.168.100.1"/>
2、修改sip的external与internal配置文件
    打开sip_profile/external.xml文件,反注释下面的行:
        <param name="force-register-domain" value="$${domain}"/>
        <param name="force-register-db-domain" value="$${domain}"/>
        <param name="dbname" value="share_presence"/>
        <param name="presence-hosts" value="$${domain}"/>
            
    打开sip_profile/internal.xml文件,反注释相同的行:
        <param name="force-register-domain" value="$${domain}"/>
        <param name="force-register-db-domain" value="$${domain}"/>
        <param name="dbname" value="share_presence"/>
        <param name="presence-hosts" value="$${domain}"/>
3、向sip profile中添加网关配置            
打开文件sip_profile/external/example.xml,进行必要的修改,以便连接到sip服务提供商那。具体的配置教程很多,不再详述。需要注意的是要将网关名称改为“multi-example”,后面会用到。
    <gateway name="multi-example">
4、添加由上一步添加的网关呼入的路由
为了让系统可以正确的路由DID,需要修改拨号方案文件:dialplan/public/00_inbound_did.xml。根据sip provider传递过来的目标号码,修改destination_number表达式的值,如下:
修改前:  <condition field="destination_number" expression="^(phonenumber)$">
修改后:  <condition field="destination_number" expression="^(4075551234)$">
5、修改呼出路由,应用上面添加的网关配置
为了能让系统跑起来并运行正常,最后要修改的配置是在呼叫路由中添加第三步中配置的sip provider。修改文件dialplan/default/01_example.com.xml,并做如下修改:
找到<extension name="domestic.example.com"> 所在的块,
    修改前: <action application="bridge" data="sofia/gateway/${default_gateway}/$1"/>
    修改后: <action application="bridge" data="sofia/gateway/multi-example /$1"/>
6、最后一步,重新加载配置文件和sip模块
    >reloadxml
    >reload mod_sofia
   或者,直接重启FreeSWITCH。
   所有的操作完成后,就可以拨打你所配置的DID号码,紧接着你的sip话机就会开始振铃。同样,也可以通过sip话机拨打外线电话。
原文地址:http://wiki.freeswitch.org/wiki/Multi_Homed_Dual_NIC_How_To

转载于:https://www.cnblogs.com/jizha/archive/2011/09/28/2231126.html

你可能感兴趣的文章
Linux操作系统 和 Windows操作系统 的区别
查看>>
《QQ欢乐斗地主》山寨版
查看>>
文件流的使用以及序列化和反序列化的方法使用
查看>>
Android-多线程AsyncTask
查看>>
第一个Spring冲刺周期团队进展报告
查看>>
C++函数基础知识
查看>>
红黑树 c++ 实现
查看>>
Android 获取网络链接类型
查看>>
报表服务框架:WEB前端UI
查看>>
linux中启动与终止lnmp的脚本
查看>>
gdb中信号的处理[转]
查看>>
LeetCode【709. 转换成小写字母】
查看>>
如何在Access2007中使用日期类型查询数据
查看>>
Jzoj4757 树上摩托
查看>>
CF992E Nastya and King-Shamans(线段树二分+思维)
查看>>
oracle 几个时间函数探究
查看>>
第一个Java Web程序
查看>>
树状数组_一维
查看>>
如果没有按照正常的先装iis后装.net的顺序,可以使用此命令重新注册一下:
查看>>
linux install ftp server
查看>>