Auto provision yealink phones

I have the following setup:

  • 3 Yealink T22P
  • 1 Yealink T26P
  • 1 Yealink T28P
  • FreePBX (duh)

I would like to test with auto provision to not have to edit settings for each individual phone. I’m looking at TFTP for this. I have placed to following file in the directory called “tftpboot”: y000000000000.cfg

This file contains the following lines: = = Phonebook

The only thing I’m trying to do at this time is setting the remote directory.

On my Ubiquiti router I have set option 66 (a value called “tftp-server-name”) via DHCP to the IP of my FreePBX.

Is this correct because nothing happens on my T28P and also nothing is logged in “tail -f /var/log/messages |grep tftp”. Oh and I also tried a file called mac_address.cfg which also doesn’t do anything.

How can I troubleshoot this?

Your question is not Freepbx related.
However you should check:

  • tftp availability.
  • autoprovision settings on phone.

Any tips how to go about doing the first?

install tftp client. it is available both on windows and on linux

Option 66 is a bugaboo. Sometimes, it takes an IPADDRESS object, sometimes it takes a STRING. This is largely dependent on the configuration of the DHCP server and how the people that implemented your DHCP decided to set it up.

You can try changing the entry to “192.168.0.x” where the address the IP address of your TFTP server but include the quotation marks around it.

Make sure your tftp directory is set up correctly with all the right permissions and that the files within the directory have the right permissions.

Make sure the “disabled” line in the inetd config file (/etc/xinetd.d/something, IIRC) turns the option on. By default, the TFTP server is normally on, but it doesn’t kill you to check it and restart xinetd.

Make sure you turn on the FreePBX firewall TFTP port. By defaults, it’s blocked.

If you’re sure the TFTP directory is set up correctly, try monitoring the tftp port (look in /etc/services) using “tcpdump -I eth0 port 999” (where 999 is your TFTP port number.

If you see incoming activity, but no outgoing activity, either TFTPD is disabled or the firewall is blocking it.

That’s a bunch of things to try. Let us know what happens.

I don’t see a file or directory called “xinetd.d” in /etc. This could explain a lot I guess?

Can TFTP be installed manually? Yes of course, but how? :slight_smile:

My router does not allow for tftp to be entered with “x.x.x.x” by the way.

Something is wrong with your system. xinetd should be installed in the base version of the FreePBX distro. You have to have that in order to install tftpd.

You need to yum install xinetd and tftp. Once you’ve done that, do the rest of what we’ve been talking about.

-bash: yum: command not found

I’m using RasPBX by the way.

OK, then - you need to install xinetd and tftp.


I suggest using a Distro that has everything setup and getting off a PI. You are asking for technical help on something that is not FreePBX related but with your OS setup.

I assume you mean “Attitude?” and no, it’s the right answer. As soon as you get xinetd and tftpd installed, your problems should be mostly solved.

If you actually mean “Aptitude?” then I assume you mean that one of us isn’t able to do that. Since I don’t run RasPBX, then yes, I lack the aptitude to help you much beyond this point.

Sorry, but I do mean Aptitude :slight_smile:

I installed both using:

apt-get install xinetd
apt-get install tftp

Still not working though :frowning:

OK, with those two packages installed, start through the steps we talked about earlier.

  1. Check to make sure that xinetd is running. It is a service you will have to start and chkconfig to keep running,
  2. Check to make sure that tftpd is set to “not be disabled” in the xinetd.d. config file for tftp.
  3. With both of those installed and working, you should start to see interaction with the /var/log/messages file showing the files that your phones are requesting.

xinetd seems to be running (according to top):

This is my current config (I created this file by hand because it wasn’t on my system):

What is this?

server = /usr/sbin/in.tftpd

There is nothing in the location.

The only entries in my messages log are:

Sep 8 17:19:35 raspbx rsyslogd-2007: action ‘action 17’ suspended, next retry is Thu Sep 8 17:21:05 2016 [try ]

That is the tftpd program. Without it, you’re not going anywhere. Your install of the tftpd program failed.

vespino, what are you trying to test? Auto provisioning requires at least some editing in preparation ( mac addr to ext ) to be of any use to begin with. About the only thing you could do is set multiple devices to be the same pjsip extension. Which, while neat, would be somewhat silly. Provisioning is great because of the control it provides and there will be editing involved. That and use hardware that you can load the FreePBX ISO on ( or use hosted ) so you don’t have to learn to install tftpd to have it run. The ISO takes care of that for you.

What I am trying to say is you might want to step back and examine the basic concepts here and re think your question and your lab.