본문 바로가기

IT & Tech/Voip

Asterisk 를 이용한 IP Phone 내선 연결

Asterisk를 이용하여 리눅스에 서버를 설치하였다면 이번엔 sip를 이용한 ip phone 을 연결하는 것이 핵심입니다.
서버는 Linux / 클라이언트는 Windows 어플리케이션을 이용하여 ip phone망을 구성해보겠습니다.

이미 centos5.4에 asterisk를 설치한상태에서 시작하는것이며 설치 안하셧다면 Asterisk설치를 눌러서 
설치방법에 따라 하시면됩니다.

sip를 이용한 ip phone 클라이언트(Soft Phone)는 X-Lite를 사용했습니다.
X-Lite : Download 
다운로드파일 직접링크이기 때문에 차후 버전에서 링크가 안될수 있습니다.
안되는분은 xlite홈페이지에서 받으세요

1. sip.conf 수정
    
    cd /etc/asterisk
    asterisk 디렉토리 안에 sip.conf 파일을 vi 또는 gedit를 이용하여 수정하시면 됩니다.

    
sip.conf
   
      [general]
       context=defult
       allow guest=yes
       allow overlap=no
       udpbindaddr=0.0.0.0 (default is port 5060) => 0.0.0.0 시에 모든 ip주소가 적용됨
       srvlookup=yes
       disallow=all
       allow=ulaw
       canreinvite=no  => (추가항목) no 개입하여 일경우  RTP/RTCP 까지 server가 중계함
                                  yes경우 클라이언트 간  RTP/RTCP 직접 주고 받음
                                     
       language=en
       dtmfmode = rfc2833 => rfc2833 규정한 모드를 사용??
       promiscredir= yes => redirect 지원여부
      
       위 수정 후
       sip.conf 제일 밑으로 이동 soft phone을 이용할 user agent 등록
     
      [108]
       username=108
       type=friend        =>  (inbound와 outbound 동시사용) inbound, outbound, friend 옵션이 있음.
       secret=ps108     =>  사용자 비밀번호
       host=dynamic    
       nat=yes
       qualify=yes
       allow=all
       callerid=108
     
      [109]
       ......
      [110]  
       ......
       
      108 과 동일한 형식으로 109와 110을 등록 후 저장



2. extensions.conf 수정

   
cd /etc/asterisk
     vi extensions.conf 수정 또는 gedit extensions.conf

extensions.conf

      [general]                   
       static=yes
       writeprotect=no
       clearglobalvars=no


      [globals]
       CONSOLE=Console/dsp
       IAXINFO=guest
       TRUNK=DAHDI/G2

      [local]
        include => default
        include => trunklocal
        include => iaxtel700
        include => trunktollfree
        include => iaxprovider
        include => parkedcalls

      [default]
        include => sip     -  이렇게 안해줘도 된다. 바로 extension.conf 제일 밑에 등록해도 됨
      
      extension.conf 제일 밑에 등록
      [sip]
        exten => _1XX,1,Dial(SIP/${EXTEN},30)
        exten => _1XX,1,Hangup()
        exten => _1XX,102,Busy
 
        exten => s,1,Answer()
        exten => s,n,Echo()
      
      여기 까지 수정하였으면 저장한다.

      

3. X-Lite Soft Phone 설정

 
             1) x- lite 실행후 마우스 오른쪽을 눌러 SIP Account settings 선택
     


            2) ADD를 눌러 등록을 시작함 유저 정보를 등록하고 domain에 voip서버 ip 를 적어줌
 


             3) Voicemail 탭에선 check for voice mail 체크 해제


          
              4) Topology 탭에서의 설정 Use specified server에 꼭 voip서버 ip주소를 적어줘야한다.
 


적용 후  close를 누르면 서버에 등록 될것이다. 이후 등록된 유저 번호를 누르면 통화가 된다.

User 108와109 간 통화


ps. 내부망에서 사용할수 있도록 한것이기 때문에 외부에서 전화는 되지 않는다. 공유기로 연결된 클라이언트에서만 통화가 된다는것을 알고 사용해야함

- 다음 글은 sip로 연결된 클라이언트 간의 통화시 RTP RTCP 패킷을 분석 할것임 -
     

'IT & Tech > Voip' 카테고리의 다른 글

Centos5.4 yum install asterisk  (3) 2010.05.23
voip sip패킷 분석  (0) 2010.05.13
Centos 5.4에서 Asterisk sip 서버 만들기  (1) 2010.05.07