I apologize. It's my error. The colons here aren't for PHP, but for dhcpd.conf .... duh. My original patch was in error. It is corrected herein and the previous "correction" removed.

Tim A. wrote:
I had never successfully used the pfsense boot server option previously, had anyone else? I just noticed a typo in a the existing line that appends the filename to the next-server options to be written.
I don't think it would have worked properly.
Attached is my previous patch now also including a correction for that error as well.


Tim A. wrote:
DHCP Boot Server Options in pfsense are currently implemented only via the next-server option method, requiring the server IP and boot file. This works great... if you only have one device to netboot. Or if you have a complex dhcpd.conf serving different images according to the requesting MAC. But that's not an option on pfsense and doesn't make sense anyway.

Most commonly these days, DHCP Boot Server Options are used for IP Phones--to deliver their config files and update firmware. Most IP phone systems these days that I've seen (currently using Shoretel) prefer the option 66 method, only requiring the server IP. The boot server (phone system) then determines what files to serve based on the requesting MAC. Its much easier to administer boot images on the boot server (phone system) than via DHCP. And makes more sense.

I originally made these modifications to a pfsense router at a remote site of ours to address this issue for their phones--which were not getting their expected firmware updates.
I thought I ought to share the mod with you all.

Its very minor.
It only adds boot-server option 66 method if you leave out the file image, and changes text in the GUI indicating as much.


------------------------------------------------------------------------

--- services.inc.orig   2009-06-27 03:09:53.000000000 -0400
+++ services.inc        2009-06-27 05:59:54.000000000 -0400
@@ -115,6 +115,7 @@
 
        $dhcpdconf = <<<EOD
 option domain-name "{$syscfg['domain']}";
+option boot-server code 66 = string;
 default-lease-time 7200;
 max-lease-time 86400;
 authoritative;
@@ -279,6 +280,10 @@
                                $dhcpdconf .= " next-server 
{$dhcpifconf['next-server']};\n";
                                $dhcpdconf .= " filename 
\"{$dhcpifconf['filename']}\";\n";
                        }
+/* Add option 066 TFTP boot server */
+                        elseif ($dhcpifconf['next-server'] <> "") {
+                                $dhcpdconf .= " boot-server 
\"{$dhcpifconf['next-server']}\";\n";
+                        }
                }
                $dhcpdconf .= <<<EOD
 }

---------------------------------------------------------------------
To unsubscribe, e-mail: support-unsubscr...@pfsense.com
For additional commands, e-mail: support-h...@pfsense.com

Commercial support available - https://portal.pfsense.org

Reply via email to