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 Beam May 20 '14 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 '14 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 '14 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 Beam May 20 '14 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 Beam May 20 '14 at 19:45

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.

| improve this answer | |
  • This is on a dedicated Switch. Yes Option 66 is set to the – Jim May 20 '14 at 18:15
  • As soon as the router Solicitation ICMPv6 messages pop up, the phone reboots out of the upgrade screen. – Jim May 20 '14 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 '14 at 7:51
  • Tried option 66 for the Cisco 7941G: Tried tftp:// | "tftp://" | | "" still no luck :( – Jim May 30 '14 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 '14 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.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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