I spent Saturday at the office finalizing some of the network functionality in our two offices. One of the main things we needed to implement was a DHCP server at the sattelite office, because our DHCP needs go beyond what the Cisco router we use can offer. Primarily the limitation is in regards to requiring multiple domains in our search path for the DHCP clients. In any case, we decided to simply install a Linux server (Debian 5.0 in this case) and run DHCP from there.
Installing and configuring DHCP is nothing new for me, and it was configured fairly quickly for the three subnets we use in that office. The difficult part, and the part I had to spend some time on Google looking up, was in regards to our Cisco Phones. Because we would be disabling the Cisco router DHCP functionality it all had to be replaced on the Linux server. I had never needed to deal with DHCP in regards to Cisco phones before, but it is actually a fairly simple fix. Here is an example:
option voip-tftp-server code 150 = ip-address;
option voip-tftp-server 192.168.134.192;
By adding the two “option” lines in my global configuration I was able to support the Cisco phones requirement for DHCP. Note: I did try to put this within the subnet declaration for the phones specifically, but this is an option that cannot be nested. In other words, it has to go in the global conf or it’ll complain and not start.
This should likely work for you as well, just make sure you replace the IP for “voip-tftp-server” with the address to your core phone server. Hopefully the next time someone hits google looking for “option code 150 cisco phone” the clear answer isn’t so hard to find.