No Option 43 in DHCP ACK

Jason Bailey jbailey at emerytelcom.com
Mon Aug 24 16:33:51 UTC 2015


So I've managed to make several of the suggested configurations work 
with newer versions of the DHCP server (CentOS 7, for example), but I 
cannot get it to work with the version we are running (CentOS 6, ISC 
DHCP 4.1.1). Any ideas as to why that might be?

Jason



On 08/04/2015 02:45 PM, Jason Bailey wrote:
> Thank you all for the many options. I'm still evaluating the approach 
> I'd like to take.
>
> I do have another question, however. Is it possible to match class 
> based on option 43 data found in the client's DHCP request? Could I do 
> a substring match of sorts against that data?
>
> Best,
>
> Jason
>
> On 08/01/2015 07:36 PM, Frank Bulk wrote:
>> Jason,
>>
>> I do it within the subnet (we're also a Calix shop) and it seems to work
>> fine.
>>
>> Frank
>>
>> -----Original Message-----
>> From:dhcp-users-bounces at lists.isc.org
>> [mailto:dhcp-users-bounces at lists.isc.org] On Behalf Of Peter Rathlev
>> Sent: Saturday, July 18, 2015 8:38 AM
>> To: Users of ISC DHCP<dhcp-users at lists.isc.org>
>> Subject: Re: No Option 43 in DHCP ACK
>>
>> On Wed, 2015-07-15 at 10:55 -0600, Jason Bailey wrote:
>>> Calix ONTs, actually. I'm trying to get only certain ONTs to pick up
>>> certain option 43 configuration directives.
>>>
>>> Their documentation says:
>>>
>>> Configure the default global DHCP options at the DHCP server as
>>> follows:
>>> option space CALIX-ONT-SERVER;
>>> option CALIX-ONT-SERVER.cms-address code 1 = ip-address;
>>> option CALIX-ONT-SERVER.second-tftp-address code 2 = ip-address;
>>> option CALIX-ONT-SERVER.syslog-address code 4 = ip-address;
>>> option CALIX-ONT-SERVER.firmware1 code 101 = text;
>>> option CALIX-ONT-SERVER.firmware2 code 102 = text;
>>> option CALIX-ONT-SERVER.firmware3 code 103 = text;
>>>
>>> Configure specific values for DHCP options within a subnet
>>> declaration, as shown in the following example:
>>>
>>> # AE-ONT Management Network
>>> subnet xxx.xxx.xxx.x netmask xxx.xxx.xxx.x{
>>> vendor-option-space CALIX-ONT-SERVER;
>>> option CALIX-ONT-SERVER.cms-address xxx.xxx.xxx.xxx;
>>> option CALIX-ONT-SERVER.syslog-address xxx.xxx.xxx.xxx;
>>> option CALIX-ONT-SERVER.firmware1 "blah";
>>>
>>> The problem is, that doesn't work (I couldn't get to work, anyhow). If
>>> you use class matching, the DHCP server will send option 43
>>> information, but unfortunately (as far as I see it, anyway), only if
>>> those classes are declared globally.
>> Classes are always global. It's an error to place the class declaration
>> inside e.g. a subnet declaration.
>>
>>> The problem with that is that the matching ends up being all
>>> encompassing and ONTs end up getting options that they shouldn't. In
>>> short, it creates severe issues on the network.
>> Could you maybe use something like this:
>>
>>    option X-CALIX-Selector code 247 = string;
>>    subnet 192.0.2.0 netmask 255.255.255.128 {
>>        option X-CALIX-Selector "asdf";
>>    }
>>    subnet 192.0.2.128 netmask 255.255.255.128 {
>>        # No CALIX option
>>    }
>>    subnet 203.0.113.0 netmask 255.255.255.0 {
>>        option X-CALIX-Selector "something-else";
>>    }
>>    class "CALIX-ONT" {
>>        match if substring(option vendor-class-identifier, 0, 9) = "Calix
>> ONT";
>>        vendor-option-space CALIX-ONT-SERVER;
>>        if (config-option X-CALIX-Selector = "asdf") {
>>              option CALIX-ONT-SERVER.cms-address xxx.xxx.xxx.xxx;
>>              option CALIX-ONT-SERVER.syslog-address xxx.xxx.xxx.xxx;
>>              option CALIX-ONT-SERVER.firmware1 "blah";
>>        } elsif (config-option X-CALIX-Selector = "something-else") {
>>              option CALIX-ONT-SERVER.cms-address yy.yy.yy.yy;
>>              option CALIX-ONT-SERVER.syslog-address yy.yy.yy.yy;
>>              option CALIX-ONT-SERVER.firmware1 "another-blah";
>>        }
>>    }
>>
>> Blocks without an X-CALIX-Selector config-option shouldn't hand you any
>> of the options.
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/dhcp-users/attachments/20150824/1f2322bf/attachment.html>


More information about the dhcp-users mailing list