Yes, there is a standard since about 10 years ago. It's not dependent on your router firmware, in accordance with IP's end-to-end design philosophy (keep the network dumb, and hosts smart). Here's some links to get you started:
As for link-local IPv6 addresses, those aren't even accepted by the socket API[1] in place of normal routable addresses. They're only used for low level things like neighbour discovery (IPv6 equivalent of ARP) and apps that go out of their way to use them. They aren't routable outside your L2 segment.
[1] as in:
$ telnet fe80::something:something:42
Trying fe80::something:something:42...
telnet: Unable to connect to remote host: Invalid argument
https://slaptijack.com/networking/osx-disable-ipv6-address-p...
http://andatche.com/blog/2012/02/disabling-rfc4941-ipv6-priv...
As for link-local IPv6 addresses, those aren't even accepted by the socket API[1] in place of normal routable addresses. They're only used for low level things like neighbour discovery (IPv6 equivalent of ARP) and apps that go out of their way to use them. They aren't routable outside your L2 segment.
[1] as in: