Upgrade 3CX to v18 and get it hosted free!

Cisco Phones and IPv6

Author image

Cisco phones of a certain generation and later support IPv6 transport. To be of use, your call server must also support IPV6 and so must any phone on your network you wish to be reachable. Since voice traffic travels peer to peer and not through a server, talking to an IPv4 only phone would require reverting to IPv4 protocol. (Though there are complex workarounds using proxy servers.)

To set up a system to configure Cisco phones for IPv6, there must be a router advertisement as well as DHCPv6.

Configuring necessary services in Linux:

 

radvd

For router advertisement, install and configure radvd with your IPv6 prefix. Three flags are of interest here.

Tell devices not to auto assign their addresses. i.e. SLAAC off.
AdvAutonomous off;
Tell devices to get their address from DHCPv6 instead of SLAAC. Cisco phones don’t seem to like SLAAC.
AdvManaged on;
Tell devices to request DHCPv6 options, which is where tftp server location is encapsulated
AdvOtherConfigFlag on;

DHCPv6

Then install and configure DHCPv6 server. This example uses isc-dhcp-server. Follow man pages to setup your prefix and address pools and to assure you are starting the v6 dhcp server and not only the v4 dhcp server.

In the dhcp6.conf file, the vendor specific information field needs to be used to reply with the tftp server address from which the phone will obtain its config file (Cisco details). Unfortunately, this information needs to be encoded manually and described as raw data. (See Vendor Encapsulated Options in dhcp-options and section 22.17 in RFC3315)

Example:
Add to dhcp6.conf
option dhcp6.vendor-opts
00:00:00:09: This is the 32 bit vendor id field. 9 = Cisco Systems
00:01: The suboption number. 1 says to expect an IPv6 numeric address. 2 says to expect a name field.
00:10: The length of the following data field in octets. In this case, an IPv6 address which is 16 octets long, expressed in hex is 0010”
20:01:19:20:01:cf:00:00:00:00:00:00:00:00:00:01; the IPv6 address of tftp server. Replace with your information

After changing this config file, restart the dhcp service
sudo service isc-dhcp-server6 restart
and reboot the Cisco phone. Check the phone for a correctly assigned IPv6 address and TFTP server.

TFTP

There is a TFTP flag that may force your server to answer only IPv4 packets. On Ubuntu, look for /etc/xinetd.d/tftp. If there is a flag IPv4 set, remove it. The default is to allow both IPv4 & IPv6.

Modifying phone config files for IPv6

Have not seen this work yet.


Article Reviews

Write a Review

Your email address will not be published. Required fields are marked *

Required Field. Minimum 5 characters.

Required Field. Minimum 5 characters, maximum 50.

Required field.There is an error with this field.

Required Field.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

There are no reviews for this article. Be the first one to write a review.

Related Posts:

Get 3CX - Absolutely Free!
Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.