I've been reading and googling for the past week trying to wrap my head around the Cisco IP Phone TFTP upgrade process. The effort has been to try and make a Cisco 7941G work with Asterisk. This process has been documentended well in many places and I've followed several guides. The issue I am having is the Phone in questino never seems to ask or make TFTP connection even though it is getting the correct information from the DHCP option 150.

Doing a Wireshark, I see the Cisco phone ask for a DHCP information, I see the DHCP return an Offer and the Phone accept it. I then see the Phone issue a few ARP requests for the location of the TFTP server, but after that. Nada. One thing that is alarming or I've notice is ICMPv6 Router Solicitation datagrams seem to show up and then are immediately followed by the Phone rebooting again and again.

Other notes: I've verified the TFTP server is working and logging via a TFTP client attached to the same Subnet.

  • I've verified the phone can be upgrade. Via a know working environment using Cisco Call Manager, the Phone pulled down the firmware correctly.
  • I've tried doing the Soft reset # 123456789*0# and the Hard reset to format the flash # 3491672850*#
  • I never see anything in the TFTP server logs, even though I've used a TFTP client to verify the verbose level
  • Is CDP or LLDP involded at all with the phone upgrade process? I see a lot of those messages, even when running it through a hub and not a switch.
  • Weird thing is, I plug in a Cisco 7945G phone and it accepts the option 150 and pulls down the firmware files and configs.

Screenshot of Capture: Wireshark Capture

  • 1
    a) your capture is showing every packet twice, and b) it's only showing broadcast traffic. Are you sure you're capturing what you think you are?
    – Ricky
    May 20, 2014 at 18:07
  • Single switch with Monitor port enabled. Both Phone and TFTP Server are on the same switch. No trunks or uplinks.
    – Jim
    May 20, 2014 at 18:14
  • I've switched over to a HUB and sitll the same werid results. DHCP offer and ACK, then some ARPs then Router Solicitation and the Phone Reboots.
    – Jim
    May 20, 2014 at 19:06
  • Power up "naked" (not connected to any network) You're supposed to be able to static configure the whole thing. (which I had to do to an ancient 12SP+. Yes, I said 12SP+)
    – Ricky
    May 20, 2014 at 19:21
  • CDP/LLDP are used to tell the phone what "voice vlan" to use. The cisco poe switch I've been using has "voice-vlan" set to "untagged" to avoid the long delay during startup.
    – Ricky
    May 20, 2014 at 19:45

2 Answers 2


Option 66 is "boot server", and has worked on every cisco ipphone I've plugged in. As you only have one server, 150 isn't necessary unless there are other "network boot" services... (everything listens to 66, cisco's listen to 150)

The way I've always dealt with this is to have a dedicated, isolated network for setting up phones. The DHCP server provides IP setting for this network and a tftp server via option 66. Reset the phone and clear network setting. It then restarts and goes through the whole shebang. The only phone that was ever a problem had been locked to a call manager -- with an unknown to us password. (extra steps were required to clear it. if it had be "secured", it would've been trash -- see also: CTL files, and encrypted configs.)

I'm not familiar with the 41G, but the 40 has a diag serial port on it. It might emit an error message -- but it's been a while since I messed with that diag port.

  • This is on a dedicated Switch. Yes Option 66 is set to the
    – Jim
    May 20, 2014 at 18:15
  • As soon as the router Solicitation ICMPv6 messages pop up, the phone reboots out of the upgrade screen.
    – Jim
    May 20, 2014 at 19:00
  • the 7961's AUX port will output to a serial diag at 9600 baud. you need to have the proper pins though. Just tried it on one I have here. I believe it jumps to a higher BAUD on newer firmware
    – knotseh
    May 30, 2014 at 7:51
  • Tried option 66 for the Cisco 7941G: Tried tftp:// | "tftp://" | | "" still no luck :(
    – Jim
    May 30, 2014 at 17:35
  • It's frustrating because the Cisco 7945G that I am using as well, takes the TFTP info from DHCP and pulls down everything correctly. But with the Cisco 7941G I never see it even attempt to grab any files from the TFTP server....werid. Same single switch, same port.
    – Jim
    May 30, 2014 at 17:37

to whoever may run into this issue with the Cisco 7941(G)s, I was able to get it to work by using Microsoft DHCP Option 66. Putting the IP address in the ASCII string field for option 66 DOES NOT work. The string has to be a FQDN resolvable by your DNS servers. For me I created the A record for sip.mycompany.local on my DNS servers and placed that name in the DHCP option 66 field "sip.mycompany.local" no tftp:// ftp:// http:// https:// needed.

Short answer Option 66 ASCII String requires a name that the phone will query the DNS servers it is assigned by DHCP. Putting an IP address in this field will NOT work.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.