2

I am trying to configure a Zoiper softphone (iOS app version) so that it can connect to my Asterisk PBX. The Zoiper configuration is as follows:

Account name: Account1
Server: <ip-address-of-my-asterisk-server>
User name: guest
Password: test
Caller ID: guest

On the Asterisk server, /etc/asterisk/iax.conf contains these lines:

[guest]
username=guest
type=friend
context=public
callerid="Guest IAX User"
secret=test
auth=md5

iax2 show users indicates that Asterisk is aware of these settings. With extra logging enabled I get the following log messages. In effect, Zoiper's registration to Asterisk is refused (with cause code 29). What could be wrong, and which IAX authentication method is Zoiper using (I tried both md5 and plaintext with same results.)

(Further questions: Does Asterisk even provide the (optional) IAX2 registration facility and why is Zoiper apparently sending REGREL?)

Rx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: REGREQ 
   Timestamp: 00002ms  SCall: 00209  DCall: 00000 [10.0.7.1:51130]
   USERNAME        : guest
   REFRESH         : 60
   CALLTOKEN       : Present
   FW BLOCK DATA   : 14 bytes

Tx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 001 Type: IAX     Subclass: CTOKEN 
   Timestamp: 00002ms  SCall: 00001  DCall: 00209 [10.0.7.1:51130]
   CALLTOKEN       : 51 bytes

Rx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: REGREL 
   Timestamp: 00003ms  SCall: 00208  DCall: 00001 [10.0.7.1:51130]
   USERNAME        : guest
   CALLTOKEN       : 51 bytes
   FW BLOCK DATA   : 14 bytes

Tx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 001 Type: IAX     Subclass: REGREJ 
   Timestamp: 00003ms  SCall: 00001  DCall: 00208 [10.0.7.1:51130]
Rx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass:   REGREQ 
   Timestamp: 00003ms  SCall: 00209  DCall: 00000 [10.0.7.1:51130]
   USERNAME        : guest
   REFRESH         : 60
   CALLTOKEN       : 51 bytes
   FW BLOCK DATA   : 14 bytes

Tx-Frame Retry[-01] -- OSeqno: 000 ISeqno: 001 Type: IAX     Subclass: ACK    
   Timestamp: 00003ms  SCall: 06363  DCall: 00209 [10.0.7.1:51130]
Tx-Frame Retry[000] -- OSeqno: 000 ISeqno: 001 Type: IAX     Subclass: REGREJ 
   Timestamp: 00001ms  SCall: 06363  DCall: 00209 [10.0.7.1:51130]
   Timestamp: 00003ms  SCall: 00001  DCall: 00208 [10.0.7.1:51130]
   CAUSE           : Registration Refused
   CAUSE CODE      : 29
4

Try adding the valuehost=dynamic to your guest config in iax.conf

  • 1
    Excellent. I had assumed that dynamic was the default. – Drux Jul 24 '16 at 15:40
  • For people finding their way here, I'll note the requirecalltoken=no setting, the lack of which was the reason I was running into this trouble. – Arto Bendiken Nov 28 '16 at 6:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.