zoukankan      html  css  js  c++  java
  • Asterisk配置iax服务器

    做一个最基本的SIP以及IAX之间互相正常通信的测试。这对Asterisk的工作以及通信流程的了解相当有帮助。


    一.配置Asterisk相关文件:
    这里的配置我只是列出自己的定制部分,其他部分就不贴出来了。
    1.IAX配置文件
    [root@asterisk-test1 ~]# vi /etc/asterisk/iax.conf
    -------------------------------------------------------------------------------------
    [iax](!)
    type=friend
    context=test
    disallow=all
    allow=gsm
    qualify=yes
    host=dynamic
    transfer=no
    auth=md5



    [8801](iax)
    username=8801
    secret=123456
    context=test



    [8802](iax)
    username=8802
    secret=123456
    context=test
    -------------------------------------------------------------------------------------




    2.SIP配置文件
    [root@asterisk-test1 ~]# vi /etc/asterisk/sip.conf
    -------------------------------------------------------------------------------------
    [sip](!)
    type=friend
    host=dynamic
    disallow=all
    allow=gsm
    context=test



    [9901](sip)
    username=9901
    secret=123456



    [9902](sip)
    username=9902
    secrest=123456
    -------------------------------------------------------------------------------------




    3.配置拨号方案
    [root@asterisk-test1 ~]# vi /etc/asterisk/extensions.conf
    -------------------------------------------------------------------------------------
    [test]
    exten => _880X,1,Dial(IAX2/${EXTEN},,r)
    exten => _990X,1,Dial(SIP/${EXTEN},,r)
    -------------------------------------------------------------------------------------





    二.进入控制台调试:
    [root@asterisk-test1 asterisk]# asterisk -crvvv
    -------------------------------------------------------------------------------------
    Asterisk 1.4.5, Copyright (C) 1999 - 2007 Digium, Inc. and others.
    Created by Mark Spencer <markster@digium.com>
    Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
    This is free software, with components licensed under the GNU General Public
    License version 2 and other licenses; you are welcome to redistribute it under
    certain conditions. Type 'core show license' for details.
    =========================================================================
    == Parsing '/etc/asterisk/asterisk.conf': Found
    == Parsing '/etc/asterisk/extconfig.conf': Found
    Connected to Asterisk 1.4.5 currently running on asterisk-test1 (pid = 19690)
    Verbosity is at least 47
    Core debug is at least 255



    调整Debug级别
    asterisk-test1*CLI> core set debug 255
    Core debug is at least 255



    重新载入IAX配置
    asterisk-test1*CLI> iax2 reload
    == Parsing '/etc/asterisk/iax.conf': Found
    == Parsing '/etc/asterisk/users.conf': Found
    == Loaded firmware 'iaxy.bin'
    == Parsing '/etc/asterisk/iaxprov.conf': Found
    -- Loaded provisioning template 'default'



    重新载入SIP配置
    asterisk-test1*CLI> sip reload
    Reloading SIP*CLI>
    == Parsing '/etc/asterisk/sip.conf': Found
    == Parsing '/etc/asterisk/users.conf': Found
    == Parsing '/etc/asterisk/sip_notify.conf': Found



    重新载入拨号规则配置
    asterisk-test1*CLI> extensions reload
    == Parsing '/etc/asterisk/extensions.conf': Found
    == Setting global variable 'CONSOLE' to 'Console/dsp'
    == Setting global variable 'IAXINFO' to 'guest'
    == Setting global variable 'TRUNK' to 'Zap/g2'
    == Setting global variable 'TRUNKMSD' to '1'
    -- Registered extension context 'test'
    -- Added extension '_880X' priority 1 to test
    -- Added extension '_990X' priority 1 to test
    -------------------------------------------------------------------------------------





    三.注册终端:
    -------------------------------------------------------------------------------------
    注册SIP终端9901
    -- Registered SIP '9901' at 192.168.0.199 port 37624 expires 60
    -- Saved useragent "eyeBeam release 1004p stamp 31962" for peer 9901
    [Nov 5 14:47:33] NOTICE[19715]: chan_sip.c:12231 handle_response_peerpoke: Peer '9901' is now Reachable. (5ms / 2000ms)



    这册SIP终端9902
    -- Registered SIP '9902' at 192.168.0.149 port 23260 expires 3600
    -- Saved useragent "eyeBeam release 1004p stamp 31962" for peer 9902
    [Nov 5 14:48:21] NOTICE[19715]: chan_sip.c:12231 handle_response_peerpoke: Peer '9902' is now Reachable. (7ms / 2000ms)



    注册IAX终端8801  (测试iax协议的终端可以去 http://www.zoiper.com/softphone/ 下载)
    -- Registered IAX2 '8801' (AUTHENTICATED) at 192.168.0.199:4569
    [Nov 5 15:06:32] NOTICE[19708]: chan_iax2.c:5699 update_registry: Restricting registration for peer '8801' to 60 seconds (requested 300)



    注册IAX终端8802
    -- Registered IAX2 '8802' (AUTHENTICATED) at 192.168.0.149:4569
    [Nov 5 15:07:41] NOTICE[19707]: chan_iax2.c:5699 update_registry: Restricting registration for peer '8802' to 60 seconds (requested 300)
    -------------------------------------------------------------------------------------





    四.测试IAX之间呼叫:
    1.IAX被叫方挂断
    -------------------------------------------------------------------------------------
    -- Accepting AUTHENTICATED call from 192.168.0.199:
    接受经过验证的呼叫,接受8801呼叫8802。



    > requested format = gsm,
    > requested prefs = (),
    > actual format = gsm,
    > host prefs = (gsm),
    > priority = mine
    -- Executing [8802@test:1] Dial("IAX2/8801-4", "IAX2/8802||r") in new stack
    执行8801通道4向8802进行呼叫。



    -- Called 8802>
    -- Call accepted by 192.168.0.149 (format gsm)
    -- Format for call is gsm
    协商编解码为GSM。



    -- IAX2/8802-5 is ringing
    被叫方8802通道5产生振铃。

    -- IAX2/8802-5 answered IAX2/8801-4
    被叫方8802通道5应答了主叫方8801通道4。



    ...通话...



    -- Hungup 'IAX2/8802-5'
    被叫方8802通道5首先挂断。



    == Spawn extension (test, 8802, 1) exited non-zero on 'IAX2/8801-4'
    -- Hungup 'IAX2/8801-4'
    主叫方8801通道4之后断开。
    -------------------------------------------------------------------------------------




    2.IAX主叫方挂断
    -------------------------------------------------------------------------------------
    -- Accepting AUTHENTICATED call from 192.168.0.149:
    接受经过验证的呼叫,结合8802呼叫8801。



    > requested format = gsm,
    > requested prefs = (),
    > actual format = gsm,
    > host prefs = (gsm),
    > priority = mine
    -- Executing [8801@test:1] Dial("IAX2/8802-2", "IAX2/8801||r") in new stack
    执行8802通道2向8802进行呼叫。



    -- Called 8801>
    -- Call accepted by 192.168.0.199 (format gsm)
    -- Format for call is gsm
    协商编码呼叫为GSM。



    -- IAX2/8801-5 is ringing
    被叫方8801通道5进行振铃。



    -- IAX2/8801-5 answered IAX2/8802-2
    被叫方8801通道5应答了主叫方8802通道2。



    ...通话...



    -- Hungup 'IAX2/8802-2'
    主叫方8802通道2首先挂断。



    == Spawn extension (test, 8801, 1) exited non-zero on 'IAX2/8801-5'
    -- Hungup 'IAX2/8801-5'
    被叫方8801通道5之后断开。
    -------------------------------------------------------------------------------------





    五.测试SIP 之间呼叫:
    1.主叫方挂断
    -------------------------------------------------------------------------------------
    -- Executing [9902@test:1] Dial("SIP/9901-0854e7c8", "SIP/9902||r") in new stack
    执行9901呼叫9902。



    -- Called 9902>
    -- SIP/9902-08552730 is ringing
    被叫方9902振铃。



    Internal RTCP NTP clock skew detected: lsr=1110524996, now=1174799434, dlsr=809841730 (12357:204ms), diff=745567292
    -- SIP/9902-08552730 answered SIP/9901-0854e7c8
    被叫方9902应答了主叫方9901。



    -- Native bridging SIP/9901-0854e7c8 and SIP/9902-08552730
    Internal RTCP NTP clock skew detected: lsr=1127362869, now=1174802408, dlsr=808530993 (12337:203ms), diff=761091454
    建立连接,开始通话。

    == Spawn extension (test, 9902, 1) exited non-zero on 'SIP/9901-0854e7c8'
    主叫方9901挂断。
    -------------------------------------------------------------------------------------




    2.被叫方挂断
    -------------------------------------------------------------------------------------
    -- Executing [9902@test:1] Dial("SIP/9901-08549ad8", "SIP/9902||r") in new stack
    执行9901呼叫9902。



    -- Called 9902>
    -- SIP/9902-0854fc30 is ringing
    被叫方9902振铃。



    Internal RTCP NTP clock skew detected: lsr=1110524996, now=1183429154, dlsr=809841730 (12357:204ms), diff=736937572
    -- SIP/9902-0854fc30 answered SIP/9901-08549ad8
    被叫方9902应答主叫方9901。



    -- Native bridging SIP/9901-08549ad8 and SIP/9902-0854fc30
    Internal RTCP NTP clock skew detected: lsr=1127362869, now=1183429827, dlsr=808530993 (12337:203ms), diff=752464035
    建立连接,开始通话。



    == Spawn extension (test, 9902, 1) exited non-zero on 'SIP/9901-08549ad8'
    被叫方9902挂断。
    -------------------------------------------------------------------------------------





    六.测试IAX主叫SIP:
    1.主叫方挂断
    -------------------------------------------------------------------------------------
    -- Accepting AUTHENTICATED call from 192.168.0.199:
    接受经过验证的呼叫,8801呼叫9901。



    > requested format = gsm,
    > requested prefs = (),
    > actual format = gsm,
    > host prefs = (gsm),
    > priority = mine
    -- Executing [9901@test:1] Dial("IAX2/8801-2", "SIP/9901||r") in new stack
    执行8801通道2呼叫9901。



    -- Called 9901>
    -- SIP/9901-0854e7c8 is ringing
    被叫方9901振铃。



    Internal RTCP NTP clock skew detected: lsr=1127362869, now=1141816690, dlsr=808530993 (12337:203ms), diff=794077172
    -- SIP/9901-0854e7c8 answered IAX2/8801-2
    被叫方9901应答主叫方8801通道2,建立连接,开始通话。



    Internal RTCP NTP clock skew detected: lsr=1142150038, now=1142224038, dlsr=102498 (1:563ms), diff=28498
    Internal RTCP NTP clock skew detected: lsr=1142150038, now=1142423096, dlsr=302972 (4:622ms), diff=29914
    Internal RTCP NTP clock skew detected: lsr=1142477782, now=1142604149, dlsr=149422 (2:279ms), diff=23055
    Internal RTCP NTP clock skew detected: lsr=1142477782, now=1142741562, dlsr=349962 (5:339ms), diff=86182
    Internal RTCP NTP clock skew detected: lsr=1142805424, now=1142875129, dlsr=103874 (1:584ms), diff=34169
    Internal RTCP NTP clock skew detected: lsr=1142805424, now=1143037482, dlsr=304414 (4:644ms), diff=72356
    通话中。



    == Spawn extension (test, 9901, 1) exited non-zero on 'IAX2/8801-2'
    -- Hungup 'IAX2/8801-2'
    主叫方8801通道2挂断。
    -------------------------------------------------------------------------------------




    2.被叫方挂断
    -------------------------------------------------------------------------------------
    -- Accepting AUTHENTICATED call from 192.168.0.199:
    接受经过验证的呼叫,8801呼叫9901。



    > requested format = gsm,
    > requested prefs = (),
    > actual format = gsm,
    > host prefs = (gsm),
    > priority = mine
    -- Executing [9901@test:1] Dial("IAX2/8801-1", "SIP/9901||r") in new stack
    执行8801通道2呼叫9901。



    -- Called 9901>
    -- SIP/9901-0854d248 is ringing
    被叫方9901振铃。



    Internal RTCP NTP clock skew detected: lsr=1127362869, now=1154364407, dlsr=808530993 (12337:203ms), diff=781529455
    -- SIP/9901-0854d248 answered IAX2/8801-1
    被叫方9901应答主叫方8801通道1。建立连接,开始通话。



    Internal RTCP NTP clock skew detected: lsr=1155023403, now=1155058464, dlsr=52756 (0:804ms), diff=17695
    Internal RTCP NTP clock skew detected: lsr=1155023403, now=1155203176, dlsr=277217 (4:229ms), diff=97444
    Internal RTCP NTP clock skew detected: lsr=1155351087, now=1155366776, dlsr=18415 (0:280ms), diff=2726
    Internal RTCP NTP clock skew detected: lsr=1155678855, now=1155767542, dlsr=127074 (1:938ms), diff=38387
    Internal RTCP NTP clock skew detected: lsr=1155678855, now=1155914097, dlsr=351469 (5:362ms), diff=116227
    通话中。



    == Spawn extension (test, 9901, 1) exited non-zero on 'IAX2/8801-1'
    -- Hungup 'IAX2/8801-1'
    被叫方9901挂断。
    -------------------------------------------------------------------------------------





    七.测试SIP主叫IAX:
    1.主叫方挂断
    -------------------------------------------------------------------------------------
    -- Executing [8801@test:1] Dial("SIP/9901-08549ad8", "IAX2/8801||r") in new stack
    -- Called 8801
    -- Call accepted by 192.168.0.199 (format gsm)
    -- Format for call is gsm
    -- IAX2/8801-1 is ringing

    -- IAX2/8801-1 answered SIP/9901-08549ad8

    Internal RTCP NTP clock skew detected: lsr=1127362869, now=1160125691, dlsr=808530993 (12337:203ms), diff=775768171
    Internal RTCP NTP clock skew detected: lsr=1160782332, now=1160838023, dlsr=81526 (1:243ms), diff=25835
    Internal RTCP NTP clock skew detected: lsr=1160782332, now=1160972114, dlsr=308281 (4:703ms), diff=118499
    Internal RTCP NTP clock skew detected: lsr=1161109974, now=1161122977, dlsr=16973 (0:258ms), diff=3970
    Internal RTCP NTP clock skew detected: lsr=1161109974, now=1161337308, dlsr=243662 (3:717ms), diff=16328


    -- Hungup 'IAX2/8801-1'
    == Spawn extension (test, 8801, 1) exited non-zero on 'SIP/9901-08549ad8'
    -------------------------------------------------------------------------------------




    2.被叫方挂断
    -------------------------------------------------------------------------------------
    -- Executing [8801@test:1] Dial("SIP/9901-0854e7c8", "IAX2/8801||r") in new stack
    -- Called 8801>
    -- Call accepted by 192.168.0.199 (format gsm)
    -- Format for call is gsm
    -- IAX2/8801-2 is ringing

    -- IAX2/8801-2 answered SIP/9901-0854e7c8

    Internal RTCP NTP clock skew detected: lsr=1127362869, now=1167447869, dlsr=808530993 (12337:203ms), diff=768445993
    Internal RTCP NTP clock skew detected: lsr=1168103692, now=1168159910, dlsr=86245 (1:315ms), diff=30027
    Internal RTCP NTP clock skew detected: lsr=1168103692, now=1168307381, dlsr=312344 (4:765ms), diff=108655
    Internal RTCP NTP clock skew detected: lsr=1168431378, now=1168476183, dlsr=52559 (0:801ms), diff=7754
    Internal RTCP NTP clock skew detected: lsr=1168431378, now=1168707218, dlsr=278593 (4:250ms), diff=2753

    -- Hungup 'IAX2/8801-2'
    == Spawn extension (test, 8801, 1) exited non-zero on 'SIP/9901-0854e7c8'
    -------------------------------------------------------------------------------------



    基本上IAX与SIP之间可以最基本地互相通信了。

    本文转自http://blog.csdn.net/net_flyfox/article/details/4126674

    有些小的修改

    如有疑惑可以留言

  • 相关阅读:
    【算法学习笔记】27.动态规划 解题报告 SJTU OJ 1254 传手绢
    【算法学习笔记】26.扫描维护法 解题报告 SJTU OJ 1133 数星星
    【算法学习笔记】25.贪心法 均分纸牌问题的分析
    【算法学习笔记】24.记忆化搜索 解题报告 SJTU OJ 1002 二哥种花生
    【算法学习笔记】23.动态规划 解题报告 SJTU OJ 1280 整装待发
    【算法学习笔记】22.算法设计初步 二分查找 上下界判断
    【算法学习笔记】21.算法设计初步 求第k个数 划分法 快排法
    【算法学习笔记】20.算法设计初步 归并排序 求逆序数
    【算法学习笔记】19.算法设计初步 最大子列和问题的几种方法
    【算法学习笔记】18.暴力求解法06 隐式图搜索2 八数码问题 未启发
  • 原文地址:https://www.cnblogs.com/yhyjy/p/2607809.html
Copyright © 2011-2022 走看看