No Audio when call a remote extension

We have several remote offices with remote extensions. We are having an issue with a single remote extension at a location. It’s the only extension at that location.

  • If I make an internal call from the main office where the server is to this remote location I can not hear the person at the remote location and they can not hear me.
  • If the person at the remote location makes an internal call to me we can hear each other fine.

I have the remote location’s IP address “Trusted” in the firewall and I have it on the whitelist.

Any idea why this would be?

NAT or Firewall is blocking RTP. Since it sounds consistent, Wireshark your call out to the remote extension.

Check the SDP to understand what IP RTP is being negotiated with.

In the headquarters firewall, confirm that the RTP port range (default is UDP 10000-20000) is forwarded to the LAN IP address of the PBX.

In the PBX Asterisk SIP Settings, confirm that External Address and Local Networks are correctly set. If you change these, after Submit and Apply Config you must restart Asterisk.

At the remote site firewall, confirm that any SIP ALG is disabled. In the device, confirm that anything related to NAT, STUN or ICE is turned off.

If you still have trouble:

Is this a new installation, or did this just start failing? If the latter, do you have any idea what may have changed (new firewall, new ISP, software upgrade, etc.)? Device make/model (or softphone/SIP app name/version)? Remote site firewall make/model? Any VoIP-related settings? Does it have a public IP on its WAN interface? If not, please explain (ISP modem is configured as router, ISP does CGNAT, etc.)

Sorry for the slow reply.

-Confirmed that my TP ports (10001-20000) are forwarded in the router on the PBX side.
-Confirmed that SIP ALG is disabled on the phone network (it wasn’t but now is. Problem still exists)
-Confirmed that External Address and Local Networks are correct
-The router at the remote office (TP-Link Deco) doesn’t appear to have STUN or ICE settings. Do I need to forward any ports on that router?

This is a new office that we just opened in January. To the best of my knowledge, we have been having the issue since opening the office. The router and internet at the new office was supplied by the landlord.

If I call the office’s inbound 10-digit phone number the audio works fine, it’s just internal calls from one extension to another. Internal calls to other remote offices work fine.

I did a packet capture in the System Admin and have it in Wireshark, but I’m a novice and don’t know what I’m looking for.

Post your capture of a call that’s not working in pastebin or here directly if it’s not super long.

You can also capture sip packets in asterisk cli by running pjsip set logger on if you are using PJSIP for the extensions.

I’m not sure what parts of the capture need to be pasted. Here is the entire packet capture file in my Google Drive, hopefully that will work.

You are saying that these are remote offices, yet both the source and destination seem to have the same subnet of 192.168.1.x. How are these connected?

The source extension (9008) is at the same location as the PBX. The destination (9166) is at a remote office about 100 miles away. The remote location is on it’s own internet connection and not connected to the main office with the PBX in anyway.

What’s at 192.168.1.109? Is that the local IP of your phone system?

Yep, 192.168.1.109 is the LAN IP of my PBX

Ok, something is telling the phone system to send the RTP audio to 192.168.68.61 instead of the external WAN IP that the connection is coming from. Is 192.168.68.X the local LAN subnet of the remote network where your phone is?

Yes, 192.168.68.61 is the LAN IP of the phone at the remote location

Something on the remote network is telling the PBX to send RTP packets for that leg of the conversation to the internal LAN address of the phone, which your PBX obviously won’t be able to reach directly. If SIP ALG is disabled it might be a setting in your remote phone?

Not sure where to send you from here, maybe somebody else here has an idea.

I appreciate the help!

Since that is the only phone at that location would it work if I forward ports 10000-20000 to the phone on the remote router?

This has got nothing to do with port forwarding. Your PBX is sending RTP packets to the wrong IP. There is no way for those packets to find the phone while they are being sent to the internal LAN IP of the remote phone.

This is not a problem. Normally, the PBX will attempt to send a few RTP packets to the (usually private) address of the phone. However, as soon as RTP arrives from the phone, Asterisk switches the outbound stream to whatever address and port the phone’s RTP is coming from.

In packet 1578, Asterisk correctly requested that RTP be sent to 152.117.110.21 port 11300. However, no RTP from the phone arrived there, so it continued to send to 192.168.68.1.

My first suspicion would be the router/firewall at the PBX site, which should forward UDP ports 10000-20000 (from anywhere) to 192.168.1.109.

If this is verified correct, I suggest capturing traffic on its WAN interface to see whether RTP from the phone is coming in.

1 Like

On the router at the PBX site, I have ports 10001-20000 (UDP) forwarded to my PBX at 192.168.1.109. I don’t recall why I started it at 10001 but there was some reason. I have the RTP port start range in my PBX set at 10001.

Sorry for my ignorance on this, but how do I capture WAN interface traffic? Do I need to do that in my router? (Asus RT-AC1750).

Does it make a difference that the audio works fine when I call the remote office’s regular 10-digit phone number? That traffic comes into the PBX via an inbound route, then goes directly to the extension 9166. Does it make sense that the audio always works when calling the 10-digit phone number but never works when dialing just the extension?

I don’t think this will break many calls, but RTP is always even numbers and RTCP is always add numbers, so the range should start at an even number, and, strictly speaking, should end at an odd one.