Thank you to everyone who has worked on this project so far. I wanted to make it easier to modify the binary SDIO uploaded in post #11 using the instructions wii121 provided in post #44.
The serial number and MAC address in the SDIO provided binary will always be the same. The MAC address is the problem, if you plan on using more than one on the same LAN. This will fix that with minimal effort.
I made a CGI script that will modify the binary for you with a random MAC address using the Nintendo OUIs expected to be found in an official Nintendo USB Ethernet dongle (00:1E:A9, 00:22:AA, 00:24:44, 00:09:BF) for the first three bytes. The last three bytes will be completely randomized.
Note: I overhauled it since my original post so that you can flash it to look like an A1277, official Wii/Wii U Ethernet dongle, generic AX88772, or AX88772A. The Nintendo or AX88772 settings will be best for most people, but you have a lot of flexibility.
Please backup your original firmware before flashing the payload you get from my CGI script. I added the ability to allow users to upload their original A1277 binary so the web site can extract their factory serial number and MAC address and mod them into the UGREEN firmware so that it's compatible with the Wii U while retaining the original factory identifiers. That should be the recommended use case for the majority of people.
You can edit any of the fields on the web site for a custom MAC, serial number, manufacturer, product name, or even VID/PID. You probably want to leave VID/PID alone.
There's also a python script for doing all of this locally if you prefer. It's a little bit more flexible since there's no input sanitization, but I doubt that it gives you enough freedom to break anything.
This is my first post on this site, so I can't link to the CGI script. It's available in the next post after mine. Thanks SDIO!