<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFCC" text="#000000">
    Looks like the formatting is really confusing here. See below.<br>
    <br>
    <div class="moz-cite-prefix">On 13/09/12 9:12, Simon Hobson wrote:<br>
    </div>
    <blockquote cite="mid:p06240874cc77328fa168@simon.thehobsons.co.uk"
      type="cite"><br>
      This is especially true when we get to your host statements.
      <br>
      <br>
      <br>
      <blockquote type="cite">#########################################
        <br>
        host m69 { hardware ethernet 00:0a:73:f9:e6:3a; fixed-address
        172.16.10.69; filename "<a class="moz-txt-link-rfc2396E" href="http://plik.cm"><http://plik.cm></a>plik.cm";}
        <br>
        class "M069" { match if binary-to-ascii(16, 8, ":", option
        agent.remote-id) = "0:a:73:f9:e6:3a"; spawn with option
        agent.remote-id; lease limit 1;}
        <br>
        pool { allow members of "M069"; range 172.16.20.69; }
        <br>
        ##############################################
        <br>
        }
        <br>
      </blockquote>
      <br>
      Not only is this hard to read, it's mixing scopes as well.
      <br>
      <br>
      host m69 {
      <br>
        hardware ethernet 00:0a:73:f9:e6:3a;
      <br>
        fixed-address 172.16.10.69;
      <br>
        filename "plik.cm";}
      <br>
        class "M069" {
      <br>
          match if binary-to-ascii(16, 8, ":", option agent.remote-id) =
      "0:a:73:f9:e6:3a";
      <br>
          spawn with option agent.remote-id; lease limit 1;
      <br>
        }
      <br>
        pool {
      <br>
          allow members of "M069";
      <br>
          range 172.16.20.69;
      <br>
        }
      <br>
      }
      <br>
      <br>
    </blockquote>
    If I take the original text and reformat it, I get this:<br>
    #########################################
    <br>
    host m69 { <br>
       hardware ethernet 00:0a:73:f9:e6:3a; <br>
       fixed-address 172.16.10.69;<br>
       filename "<a class="moz-txt-link-rfc2396E" href="http://plik.cm"><http://plik.cm></a>plik.cm";<br>
    }
    <br>
    <br>
    class "M069" {<br>
       match if binary-to-ascii(16, 8, ":", option agent.remote-id) =
    "0:a:73:f9:e6:3a";<br>
       spawn with option agent.remote-id;<br>
       lease limit 1;<br>
    }
    <br>
    <br>
    pool {<br>
       allow members of "M069";<br>
       range 172.16.20.69; <br>
    }
    <br>
    ##############################################
    <br>
    }<br>
    Other than the formatting and the detail that the host and class are
    separate, and the remaining "}" is not belonging here, I fully agree
    with you Simon.<br>
    <br>
    I want to suggest that proper formatting can make things clear in
    many cases showing proper scopes and other details. Maybe a
    "beautifier" would be useful?<br>
    <br>
    So what *exactly* are you trying to achieve with this ?
    <br>
    <blockquote cite="mid:p06240874cc77328fa168@simon.thehobsons.co.uk"
      type="cite">You've correctly put the host statement in the global
      scope, but then you've defined a class and pool within it.
      <br>
      I'm not sure about the class (do these need to be in the global
      scope ?), but the pool really belongs within the subnet.
      <br>
      <br>
      And there should be no need to have both the class/pool AND a
      fixed address - either one or the other. So either :
      <br>
      <br>
      host m69 {
      <br>
        hardware ethernet 00:0a:73:f9:e6:3a;
      <br>
        fixed-address 172.16.10.69;
      <br>
        filename "plik.cm";}
      <br>
      }
      <br>
      <br>
      or :
      <br>
      <br>
      class "M069" {
      <br>
        match if option agent.remote-id) = 0:a:73:f9:e6:3a;
      <br>
        spawn with option agent.remote-id; lease limit 1;
      <br>
      }
      <br>
      and
      <br>
        subnet 172.16.0.0 netmask 255.255.0.0 {
      <br>
          next-server 192.168.0.1;
      <br>
          option domain-name-servers 217.30.129.149, 217.30.137.200;
      <br>
          option routers 172.16.0.1;
      <br>
          option subnet-mask 255.255.0.0;
      <br>
          option broadcast-address 172.16.255.255;
      <br>
          pool {
      <br>
            allow members of "M069";
      <br>
            range 172.16.20.69;
      <br>
          }
      <br>
        }
      <br>
      <br>
      Ahh, now I've split that up, it becomes clearer. 172.16.10.69 is
      for the device with MAC address 00:0a:73:f9:e6:3a and 172.16.20.69
      is for the downstream device.
      <br>
      As you've defined it, I don't think the class would be matched
      because the definition (and pool statement) are within a host
      statement that will not apply to the downstream client.
      <br>
      By definition, the downstream client will not be the host with MAC
      address 0:a:73:f9:e6:3a, so the host statement will not be
      matches, and nothing inside it will be acted upon.
      <br>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Best regards

Sten Carlsen

No improvements come from shouting:
       "MALE BOVINE MANURE!!!"
</pre>
  </body>
</html>