IP Phone Provisioning via DHCP “Option 66”
Introduction - What is Option 66?
For most networks, RPS is the easiest way to provision your phones. However, if you have blocked access to the internet for your phone system, or you have legacy phones, then another way to provision a big number of phones is to use option “66”. (Nothing to do with the infamous route “66”). Option 66 is an option set in your DHCP server, that allows you to specify a server to provision a device from. In our case, option 66 can be set to be the provisioning URL for the phone. The sequence will be:
- Phone boots up
- Phone requests IP from DHCP server
- DHCP server gives an IP PLUS an “option 66”
- This option 66 will contain the URL to the provisioning root folder on 3CX
- The phone will look for this file on the 3CX server using its MAC address
Step 1: Determine your provisioning folder link
The first step is to determine your provisioning root folder. It's different for each 3CX installation for security reasons. To determine it:
- Go to the Admin Console > User > IP Phone page.
- Choose a user that has an IP Phone configured and if not just configure any phone.
- The provisioning link will be shown at the bottom in the provisioning link section (see image.)
- To obtain the root folder, just remove the last part of the URL after the dash, which specifies the actual file.
- For example: https://single.cyprus.local/provisioning/ylqd9x1eid/ where single.cyprus.local will be your FQDN.
- This link will be the one to use in “option 66” unless you have Snom phones
- Snom phone users must add “cfg{mac}”, e.g. https://single.cyprus.local/provisioning/ylqd9x1eid/cfg{mac}
Step 2: Add IP Phone for each user
Now you must configure the IP phone for each user in the Admin console.
- Follow the steps in IP Phone Provisioning guide - to add a phone for a user.
- You will need to enter the phone’s MAC address.
- You can also import a list of users and phones.
Step 3: Set the DHCP Option 66
This example shows the process for Microsoft DHCP server. Three scopes can be set depending on whether you want it to apply to all phones or just to particular phones:
- Global Scope, which will offer the option to each DHCP client.
- Reservation Scope, which will offer the option to device matching MAC address only.
- Dynamic Scope, which requires a device “Vendor Class Identifier”.
Generally you can use a global scope if all phones use the same provisioning folder. So if all your phones are yealink or Fanvil you can use a global scope. If you have a few Snom phones then you will need to create a separate reservation for them as they require a different URL in option 66. To set option 66:
- Open the DHCP Server applet
- Navigate to the IPv4 Scope to “Scope Options”
- Right click and select “Configure Options…”
- Scroll down to find Option 66 “Boot Server Host Name”
- Paste the 3CX “base” provisioning link obtained in Step 1 to the string value field.
- Save and restart DHCP server.
If you have a few phones of a different brand that require a different format, then you will need to create a reservation for them so that the DHCP server will give them a different URL
Step 4: Restart IP Phones
Now you need to restart your IP phone so it takes a new IP and gets the provisioning URL. The phone should read the configuration and provision itself.
See Also
- Check our list of supported IP handsets
- Set up your team with a bulk import
- TFTP phones cannot use http as a provisioning option. A TFTP server needs to be installed in the network. Access this guide that shows you how to configure a TFTP server for 3CX.
- Provisioning using a TFTP server
Last Updated
This document was last updated on 29th June 2023