[Home]

Summary:ASTERISK-15562: IAX2 Reject Not Shown in Debug
Reporter:Leo Brown (netfuse)Labels:
Date Opened:2010-02-02 12:25:30.000-0600Date Closed:2011-06-07 14:07:59
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Channels/chan_iax2
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Hi,

There's an issue I'm seeing whereby a system who has user, peer, and register with a remote system is REJECTing inbound calls though they are properly matched in the dialplan.

Although I have not found a reason for the reject, I think the bigger issue is perhaps that Asterisk seems to be unaware itself of sending the REJECT message. The system originating the call with `iax set debug on` shows the REJECT message coming, but the client machine only sees the NEW and ACK messages. I have verified using packet analysers that the packets on the receiving system are shown as HANGUP, NEW, REJECT, ACK, HANGUP, where the REJECT is the only packet it is sending, and the others are from the originating side.

Also strange that it believes it is sending a retry packet, when `tcpdump` again shows that this is not the case, and the time taken does not necessarily indicate retry.

My testing been in the last two hours using /branches/1.6.2 and tags/1.6.2.1-rc1, which both exhibit the same issue.

Cheers,
Leo

****** ADDITIONAL INFORMATION ******

=== Originating System ===

Tx-Frame Retry[000] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: NEW    
  Timestamp: 00003ms  SCall: 02849  DCall: 00000 [4.3.2.1:4569]
  VERSION         : 2
  CALLED NUMBER   : 01234567890
  CODEC_PREFS     : ()
  CALLING NUMBER  : 0987654321
  CALLING PRESNTN : 0
  CALLING TYPEOFN : 0
  CALLING TRANSIT : 0
  CALLING NAME    : Leo Brown
  LANGUAGE        : en
  USERNAME        : my_iax
  FORMAT          : 8
  CAPABILITY      : 40959
  ADSICPE         : 2
  DATE TIME       : 2010-02-02  18:20:28

Rx-Frame Retry[Yes] -- OSeqno: 000 ISeqno: 001 Type: IAX     Subclass: REJECT
  Timestamp: 00003ms  SCall: 00001  DCall: 02849 [4.3.2.1:4569]
[2010-02-02 18:20:29] WARNING[49209]: chan_iax2.c:8955 socket_process: Call rejected by 4.3.2.1: <Unknown>



=== Receiving System===


Rx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: NEW    
  Timestamp: 00003ms  SCall: 02849  DCall: 00000 [1.2.3.4:4569]
  VERSION         : 2>
  CALLED NUMBER   : 01234567890
  CODEC_PREFS     : ()
  CALLING NUMBER  : 0987654321
  CALLING PRESNTN : 0>
  CALLING TYPEOFN : 0>
  CALLING TRANSIT : 0>
  CALLING NAME    : Leo Brown
  LANGUAGE        : en
  USERNAME        : my_iax
  FORMAT          : 8>
  CAPABILITY      : 40959
  ADSICPE         : 2>
  DATE TIME       : 2010-02-02  18:20:28
server4-3-2-1*CLI>
Rx-Frame Retry[ No] -- OSeqno: 001 ISeqno: 001 Type: IAX     Subclass: ACK    
  Timestamp: 00003ms  SCall: 02849  DCall: 00001 [1.2.3.4:4569]
Rx-Frame Retry[Yes] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: HANGUP
  Timestamp: 00017ms  SCall: 07405  DCall: 00000 [1.2.3.4:4569]
  CAUSE CODE      : 0>
server4-3-2-1*CLI>
Comments:By: Leo Brown (netfuse) 2010-02-02 12:27:56.000-0600

=== Client iax.conf ===

[my_iax]
type=user
context=from-trunk
host=originating.host.lan

=== Originator iax.conf ===

[my_iax]
type=friend
username=my_iax
secret=secret
context=my_llc
qualify=yes
transfer=no
amaflags=billing
host=dynamic

By: Leo Brown (netfuse) 2010-02-02 13:01:25.000-0600

Final note that the REJECT appears to come from the lack of requirecalltoken=no in my peer. I found this out by reverting to 1.4 branch, and the error appeared. No feedback about this in 1.6.2 branch, and REJECT is not shown!

Cheers
Leo

By: Leif Madsen (lmadsen) 2010-02-02 15:08:01.000-0600

This could be a configuration problem to do with the rejectcalltoken setup, but if this REJECT is happening and is the cause of the issue, then there likely should be some sort of WARNING message that pops up.

By: Leo Brown (netfuse) 2010-02-03 06:08:40.000-0600

Well, there isn't. Test conditions were debug 10, verbose 10, iax2 debug. Only 1.4  branch actually showed the calltoken error!

By: Leif Madsen (lmadsen) 2010-02-03 10:52:44.000-0600

I know there isn't, you pointed that out -- and I was agreeing, by stating that there should be a WARNING message added likely :)

By: David Vossel (dvossel) 2010-02-17 16:05:59.000-0600

ERROR[9400]: chan_iax2.c:4701 handle_call_token: Call rejected, CallToken Support required. If unexpected, resolve by placing address 1.2.3.4 in the calltokenoptional list or setting user iaxy requirecalltoken=no


That's the message you should see.  I tested it and it works for me in 1.6.2