Strange one way audio behavior on Yealink only

We have a fairly mature FPBX system here and had Polycom VVX501s for the longest time. Multiple subnets, IPSEC tunnels, everything worked without issue. Switched to Yealink T46S to utilize the OpenVPN functionality, and now we get odd one-way audio issues when traversing subnets.

We put a T46S on a different subnet from the PBX, and when it receives a call, we cannot hear the caller. PCAPs show there is 2 way audio on both phones at this time. We then we park the call and retrieve it, and there is now 2 way audio. The same phone can place a call to a phone on the same subnet as the PBX and there is 2 way audio.

What’s odd is that we can place a VVX501 on this same (non-PBX) subnet and 2 way audio works without issues. So I don’t think anything is wrong with the PBX config.

Tried different firmwares, and even the most bare of config and the problem remains.

Try this, go into the extension of the phone, go to advanced, and find Direct Media and choose no, then save and reload and try.

What this does is it forces the audio to traverse back and forth to the PBX first

Another thing to make sure is that your subnets are listed under local networks, under “Asterisk SIP settings”

I did try that setting early on, along with many others but to no avail.

As for the NAT settings, these are all correct and have been for a long time. As I mentioned, other phones work without issue. This seems to be Yealink specific.

Can you make sure there is no SIP ALG turned on on the other network? Different phones can behave differently. I’ve successfully run Yealink phones for many years without issue, and without having to do anything out of the ordinary.

We use a pfSense firewall. The phones in question are on 2 different private routed subnets. Phones on the subnet with the PBX work great, including external calls through SipStation.

Both locations are using pfsense firewalls? You mentioned they were connected via site to site ipsec tunnel before? How are the yealink phones configured as of now? You had mentioned OpenVPN is why I am asking

Sorry for the confusion. We are using VPNs, but this test in particular is two phones, sitting on my desk, on different subnets in the same building. No VPNs in play, just two routed subnets. And again, I can configure a VVX the same way and it works without issues.

Still sounds like a NAT / Firewall issue.

Try to force Inbound and outbound internal recording in the extension in question and make a test call to see if it works. It doesn’t sound like its traversing between networks properly

Can you simplify the setup, e.g., allowing only ulaw and alaw, with no encryption, and still see the failure?

If so, look at the incoming RTP to the Yealink phone. Is it going to the correct address/port with good packetization and sequence numbers? Can you play the audio in Wireshark and hear the voice? If all is good, perhaps a bug in the Yealink firmware, e.g., timing dependent.

Is there any NAT involved, can you ping the phone from the PBX?

I did some more testing, and recorded the inbound call. In the recording, I was able to hear both sides of the conversation. During the actual call, I was still unable to hear the far end of the call. Again, when I parked and retrieved the call, I could hear both sides.

I also tried a few different FW versions, all had the same issue. I am at a loss here.

Hi there. Not sure if this will help you. However I had also experienced sometime ago and what I did was enable more codex g722 g729 try doing that under asterisk sip settings then test again

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.