VoIP.info Guide

Register an IP phone with FreePBX

Map the PBX extension to handset account fields and verify the resulting contact and call behavior.

Reviewed 2026-09-07FreePBX 17 · Debian 12IntermediateDocumentation based · not lab tested

Check prerequisites in order

The handset needs power, a usable network address, reachability to the PBX and a created PJSIP extension whose configuration has been applied. Confirm the phone is on the intended firmware track and is not being overwritten by a previous provisioning service.

For the first test, prefer a restricted local network. Remote NAT, VPN and certificate variables make diagnosis harder if the basic account has never registered successfully.

Registration: isolate transport from authentication
If REGISTER never reaches the server, check DNS, transport and firewall. If the server challenges, inspect the authenticated retry. A 200 response confirms registration, after which calls need separate testing.

A first 401 challenge can be normal. Read the response to the authenticated retry before changing credentials.

Map the handset fields

Use the PBX's reachable address or intended DNS name as the registrar/server. Enter the extension's SIP identity and authentication ID as required by the phone interface, with the extension device secret. Do not enter the FreePBX administrator password.

Different manufacturers label server, proxy and authentication fields differently. An outbound proxy is not automatically the same as a registrar. Use the handset's official administration guide when those fields are ambiguous.

Interpret the result

A displayed registered state should correspond to the expected PBX contact. If registration repeatedly fails, compare the account identity, secret and transport before editing routes. Check whether a firewall or intrusion-protection rule blocked the device after earlier failed attempts.

An initial authentication challenge can be normal. A phone that never receives a response has a different problem from one receiving a clear rejection. Preserve the complete bounded exchange when escalation is needed.

Test everyday operation

Call another internal extension, then call back. Check sound in both directions, hold, transfer and voicemail indication. Restart the handset and verify that settings persist. A provisioning server may restore old values after reboot, so a successful manual change alone is insufficient. Add external calling only after internal operation and permissions are understood.

Sources & applicability

Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.

Examples require adaptation to your topology. No live PBX or hardware testing is claimed.