Instead of using fd with a RNG, you should follow the RFC...
SixxS even runs a registry for ULA prefixes: https://www.sixxs.net/tools/grh/ula/
Put in your MAC address, get back a ULA. Then register it so that in the future if someone happens to have the same mac address you don't accidentally use the ULA.
I'm following the RFC: "Locally assigned Global IDs MUST be generated with a pseudo-random algorithm consistent with [RFC 4086]. Section 3.2.2 describes a suggested algorithm."
I happen to be of the opinion that /dev/urandom is more likely to comply with RFC 4086 than the suggested algorithm, but I may have an unfairly low opinion of the distribution of timestamps and MAC addresses.
(The IPv6 solution here is Unique Local Addresses, where fdXX:XXXX:XXXX::/48 are all permissible local networks, and if you use a decent RNG to generate the 40-bit number XXXXXXXXXX, you're unlikely to hit a collision with any other actual, active site, let alone one you might want to route to.)