[Home]

Summary:ASTERISK-15654: Unable to create channel of type 'IAX2' (cause 20 - Unknown)
Reporter:r1 (r1)Labels:
Date Opened:2010-02-18 04:08:01.000-0600Date Closed:2011-06-07 14:08:12
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Channels/chan_iax2
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) extconfig.conf
( 1) iax.conf
( 2) res_pgsql.conf
( 3) table_sql.txt
Description:Good day!
i have realtime scheme on postgresql for iax and sip peers
dial to sip peers  -is ok
dial to iax peers  - random is bad

if rtcachefriends=no, all is bad

But if in iax.conf
rtcachefriends=yes
asterisk will cache data in the local and the problem disappears

this bug is relevant in all SVN versions, all tarball versions(1.2 and up)



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

if rtcachefriends=no

when dial to iax peer all is bad:
Connected to Asterisk SVN-trunk-r247076M currently running on virtaster (pid = 24320)
Verbosity is at least 269
[Feb 18 10:26:36] WARNING[24348]: chan_iax2.c:10414 socket_process: Call rejected by 192.168.91.23: Call rejected manually.
   -- Hungup 'IAX2/30009-961'
   -- Accepting AUTHENTICATED call from 192.168.91.23:
      > requested format = unknown,
      > requested prefs = (),
      > actual format = speex,
      > host prefs = (speex),
      > priority = mine
   -- Executing [20009@iwire:1] Dial("IAX2/30009-2144", "IAX2/20009,20") in new stack
[Feb 18 10:26:42] WARNING[24542]: app_dial.c:1865 dial_exec_full: Unable to create channel of type 'IAX2' (cause 20 - Unknown)
 == Everyone is busy/congested at this time (1:0/0/1)
   -- Auto fallthrough, channel 'IAX2/30009-2144' status is 'CHANUNAVAIL'

*CLI> iax2 show peer 20009
Peer 20009 not found.

peer is emty. Ok.

*CLI> iax2 show peer 20009 load
virtaster*CLI>

 * Name       : 20009
 Secret       : <Not set>
 Context      : iwire
 Parking lot  :
 Mailbox      :
 Dynamic      : Yes
 Callnum limit: 0
 Calltoken req: No
 Trunk        : No
 Encryption   : No
 Callerid     : "" <20009>
 Expire       : -1
 ACL          : No
 Addr->IP     : (Unspecified) Port 0
 Defaddr->IP  : 0.0.0.0 Port 0
 Username     : 20009
 Codecs       : 0x200 (speex)
 Codec Order  : (speex)
 Status       : UNKNOWN
 Qualify      : every 60000ms when OK, every 10000ms when UNREACHABLE (sample smoothing Off)


Ops! peer exist.
Try again

*CLI> iax2 show peer 20009
Peer 20009 not found.


please, help me.
peer is emty. Ok.
Comments:By: r1 (r1) 2010-02-18 07:56:17.000-0600

Supplement. While not regseconds field equal to zero -  calls are possible


this is full sql log
Now i'm only connecting. nothing rings

begin login

010-02-18 14:07:56 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20009' AND host = 'dynamic'
2010-02-18 14:07:56 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '0.0.0.0', port = '0', regseconds = '0' WHERE name = '20009'
2010-02-18 14:07:56 IRKT LOG: ???????: SELECT * FROM users_conf WHERE ipaddr = '127.0.0.1' AND port = '43789'
2010-02-18 14:07:56 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20009' AND host = 'dynamic'
2010-02-18 14:07:56 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '0.0.0.0', port = '0', regseconds = '0' WHERE name = '20009'
2010-02-18 14:07:56 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20009' AND host = 'dynamic'
2010-02-18 14:07:56 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '0.0.0.0', port = '0', regseconds = '0' WHERE name = '20009'
2010-02-18 14:07:56 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20009' AND host = 'dynamic'
2010-02-18 14:07:56 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '0.0.0.0', port = '0', regseconds = '0' WHERE name = '20009'
2010-02-18 14:07:56 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '0.0.0.0', port = '0', regseconds = '0' WHERE name = '20009'

end login


something...

2010-02-18 14:08:15 IRKT LOG: ???????: SELECT * FROM users_conf WHERE ipaddr = '127.0.0.1' AND port = '43789'
2010-02-18 14:08:15 IRKT LOG: ???????: SELECT * FROM users_conf WHERE ipaddr = '127.0.0.1' AND port = '59305'

