No Option 43 in DHCP ACK
Jason Bailey
jbailey at emerytelcom.com
Tue Aug 4 20:45:39 UTC 2015
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/20150804/41ac667c/attachment.html>
More information about the dhcp-users
mailing list