Putting iPads in their own IP pool?

Bob Proulx bob at proulx.com
Fri Oct 8 16:49:25 UTC 2010

I am trying to allocate iPads a particular set of addresses.  I
thought of using classes and pools.  I can match on the ethernet
vendor.  But I can't.

class "ipad" { match if (substring(hardware,1,3) = d8:a2:5e); }

subnet netmask {
  option routers;
  pool {
    failover peer "dhcp-failover-peers";
    allow members of "ipad";
  pool {
    failover peer "dhcp-failover-peers";
    deny members of "ipad";

That works to a point.  But iPads have several network vendors.  So I
tried listing them out.

class "ipad" {
  match if (substring(hardware,1,3) = c8:bc:c8);
  match if (substring(hardware,1,3) = d8:a2:5e);

But there can only be one match per class.  So I tried multiple
classes since the documentation implies that will work due to the
examples in the subclass section.

class "ipad" { match if (substring(hardware,1,3) = c8:bc:c8); }
class "ipad" { match if (substring(hardware,1,3) = d8:a2:5e); }

Apparently the last class declaration overwrites the previous one and
so this only works for the last declaration of class.

So...  Two questions as I am obviously thrashing around in the dark.
First, is there a way to make a class of more than one thing such as
multiple ranges of ethernet addresses?  Second, and more usefully to
me, any suggestions on how to sort out iPads from other network


More information about the dhcp-users mailing list