Class match and known

David W. Hankins dhankins at
Thu Mar 18 23:37:52 UTC 2010

On Mon, Mar 15, 2010 at 10:28:07AM +0100, Andre Schubert wrote:
> class "ff:00:00:00:01:11" {
>     match if substring(option agent.remote-id,0,6) = ff:00:00:00:01:11 and known;
> }
> But the class statement does not match.
> What iam doing wrong here?

The easiest way to debug a class match is to use log() to present to
the log the information the client's packet is presenting and compare
it to what you think it should read as.

  log(debug, concat("option agent.remote-id[0..6] = ",
		    binary-to-ascii(16, 8, ":",
			            substring(option agent.remote-id,
					      0, 6))));
  class "ff:00:00:00:01:11" {
     match if substring(option agent.remote-id,0,6) = ff:00:00:00:01:11 and known;

    log(debug, "Class 'ff:00:00:00:01:11' matched!");

You can then compare the logged option agent.remote-id with the
right hand value you have configured in the class and confirm they


I think by context with the subject line, you mean the class statement
is not matching a known/unknown ACL somewhere else in your config.

This is correct; class statements do not change known statements, only
host record matches affect known/unknown status.  Class matches can
only be used in ACL's by specifically referring to their name
("members of x").

David W. Hankins	BIND 10 needs more DHCP voices.
Software Engineer		There just aren't enough in our heads.
Internet Systems Consortium, Inc.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <>

More information about the dhcp-users mailing list