first about my setup, running centos 6.2, asterisk 1.8.13.0, freepbx 2.9.0.12.
I have a modem/router with NAT enabled. Asterisk and my extension from which I make the call are on the same local network, behind the modem/router.
I have forwarded ports 10000-20000 to asterisk and configured asterisk accordingly.
My external IP is 195.205.34.24. Asterisk and freepbx are on 192.168.2.199, my extension I make the calls from is ā903ā and is on 192.168.2.202.
I have configured my extension and connected it. Also I have setup sip trunks and configured outbound rules etc.
This all works fine. When I receive calls, all works great, I have two way audio without any trouble.
When I make an outbound call, the incoming audio works without flaws, however my outgoing audio drops after a minute or so. So first the other person can hear me then not. On some calls the outgoing audio starts working again after a bit, but then drops again.
In freepbx in the āasterisk sip settingsā Iām not sure how to set the NAT settings properly. Currently:
NAT: yes (but have also tried ānoā, āneverā, and ārouteā whilst keeping same settings below with same audio problems results as described above)
IP Configuration: Static IP
External IP: 195.205.34.24
Local Networks: 192.168.2.0/255.255.255.0
Would this be correct?
I have run āsip set debug onā and ārtp set debug onā to see what happens during the call, the output is here: pastebin.ca/2257975
Would appreciate any help. Thank you in advance!
This is the wrong place for FreePBX configuration questions.
I am assuming that you have a standard ITSP outside the NAT, and that is the source/destination of the calls, with the local SIP device (not extension) as the other.
At the sip.conf level, nat should normally be no, localnet should be set and one of externip, externhost or stunaddr should be set. SIP support on the router should be disabled. All outgoing UDP port numbers should be allowed through (Asterisk doesnāt control the ports used by the other end).
Early drops are typically caused by unsupporte re-invites, but the normally do recover. They can be associated with directmedia, or nowadays, with connected line updates.
I find it easier if traces are inline. You can use code to allow them to be scrolled; I think you can also attach to the posting.
There are no re-invites by Asterisk. There is an unexplained, successful one by the phone. There is media throughout, including early media. The main call is native bridged in packet to packet mode. There is one instance where one frame in each direction is replaced by comfort noise. There is some significant jitter later in the call.
My guess is that whichever side stopped āreceivingā audio mishandled the comfort noise frame. Iām guess the comfort noise was the result of an underrun, but comfort noise in Asterisk must be new.
thank you for your comments, appreciate them.
Does this mean I need to get re-invites working properly? if so any suggestion where/how to start?
You are guessing that the comfort noise was the result of an underrun, what does that mean?
How can I fix this problem? Thank you in advance!
kind regards
An underrun is when data is needed but it hasnāt yet arrived.
I donāt know how to fix the problem, but I would try replacing the on which you stopped hearing the audio, as it may have a bug in its handling of comfort noise frames (in particular, it may not be going out of comfort noise mode).
You should probably verify the comfort noise frames occur at the time that audio disappears. You might want to check, with something like wireshark, that the comfort noise frame is being generated by Asterisk (older versions wonāt do this), rather than being relayed, although the fact that they go in both directions at the same time suggests they come from Asterisk. If it does come from Asterisk, you could look for options to disable it.
thank your response. This only happens with outbound calls, whatever device i call, e.g. my mobile phone or my PSTN landline number (both not connected to astersik) audio drops, sometimes only after 5 mins, so i suppose those are not the problem.
Will have a go at it with wireshark, am a little familiar with the application, what specifically should i be looking for, not sure though that I will be able to fix this oneā¦
You are looking to see if the comfort noise outgoing frames correspond with incoming ones. If they donāt they are being originated by Asterisk. You will also be able to see if there are missing input frames, or delayed ones.