Iax Trunking issues

We are having 2 issues with IAX trunking between two asterisk boxes:

  1. Using iax trunking between two asterisk boxes. Intermittent issue where at one end of the link the “iax2 show peers” command shows the connection as having a time of around 69 ms. When this happens, on the other asterisk box the “iax2 show peers” command shows around 9 ms. Using the command line ping command on both boxes shows ping times around 9 ms. Voice quality is poor, and the active calls are choppy. The only way to recover is to restart asterisk on the machine where the “iax2 show peers” command shows a higher time. The machines are both SLES 9. The codec for all calls is g729, and the connection between them is a full point to point t1 dedicated exclusively to traffic between these machines. When this problem started, we were on asterisk version 1.2.9.1, and updated to 1.2.10, but the problem persisted.

  2. Using iax trunking between two asterisk boxes. When box A sends a call to box B and box B sends the call out its pri, there is no sound. This setup was working fine, now it is not. The only log entry I am finding is on box B. The log entry is a “unable to write frame” error. The codec for the calls is g729, and there are no log entries for an “out of license” issue. When this problem started, we were on asterisk version 1.2.9.1, and updated to 1.2.10, but the problem persisted.

Has anyone encountered these issues before? Any resolution?

Joseph D Thomas Sr

ensure that both asterisk boxes have

trunk=yes
trunktimestamps=yes
notransfer=yes

for the user/peer/friend sections. Also make sure your dial syntax is setup so that it is actually using the correct settings. I have found that if not specific enough it will process the rules under the general/default area. I have resorted to Dial(iax2/user:pass@localiaxuser/+1${EXTEN}@from-pstn)

where localiaxuser is the user in the local iax.conf file so that it referrs to that for the host settings. I discovered this when messing around with g729 where calls placed outbound were g729 yet inbound calls were not due to the general context heading not having g729 provisions. Instead of adding g729 to general I decided to figure out how to force the dial in both directions to stick to user/peer information only. This is especially important since trunking isnt a global setting. This might be the cause of your no audio calls because one side isnt allowing g729. You also need to be using a zaptel timing source on both ends. ztdummy will suffice if you have nothing else but it needs to be confirmed running.

Thanks for the help, I’m still working through the problem. One question, why the:

notransfer=yes

Darin