FreePBX13: Use P-Preferred-Identity Header=On causes GXP2170 to fail to make outgoing calls


It took me many many hours to find out this issue. With latest FreePBX v13 (asterisk 13), if I do not set P-Preferrer-Identity to Off the phone can receive but will not make outgoing calls.

I tested on latest 1.9.118 firmware and many other firmware versions and no luck.


By the way, this is FreePBX13 and using PJSIP.


FreePBX problem, probably it sent out PPI to provider which is rejected.


Nope, the phone can’t even make ext to ext calls. One symptom I noticed is that the phone never tries to INVITE with the auth header, only the first INVITE is sent (without the auth header) and then the PBX rejects due to no authentication and the phone never tries the second time with the auth header.


What is the rejection code?


It also can be problem with size of packet, try turn off PAI, P-emerg, X-Grands for making packet smaller (see below picture).

Turn off PPI in GXP:


True, if I disable only PPI but keep P-Access-network-Info and P-Emergency-Info enabled it also does not work. Only X-Grandstream-PBX seems to not affect it working.

So yes, for PJSIP on FreePBX13 I need PPI, PANI and PEI disabled in order for it to work.


Rejection code for first Invite is 401 Unauthorized. Then I expect the phone to Invite again with the auth header but the second Invite never happens. From what I saw in all debugging I did, it fails silently.


Mbello the issue is with the packet size as Marcin mentioned (at least in my case with older FreePBX). If you disable must of those and in some cases just the list of codecs you will see the call going through.


I have this few times, GS with auth is more then 1500, and some switches/routers/whatever mess with splitting packets.


So, you are saying that GS phones do not respect network MTU size when sending out their network packets? That would be odd!


Packets are larger due to more data. So it will be defregmented to smaller packets.
That should be no problem but as i found many server, switche or router have bugs and do not restructure it correctly. Easiest way to move around is making packet sent less data (which most part is not needed anyway).