[AsteriskBrasil] Problema com entrada por 2 IPs do Azzu

Junior Polegato - Asterisk asterisk em juniorpolegato.com.br
Quarta Outubro 29 12:59:40 BRST 2008


Olá pessoal,

       Reconfigurei algumas coisas para um novo caso para uso do 
Asterisk com Azzu da Netsite/CTBC e notei  algo interessante:

1. O servidor de registro é registrar.azzu.com.br
2. A cada ping no registrar.azzu.com.br alterna entre 2 IPs: 
201.48.113.131 e 201.48.113.132
3. Registrei vários ramais
4. Um número virtual ligado ao ramal 1 => URA
5. Saídas feitas apenas pelo ramal 1 para BINAr o número virtual
5. Apenas um contexto de entrada e saída no sip.conf
6. Metade dos ramais não recebem chamadas diretas
7. Ora recebe chamadas pelo número virtual, ora não recebe

       Comecei analisar os fatos e notei algumas chamadas chegam por um 
IP e outras chegam por outro IP. Já havia notado há muito tempo que o 
Asterisk faz a entrada pelo último contexto sip que case com o host. 
Notei também que o peer do contexto de entrada fica com apenas um IP e 
não o com nome registrar.azzu.com.br. Depurando, notei que a chamada 
para um certo número Azzu sempre vem pelo mesmo IP e que a cada registro 
vai alternando o número IP tal como no ping.

       Nesse balaio de informações, consegui extrair que o Asterisk não 
trabalha com nome e sim apenas com IP, o que força a ter contextos de 
entradas tanto quanto os possíveis números IPs do provedor.

        Tem algo errado nisso que fiz? Fiz o básico para começar os testes:


sip.conf
- - - - - - - - - - - - - - - - - - - - - - - - -
[general]
context=ramais
allowguest=no
defaultexpiry=3600
language=pt_BR
disallow=all
allow=ilbc
allow=g729
allow=gsm
allow=alaw
allow=ulaw
nat=no
canreinvite=yes
dtmfmode=rfc2833

; Registros no Azzu
register => ramal_1:senha_1 em registrar.azzu.com.br/ramal_1
register => ramal_2:senha_2 em registrar.azzu.com.br/ramal_2
. . .
register => ramal_n:senha_n em registrar.azzu.com.br/ramal_n

[azzu]
type=friend
username=ramal_1
fromuser=ramal_1
secret=senha_1
host=registrar.azzu.com.br
insecure=invite
context=azzu

[10]
type=friend
username=10
secret=10
host=dynamic

[11]
type=friend
username=11
secret=11
host=dynamic

[ . . . ]

[99]
type=friend
username=99
secret=99
host=dynamic
- - - - - - - - - - - - - - - - - - - - - - - - -


extensions.conf
- - - - - - - - - - - - - - - - - - - - - - - - -
[ . . . ]

[URA]
exten => s,1,WaitExten(Digite_o_ramal_ou_aguarde_para_ser_atendido)

exten => _XX,1,Dial(SIP/${EXTEN})
exten => _XX,n,Playback(ramal_indisponivel)
exten => _XX,n,Goto(s,1)

exten => t,1,Dial(SIP/50&SIP/51&SIP/52&SIP/53)
exten => t,n,Playback(ramal_indisponivel)
exten => t,n,Goto(s,1)

[azzu]
exten => ramal_1,1,Goto(URA,s,1)
exten => ramal_1,n,Hangup

exten => ramal_2,1,Dial(SIP/<ramal_sip_correspondente>)
exten => ramal_2,n,Hangup

exten => ramal_3,1,Dial(SIP/<ramal_sip_correspondente>)
exten => ramal_3,n,Hangup
. . .
exten => ramal_n,1,Dial(SIP/<ramal_sip_correspondente>)
exten => ramal_n,n,Hangup

[ramais]
exten => _XX,1,Dial(SIP/${EXTEN})
exten => _XX,n,Playback(ramal_indisponivel)
exten => _XX,n,Hangup

exten => _XX.,1,Dial(SIP/${EXTEN}@azzu)
exten => _XX.,n,Hangup
- - - - - - - - - - - - - - - - - - - - - - - - -



Mais detalhes sobre a lista de discussão AsteriskBrasil