freeswitch在多網卡服務器下如何指定IP地址

freeswitch在多網卡服務器下如何指定IP地址  

2013-03-19 16:33:50|  分類:            FreeSwitch            |  標籤:                   |舉報          |字號 訂閱       

關於如何指定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話機撥打外線電話。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章