MacOS – NetRestore not working on new MacBook Pro with Thunderbolt Ethernet adapter

macosserver.app

I am hoping someone can help me with an issue I am having trying to image newer MacBooks with a Thunderbolt to Ethernet adapter.
The server is running 10.11.6 with server app 5.1.7 and the image I am trying to install is also 10.11.6. It isn't an issue with the image as it works fine on any machine with an internal Ethernet port but just not on any MacBook which needs a Thunderbolt to Gigabit Ethernet adapter. I have also tried using a USB to Ethernet adapter and still have had no luck.
When I try and netboot using the N key I get the flashing globe which would indicate the machine is requesting an IP address, but then it seems to time out and boots into the current Mac OS installation on the disk. I have checked the DHCP settings and everything is fine on that side. If I try holding the option key to bring up the Startup Manager it only sees the internal disk and not any of the images on the server. But if I go into Startup Disk preferences it sees all the images but selecting one of them and restarting I get the same behaviour as when I boot using the N key. It seems like it isn’t loading the driver for the the thunderbolt adapter until it loads the OS. I’ve checked in the logs on the Server and I don’t see any entries that relate to the MAC address of the adapter for DHCP or BDSP. Its a real shame that you can't do a NetBoot in verbose mode (not as far as I know anyway) so you could actually find out where it is failing.
Does anyone know why the Thunderbolt to Gigabit Ethernet adapter isn’t get recognised until the OS has loaded? If this is by design then Apple have really messed up as how would you be able to do a NetBoot/Install/Restore without the adapter being recognised when the firmware loads?

Best Answer

I NetBoot with those all the time (Thunderbolt mostly). This is an Apple dongle, right? As long as it's connected before you start up then it'll load the driver.

You can NetBoot in verbose mode. Set the Startup Disk in System Preferences then restart while holding Command-V (I usually set it permanently on test systems: sudo nvram boot-args="-v").

Not seeing any entries from that adaptor's MAC Address in the server's system.log means the traffic isn't making it to the server for some reason. You can confirm by getting a server-side packet trace (assuming you're using en0):

sudo tcpdump -i en0 -s 0 -B 524288 -w ~/Desktop/NetBoot.pcap

I usually filter in Wireshark for bootp or tftp to see how far along things get.

You can get a client-side packet trace by using either a "dumb hub" (not as common these days) or mirroring a port on the switch (assuming your network gear can do this).