something...

2010-02-18 14:08:35 IRKT LOG: ???????: SELECT * FROM users_conf WHERE ipaddr = '127.0.0.1' AND port = '43789'
2010-02-18 14:08:35 IRKT LOG: ???????: SELECT * FROM users_conf WHERE ipaddr = '127.0.0.1' AND port = '59305'
2010-02-18 14:08:38 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20001'
2010-02-18 14:08:38 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20001' AND host = 'dynamic'
2010-02-18 14:08:38 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20001'
2010-02-18 14:08:38 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20001' AND host = 'dynamic'
2010-02-18 14:08:38 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20001'
2010-02-18 14:08:38 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20001' AND host = 'dynamic'

Ops. what is this?
2010-02-18 14:08:51 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '127.0.0.1', port = '43789', regseconds = '0' WHERE name = '20009'

after this, calling to 20009 impossible. Field regseconds = 0 while Peer 20009 is  registered

By: r1 (r1) 2010-02-18 20:39:52.000-0600

Begin Login

02:47:33 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '20009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '30009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE ipaddr = '192.168.91.23' AND port = '4569'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '30009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '30009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '30009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '30009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '30009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: SELECT * FROM users_conf WHERE name = '30009' AND host = 'dynamic'
2010-02-19 02:47:40 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '192.168.91.23', port = '4569', regseconds = '1266518860' WHERE name = '30009'

end login

10 sec after login? regseconds = '0'

2010-02-19 02:47:50 IRKT LOG: ???????: UPDATE users_conf SET ipaddr = '192.168.91.23', port = '4569', regseconds = '0' WHERE name = '30009'


Tx-Frame Retry[000] -- OSeqno: 001 ISeqno: 002 Type: IAX Subclass: REGACK
Timestamp: 00053ms SCall: 01429 DCall: 27657 [192.168.91.23:4569]
USERNAME : 30009
DATE TIME : 2010-02-19 02:48:38
REFRESH : 60
APPARENT ADDRES : IPV4 192.168.91.23:4569
CALLING NUMBER : 30009

REFRESH : 60

tell me what is this?

By: Leif Madsen (lmadsen) 2010-02-19 12:31:55.000-0600

This could be a configuration issue, but I can't quite tell if it is or not.

Please provide the entire configuration set that is required to reproduce this issue. This would include the extconfig.conf, iax.conf, and extensions.conf (relevant sections) to be attached to this issue.

By: r1 (r1) 2010-02-22 22:34:27.000-0600

files is attached.
relevant section extensions.conf
[cont]
exten => _XXXXX,1,Dial(IAX2/${EXTEN})
exten => _XXXX,1,Dial(SIP/${EXTEN})

By: r1 (r1) 2010-02-23 03:24:38.000-0600

attached iax.conf  contains error
Of course rtcachefriends=no

By: Leif Madsen (lmadsen) 2010-02-24 09:36:36.000-0600

Thanks for the additional information. This will be looked at as soon as time and resources permit.

By: Tilghman Lesher (tilghman) 2010-09-15 16:08:52

This actually sounds like your registration interval is only 10 seconds long, and once the initial registration expires, it dies.  Can you provide a packet dump on your server, for a sample registration?

By: Leif Madsen (lmadsen) 2010-10-04 10:15:21

Requesting feedback from the reporter.

By: r1 (r1) 2010-10-04 13:25:10

So sorry
Do you want this CLI dump?

iax2 set debug on

By: Tilghman Lesher (tilghman) 2010-10-06 08:18:20

No, I want a packet dump.  You could use tcpdump or Wireshark to capture the necessary information.

By: r1 (r1) 2010-10-06 10:17:37

ok. Soon as possible

By: Tilghman Lesher (tilghman) 2010-11-17 12:23:38.000-0600

It has been over a month.  Have you been able to obtain a packet dump yet?

By: Tilghman Lesher (tilghman) 2010-11-23 15:42:57.000-0600

Suspended due to lack of activity. Please request a bug marshal in #asterisk-bugs on the IRC network irc.freenode.net to reopen the issue should you have the additional information requested.

Further information can be found at http://www.asterisk.org/developers/bug-guidelines