>typical OS’s will prefer to use IPv4 over a ULA if both are available?
Yep. There's an RFC for this. I guess it would take a decade to be everywhere.
The Global > Local rule is also unfortunate in some configurations*, but that's more of a result of the end-to-end idea and software not realizing a device can have more than one address...
* One example from this thread: https://news.ycombinator.com/item?id=43070290
Could you elaborate? I’m able to run ULA-only just fine, with one line in my pf.conf to route 1:1 to my GUA prefix. The NAT is stateless.
Maybe you’re referring to the fact that typical OS’s will prefer to use IPv4 over a ULA if both are available? I’ve noticed that, and indeed it’s unfortunate.