Chinaunix首页 | 论坛 | 博客
  • 博客访问: 526162
  • 博文数量: 197
  • 博客积分: 2071
  • 博客等级: 上尉
  • 技术积分: 1307
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-02 09:49
个人简介

prothes 专注嵌入式的ARM linux

文章分类

全部博文(197)

文章存档

2014年(3)

2013年(16)

2012年(108)

2011年(70)

分类:

2011-09-06 12:58:59

 虽然在VOIP的行业做了很多年,以前以嵌入式方向为主,而服务器的测试主要用WINDOWS下一些商用的SIP Proxy,如OnDo SIP Server.SIP终端的对端通常用 eyeBeam,网络抓包采用 etherPeek.都是一些简单方便的工具。在实际开发,或在教学生学VOIP的时候,在使用一些固定的步骤后,没有太多经验的新手也能快速搭建一个VOIP的测试环境,用于分析或开发。

  但是如果完全的LINUX环境下。这一套完全不灵了。因此必须得重新找一些软件。其中抓包软件可以采用WireShark,安装方法参见http://blog.chinaunix.net/u3/105675/showart.php?id=2090205.
 服务器软件OnDo SIP Server 是基于J2EE,可以在LINUX安装,但过于复杂。而且在工作中,往往使用Asterisk居多。客户端采用linphone,这个测试过,音质不错,而且支持视频.
 
 
Asterisk 快速安装和配置
 
Asterisk 的配置文件和基本使用方法由我学生包海全提供,在此表示感谢
编译安装,Asterisk 的编译相当简单。我使用
asterisk-1.4.21.2.tar.gz()这个版本。
在RHEL 5下,直接编译即可,
./configure & make & make install 即可安装.
 
Redhat 9.0的相关工具升级
在redhat 9.0本身make 版本是 3.79.1,要升级到3.8.1,否则编译asterisk会提示
 
make: expand.c:489: allocated_variable_append: Assertion `current_variable_set_list->next != 0' failed.
升级make->还需要升级curl库->升级支持库
 
1.支持库升级
   rpm -ivh ncurses4-5.0-11.i386.rpm 
   rpm -ivh openssl096-0.9.6-15.i386.rpm 
   rpm -ivh openssl-devel-0.9.7a-2.i386.rpm
 
2.curl升级
    http://curl.haxx.se/download/curl-7.19.5.tar.gz
    configure & make & make install
3.make 升级
    
     configure & make & make install
 
Asterisk 快速配置
Asterisk 的配置相当复杂,主要放在/etc/asterisk 目录下。如果只是简单把它当成一个不带硬件卡的测试SIP PROXY,可以用现成的配置文件直接拷贝到这个目录。其中sip用户的信息保存在sip.conf当中,其中已经配置好 1000-1020 总共20个帐号用于测试。常见的配置文件有
 
  • /etc/asterisk/asterisk.conf  主要配置文件
  • /etc/zaptel.conf  硬件接口的基本层.    
  • /etc/asterisk/zapata.conf  为硬件配置Asterisk的接口.
  • /etc/asterisk/extensions.conf  拨号方案.
  • /etc/asterisk/sip.conf  SIP协议配置文件
  • /etc/asterisk/iax.conf  呼入和呼出IAX通道
  • /etc/asterisk/extensions.conf  拨号方案配置文件
  • /etc/asterisk/moduprobe.conf  加载模块配置文件
文件: asterisk.conf.tar.gz
大小: 93KB
下载: 下载
sip.conf  在[general]段有还有跟服务器IP和SIP端口相关的配置,
其中
    bindport=5070 #表示绑定SIP端口
    bindaddr=0.0.0.9 #表示绑定网卡地址(0。0。0。0表示所有网卡)
关于,SIP用户配置,每一个用户占一个段,段名即用户名。大体如下列格式
 
[1001]
username=1001
secret=1001
callerid=1001
type=friend
host=dynamic
port=5070
nat=yes
context=default
canreinvite=no

Asterisk 启动  asterisk &

asterisk 的操作,可以通过图形界面和WEB来控制,但最简单方法是通过asterisk控制台,用asterisk命令来控制。进入asterisk控制台

asterisk -r #当出现*CLI>提示符时,表示进入asterisk控制台。

常用的asterisk 命令

  • sip show peers #显示所有定义的SIP用户,如果该用户注册了,还能显示相应用IP
  • restart #重启服务器
  • sip show channels #显示所有通道
  • module show #显示所有模块

 

 
Linphone RHEL安装
这里Linphone不是用来开发的,只是作为对端测试工具.因此需要快速安装即可.(而且我对那个GTK+的库实在头大)所以我是直接从互联网上rpm,自行编译支持库即可.
 
我用是RHEL4版本.
还是用非依赖强行安装
 rpm -i --force --nodeps linphone-1.0.0-1.2.el4.rf.i386.rpm
然后编译支持库,它分是osip,基本上是 configure & make & make install 即可
注意这rpm需要 libosipparser2.so.3,用libosip2-2.2.1.tar.gz(
)即可,最新的2-3.3的编译出来的是libosipparser2.so.4.
 
这是其运行界面
   
阅读(986) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~