<div dir="ltr"><br><div>Hi Chris,</div><div><br></div><div>'d-i' is the DHCP signature of the preseed Debian Installer (hence, 'd-i'). I've only ever used iPXE, I've never used gPXE before it, so yeah, a couple of minutes with tcpdump to inspect the ID it's sending in the option string should help you along; once you have that ID field, change the test condition in the second stanza and you should be good to go.<br><br>BTW the problem you're encountering with the looping boot process is one that affected ISC DHCP in a similar way, you just have to tune the conditions the DHCP server uses to distinguish the state of the booting client in order to direct it where you want to go. ... or flash iPXE on the firmware of all your servers hahaha :-)</div><div><br></div><div>cheers,</div><div>Klaus</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Sep 13, 2016 at 9:29 AM, Christoffer Jönsson <span dir="ltr"><<a href="mailto:bonchen@imap.cc" target="_blank">bonchen@imap.cc</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    <p><br>
    </p>
    <br>
    <div>On 2016-09-12 22:58, Klaus Steden
      wrote:<br>
    </div>
    <blockquote type="cite">
      <div dir="ltr"><br>
        <div>I don't know about updating PowerDNS, but I suspect you'll
          have to write a plugin. As for the designated boot menu, you
          can still do that, although the syntax is different.</div>
        <div><br>
        </div>
        <div>This snippet below -should- do more or less what you're
          doing with vanilla ISC DHCP:</div>
        <div><br>
        </div>
        <div>-- cut --</div>
        <div>  "client-classes": [<br>
              {<br>
                  "name": "bootstrap",<br>
                  "test" : "option[60].exists<br>
                  "option-data": [<br>
                    {<br>
                      "name": "boot-file-name",<br>
                      "data": "ipxe/undionly.kpxe"<br>
                    }<br>
                  ]<br>
              },<br>
              {<br>
                  "name": "preseed",<br>
                  "test": "option[60].hex == 'd-i'",<br>
                  "option-data": [<br>
                    {<br>
                        "data" : <span style="font-size:12.8px">"</span><a href="http://10.0.0.9/tftp/boot.php" rel="noreferrer" style="font-size:12.8px" target="_blank">http://10.0.0.9/tftp/boot.<wbr>php</a><span style="font-size:12.8px">",</span><br>
                        "name" : "boot-file-name"<br>
                     }<br>
                  ]<br>
               }<br>
            ],<br>
          -- cut --</div>
        <div><br>
          You're probably going to have to tune that a bit, but this is
          the approach I'm using to manage both server and switch
          booting, and it works well.</div>
        <div><br>
        </div>
        <div>hth,</div>
        <div>Klaus</div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Mon, Sep 12, 2016 at 11:57 AM,
          Christoffer Jönsson <span dir="ltr"><<a href="mailto:bonchen@imap.cc" target="_blank">bonchen@imap.cc</a>></span> wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello
            again!<br>
            <br>
            Since the 1.1 release i decided to try and migrate from
            isc-dhcp. And there is a few things I have questions about.<br>
            <br>
            For years I have been using a python script to feed my
            PowerDNS it's records using this:<br>
            <br>
            on commit {<br>
                            set ClientIP = binary-to-ascii(10, 8, ".",
            leased-address);<br>
                            set ClientMac = binary-to-ascii(16, 8, ":",
            substring(hardware, 1, 6));<br>
                            log(concat("Commit: IP: ", ClientIP, " Mac:
            ", ClientMac, "Hostname: ", option host-name));<br>
                            execute("/etc/pdns/dhcp-event"<wbr>,
            "commit", ClientIP, ClientMac, option host-name);<br>
            }<br>
            <br>
            Is it still possible to call and external script?<br>
            <br>
            At the same time I've been using a php file that loads the
            designated boot menu for the booted mac-address:<br>
            <br>
            subnet 10.0.0.0 netmask 255.255.255.0 {<br>
            [...]<br>
            <br>
            if not exists gpxe.bus-id {<br>
                filename "undionly.kpxe";<br>
            } else {<br>
                filename "<a href="http://10.0.0.9/tftp/boot.php" rel="noreferrer" target="_blank">http://10.0.0.9/tftp/boot.php</a><wbr>";<br>
            }<br>
            [...]<br>
            }<br>
            <br>
            I'm not sure I can still use this line of code?<br>
            <br>
            Thanks in advance!<br>
            ______________________________<wbr>_________________<br>
            Kea-users mailing list<br>
            <a href="mailto:Kea-users@lists.isc.org" target="_blank">Kea-users@lists.isc.org</a><br>
            <a href="https://lists.isc.org/mailman/listinfo/kea-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/kea-users</a><br>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </div>

</div></div><br>______________________________<wbr>_________________<br>
Kea-users mailing list<br>
<a href="mailto:Kea-users@lists.isc.org">Kea-users@lists.isc.org</a><br>
<a href="https://lists.isc.org/mailman/listinfo/kea-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/kea-users</a><br>
<br></blockquote></div><br></div>