How does DHCPD determine what IP address to assign and...

Simon Hobson dhcp1 at
Fri Dec 28 17:34:12 UTC 2007

Ryan McCain wrote:

>Am I getting warmer:

I think so !

>class "DialUp" {
>     match if ( (substring(suffix(dhcp-client-identifier,7),0,5)="Async");
>      or
>      (substring(suffix(dhcp-client-identifier,6),0,5)="Async") );
>        log (info, " Matched Dialup Rule");

I think that should be (I've reformatted it to make it easier for me 
to see the nesting) :

class "DialUp" {
     match if (
     ) ;

     log (info, " Matched Dialup Rule") ;

I think the only difference there is removing one ';' from the 'match if' line.

>subnet netmask {
>      pool {
>          allow members of "DialUp";
>          range;
>          option routers;
>          }
>subnet netmask {
>      pool {
>          range;
>          option routers;
>          }

And you need a 'deny' statement in the second pool, eg :

subnet netmask {
      pool {
          deny members of "DialUp";
          option routers;

Without that deny statement, members of the dialup class can still 
get leases from that pool.

>...I'd like to at least get someone from here to say "looks good" 
>before I go ahead with the change.  I'd rather  not put in a change 
>request, have the change not go through and re-schedule it 5-6 times 
>until I get the syntax right.  Like I said previously, by powers out 
>of my control we don't have a test environment for this so I 
>appreciate you guys time.

Talk about making life difficult !

I'd be tempted to 'find' yourself a box with enough disk and ram to 
run Xen, then build your own private test 'network' of (virtual) 
machines. Surely there's someone who wouldn't notice if their ram 
went down a bit ;-)

More information about the dhcp-users mailing list