Issue with Registering Polycom VVX 350 on FreePBX 17 (PJSIP)

Hello! I’m encountering an issue while trying to register my Polycom VVX 350 phone to FreePBX using PJSIP. I’ll try to describe the situation in detail.

System Configuration:

PBX Server:

  • FreePBX: Version 17.0.19.16
  • Asterisk: Version 21.5.0
  • OS: Debian 12.2.0
  • Server IP Address: 10.200.112.161
  • SIP (PJSIP) Port: 5060 (UDP)

Phone Configuration:

  • Model: Polycom VVX 350 (3111-48830-001 Rev=A)
  • Firmware: 6.4.7.4477 (latest available at the time of testing)
  • Phone IP Address: 10.200.112.162

Issue:

The phone is not able to register with the FreePBX server, and I see the following logs on the server:

<--- Received SIP request (785 bytes) from UDP:10.200.112.162:5060 --->
REGISTER sip:10.200.112.161:5060 SIP/2.0
Via: SIP/2.0/UDP 10.200.112.162:5060;branch=z9hG4bKb6fd0003D09E17AF
From: "102" <sip:[email protected]>;tag=834406EB-16614193
To: <sip:[email protected]>
CSeq: 4 REGISTER
Call-ID: 3c61f3b8c6e9bf47830ca9c0ba6bbe29
Contact: <sip:[email protected]:5060>;methods="INVITE,ACK,BYE,CANCEL,OPTIONS,INFO,MESSAGE,SUBSCRIBE,NOTIFY,PRACK,UPDATE,REFER"
User-Agent: PolycomVVX-VVX_350-UA/6.4.7.4477
Accept-Language: en
Authorization: Digest username="", realm="asterisk", nonce="1731697171/783a4d6f6b973c5afb848a9fe52c52d1", qop=auth, cnonce="uFg+XYXZesDv3Dx", nc=00000001, opaque="5d2eb01445fa09ff", uri="sip:10.200.112.161:5060", response="60400ab0c77f2772224a0c3d90a8fa36", algorithm=MD5
Max-Forwards: 70
Expires: 3600
Content-Length: 0

NOTICE[1856487]: res_pjsip/pjsip_distributor.c:673 log_failed_request: Request 'REGISTER' from '"102" <sip:[email protected]>' failed for '10.200.112.162:5060' (callid: 3c61f3b8c6e9bf47830ca9c0ba6bbe29) - Failed to authenticate
<--- Transmitting SIP response (510 bytes) to UDP:10.200.112.162:5060 --->
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 10.200.112.162:5060;rport=5060;received=10.200.112.162;branch=z9hG4bKb6fd0003D09E17AF
Call-ID: 3c61f3b8c6e9bf47830ca9c0ba6bbe29
From: "102" <sip:[email protected]>;tag=834406EB-16614193
To: <sip:[email protected]>;tag=z9hG4bKb6fd0003D09E17AF
CSeq: 4 REGISTER
WWW-Authenticate: Digest realm="asterisk",nonce="1731697171/783a4d6f6b973c5afb848a9fe52c52d1",opaque="4f458b604db27cf3",algorithm=MD5,qop="auth"
Server: FPBX-17.0.19.16(21.5.0)
Content-Length:  0

What especially concerns me is the line “Authorization: Digest username=“”, realm="asterisk”, as the username seems to be missing for some reason.

Phone Configuration:

<PHONE_CONFIG>
    <!-- Note: The following parameters have been excluded from the export:
        reg.1.auth.password=""
    -->
    <ALL
        device.prov.serverName.set="1"
        device.prov.ztpEnabled="0"
        device.prov.ztpEnabled.set="1"
        device.set="1"
        feature.flexibleLineKey.enable="1"
        powerSaving.enable="1"
        tcpIpApp.sntp.address="north-america.pool.ntp.org"
        voIpProt.SIP.local.port="5060"
        voIpProt.SIP.outboundProxy.transport="UDPOnly"
        reg.1.address="102"
        reg.1.auth.useLoginCredentials="1"
        reg.1.auth.userId="102"
        reg.1.displayName="102"
        reg.1.label="102"
        voIpProt.server.1.address="10.200.112.161"
        voIpProt.server.1.port="5060"
        voIpProt.server.1.transport="UDPOnly"
        reg.1.server.1.address="10.200.112.161"
        reg.1.server.1.port="5060"
        reg.1.server.1.transport="UDPOnly"
        reg.1.server.2.transport="UDPOnly"
    />
</PHONE_CONFIG>

To further troubleshoot, I installed MicroSIP on my computer and was able to successfully register with the server.

For testing purposes, I also disabled the Firewall on FreePBX via the web interface and stopped the fail2ban service.

I’m looking for any advice or suggestions on what might be going wrong or if someone has faced similar issues.

  • Could it be a specific configuration issue with Polycom VVX phones when working with PJSIP?
  • Is there anything else I can check in the FreePBX or Asterisk logs to determine why the username is missing in the authorization?
  • Any help in solving this or pointers to similar experiences would be greatly appreciated.

Thank you in advance for your time and help!

I don’t remember what it looks like in the export, but from the web interface for the line in question, Authentication section, try:

Use Login Credentials: Disable
Domain: 10.200.112.161
User ID: 102
Password: (match Secret for ext. 102)
1 Like

You’re right. It works. Thank you.

<PHONE_CONFIG>
	<!-- Note: The following parameters have been excluded from the export:
		reg.1.auth.password=""
	-->
	<ALL
		device.prov.serverName.set="1"
		device.prov.ztpEnabled="0"
		device.prov.ztpEnabled.set="1"
		device.set="1"
		feature.flexibleLineKey.enable="1"
		powerSaving.enable="1"
		tcpIpApp.sntp.address="north-america.pool.ntp.org"
		voIpProt.SIP.local.port="5060"
		voIpProt.SIP.outboundProxy.transport="UDPOnly"
		reg.1.address="102"
		reg.1.auth.domain="10.200.112.161"
		reg.1.auth.userId="102"
		reg.1.displayName="102"
		voIpProt.server.1.address="10.200.112.161"
		voIpProt.server.1.port="5060"
		voIpProt.server.1.transport="UDPOnly"
		reg.1.server.1.address="10.200.112.161"
		reg.1.server.1.port="5060"
		reg.1.server.1.transport="UDPOnly"
		reg.1.server.2.transport="UDPOnly"
	/>
</PHONE_CONFIG>

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