Apple NetBoot: iPXE Could not open net0

  • Hi there.
    I have CloneDeploy 1.3.3 set up.
    Long ago I had set up my MacMini to work with it, and it boots into the imaging environment properly.

    I haven't used it since then and so I forgot how I got it to work.
    Today I tried to do the same with a new device - MacBook Pro.

    For starters I added its MAC address to the DHCP's allow list, and was able to get it to net-boot into iPXE, but it failed:
    [code]iPXE initialising devices...ok

    iPXE 1.0.0+ -- Open Source Network Boot Firmware --
    Features: DNS HTTP HTTPS TFTP EFI Menu
    Could not open net0: Input/output error (
    Could not open net0: Input/output error ([/code]

    So I followed [url=]this guide[/url] on the MacbookPro but got stuck at the part where it says "The screen will provide you with information on where to put the NBI..." -- [b]it doesn't provide anything.[/b]

    I'm not sure what to do now.
    Is it possible that I need to change the vendor id in config.ini? If so, how?
    I also remember something about id 3913 to load the linux imaging environment, but I can't find much information about this.
    Kinda lost, help would be much appreciated.

  • Also, help file [i]/clonedeploy/views/help/admin-netboot.aspx[/i] seems to be missing.

  • For comparison, here's what it looks like in 1.3.3:

    And in 1.2.1:

    It looks like something's missing in 1.3.3.

  • The iPXE error page suggests to:
    [quote]"Try using the latest version of iPXE. Your problem may have already been fixed."[/quote]
    [url=]iPXE's git[/url] shows the last release (1.0.0) was 7 years ago, but commits keep coming to this day.

    How do I know which version is used by C/D?
    Where paths are relevant if I want to try using the newest iPXE instead of the current one?

  • The macs don't use ipxe. It uses the standard mac netboot option. Did you create a netboot profile in the gui? Can you send a screenshot of it.

  • Eventually I found the "Add NetBoot Profile" button which did the magic.
    [b]However the new vendor id string wasn't helpful.

    The MacMini seems to boot properly into iPXE and from there to the C/D menu (Upload, Deploy, etc.).
    Is it possible that this MacMini already "has" the proper imaging environment?

    And when should id 3913 be used then?

  • The problem is that you are using 3913 for the id, that is an override to go to ipxe. Use any other number. New macs don't work with ipxe or the linux imaging environment. You need to use mac imaging environment.

  • I've done as you said and followed the rest of the guide, but both MacMini and MacBookPro keep booting into iPXE.

    I've verified:

    1. Owner of relevant paths (and their subfolders/files) is www-data:www-data
    2. apple-root-path matches the path displayed by C/D web UI (/api was missing)

    Don't know what I could be missing.

  • And you changed the nbi id? Using an nbi with id 3913 is the only way to get to ipxe.

  • Yes I've changed it to 1.

  • In the proxydhcp server, set the apple-vendor-specific-information to blank

  • Changed it to blank and restarted proxydhcp, same result.

  • Analyzed tcpdump on proxydhcp with Wireshark.
    For some reason it refers the Macbook Pro to ipxe:

  • Can you expand option 43

  • [attachment:5a5f72d12cb31]

  • [attachment:5a5f75c99d763]

  • Are you booting with the option key or n?

  • I used the option key to set the default boot to netboot.

  • I just entered this menu again and saw "macbookpro", which wasn't there earlier.
    I must've set it to the linux boot originally and it stuck since then... didn't know it worked like that.
    Thanks! I'll let you know how it goes.

  • It seems that transferring the 6GB mac image is taking forever because it's downloaded from the C/D server rather than the SMB.

    Is there a way to move the Mac imaging environment to the SMB, and refer clients there as well?