Trunk IAX Asterisk 13.2.0

Hi,

I’m trying to register IAX trunk from Asterisk 13 to asterisk 1.4 and the trunk still Unreachable.

If I caugth traffic with a sniffer, I can view traffic in both sides .

Capturing on 'eth0'
  1   0.000000    SourceIP -> DestinationIP IAX2 56 IAX, source call# 12361, timestamp 14ms POKE
  2   0.078691 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 4872, timestamp 14ms PONG
  3   2.081035 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 4872, timestamp 14ms PONG
  4   2.081076 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 2629, timestamp 14ms PONG
  5   2.081079 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 20019ms LAGRQ
  6   2.081082 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 8331, timestamp 30019ms LAGRQ
  7   2.501947    SourceIP -> DestinationIP IAX2 56 IAX, source call# 12361, timestamp 14ms POKE
  8   2.579461 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 7315, timestamp 14ms PONG
  9   3.081321 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 21018ms PING
 10   4.082404 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 20019ms LAGRQ
 11   4.082905 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 8331, timestamp 30019ms LAGRQ
 12   4.082918 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 10018ms LAGRQ
 13   4.083211 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 8331, timestamp 20018ms LAGRQ
 14   4.083238 DestinationIP -> SourceIP    IAX2 83 IAX, source call# 495, timestamp 17ms REGAUTH
 15   4.083244 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 8331, timestamp 10017ms LAGRQ
 16   4.580805 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 7315, timestamp 14ms PONG
 17   4.582214 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 5778, timestamp 14ms PONG
 18   5.082444 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 21018ms PING
 19   9.999547    SourceIP -> DestinationIP IAX2 74 IAX, source call# 5648, timestamp 14ms REGREQ
 20  10.077301 DestinationIP -> SourceIP    IAX2 83 IAX, source call# 2464, timestamp 16ms REGAUTH
 21  11.999024    SourceIP -> DestinationIP IAX2 74 IAX, source call# 5648, timestamp 14ms REGREQ
 22  12.077943 DestinationIP -> SourceIP    IAX2 83 IAX, source call# 2464, timestamp 16ms REGAUTH
 23  12.077974 DestinationIP -> SourceIP    IAX2 83 IAX, source call# 12947, timestamp 16ms REGAUTH
 24  12.081329 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 4872, timestamp 14ms PONG
 25  12.082035 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 30020ms LAGRQ
 26  14.079081 DestinationIP -> SourceIP    IAX2 83 IAX, source call# 12947, timestamp 16ms REGAUTH
 27  14.084321 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 30020ms LAGRQ
 28  14.084360 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 20019ms LAGRQ
 29  14.084368 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 495, timestamp 10018ms LAGRQ
 30  14.582861 DestinationIP -> SourceIP    IAX2 60 IAX, source call# 7315, timestamp 14ms PONG

But when I set the IAX debug on in Asterisk 13, I can’t view the return traffic .

Tx-Frame Retry[000] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: REGREQ 
   Timestamp: 00015ms  SCall: 02087  DCall: 00000 DestinationIP:4569
   USERNAME        : username_trunk
   REFRESH         : 60

Tx-Frame Retry[000] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: POKE   
   Timestamp: 00015ms  SCall: 03618  DCall: 00000 DestinationIP:4569

Tx-Frame Retry[001] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: REGREQ 
   Timestamp: 00015ms  SCall: 02087  DCall: 00000 DestinationIP:4569
   USERNAME        : username_trunk
   REFRESH         : 60

Tx-Frame Retry[001] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: POKE   
   Timestamp: 00015ms  SCall: 03618  DCall: 00000 DestinationIP:4569

the asterisk proccess is listening and the firewall is disabled.

# netstat -ptnuoa | grep 4569
udp   213248      0 0.0.0.0:4569            0.0.0.0:*                           5372/asterisk    off (0.00/0/0)
# iptables -nvL
Chain INPUT (policy ACCEPT 1166K packets, 106M bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 1150K packets, 80M bytes)
 pkts bytes target     prot opt in     out     source               destination     

Can you help me to determine if it’s a configuration problem?.

Regards

Did You set requirecalltoken=no for the 1.4-Trunk on the Asterisk 13.2.0-side ? Without this setting, communication will definitely fail.

Hi,

Thanks for answer, the IAX peer has the following configuration.

[username_trunk]
type=friend
auth=md5
host=DestinationIP
secret=password
context=inbound
username=username_trunk
qualify=5000
disallow=all
allow=g729
allow=alaw
requirecalltoken=no

Regards

Ok, requirecalltoken is setted up correctly.
But: If You want the Asterisk 1.4 to register against the Asterisk 13 the host-setting should be host=dynamic instead of host=DestinationIP. Otherwise the register-attempt will fail (as in Your debug the REGREQ-Message from Asterisk 1.4 is never answered instead Asterisk 13 sends an POKE to the IP it knows …

Hi,

I wanna register Asterisk 13 against Asterisk 1.4 , but the traffic from Asterisk 1.4 doesn’t reach to asterisk 13 service ( it reach to server ).

Regards.

Hi,

The problem is solved. I loaded module res_timing_timerfd.so and the trunk begin to work ( The side of Asterisk 1.4 had option trunk=yes )

Regards