Option 150 - format for multiple TFTP servers - Solved (workaround)

  • I have been attempting to define multiple TFTP (IP) addresses for use in OPTION 150.  The RFC states it can be a list, but I cannot get pfSense to correctly parse what I put in.  If I select the formation to be "IP address or host" and can define one address fine.  When I try two I get various results:

    • with format as "IP address or host";  –> The following input errors were detected: IP address or host type must be an IP
                                                            address or host name.;  --> Same as above  --> Same as above  --> The service will not startup and it reports it is expecting a semi-colon in the configuration.

    • With text or string as the format I get ASCII values stuffed in and it does result in getting a couple of addresses being returned in the DHCP request, but the are invalid IP addresses.

    Is supplying a list supported? or is there a way for me to make this work?



  • Is there any way to add the Option 150 list (I will only have two IP addresses) to a configuration file?  This seems like a missing option on the GUI.  Every other router I am looking at does this differently or not at all.  SonicWall allows defining an array for an option.

    I need to be able to do this per subnet (LAN and OPT1).

    I have found some info on the web describing the "write dhcpd.conf" area of /etc/inc/services.inc, but I am far from knowing what to include.

    I can see "option custom-opt1-0;" and "option custom-opt1-1" in the dhcpd.conf file under the correct subnet, but if I change anything here wont it get overwritten by the GUI?  I thought I would try "option custom-opt1-0;;"

    Any other ideas? Am I even on the right track?



  • I was able to get pfSense to spit out a valid option 150 with two IP addresses.  It is an issue with the pfSense GUI not permitting more than one IP address.

    I defined one custom option 150 as a String and then used hex equivalents of the ip addresses divided by colons (NO Quotation Marks).

    For example:

    To define and, I converted each IP address into the hex values A0010064 and A00100C8.  The values have to be in 4 byte increments, but I assume we could create a longer list of IPs using this method.

Log in to reply