.local was assigned by IANA for mDNS/Bonjour https://www.iana.org/assignments/special-use-domain-names/sp...
Yes, as noted in the RFC that reserved its use for mDNS:
The special treatment of names ending in ".local." has been
implemented in Macintosh computers since the days of Mac OS 9, and
continues today in Mac OS X and iOS. There are also implementations
for Microsoft Windows [B4W], Linux, and other platforms.
Some network operators setting up private internal networks
("intranets") have used unregistered top-level domains, and some may
have used the ".local" top-level domain. Using ".local" as a private
top-level domain conflicts with Multicast DNS and may cause problems
for users. Clients can be configured to send both Multicast and
Unicast DNS queries in parallel for these names, and this does allow
names to be looked up both ways, but this results in additional
network traffic and additional delays in name resolution, as well as
potentially creating user confusion when it is not clear whether any
given result was received via link-local multicast from a peer on the
same link, or from the configured unicast name server. Because of
this, we recommend against using ".local" as a private Unicast DNS
top-level domain. We do not recommend use of unregistered top-level
domains at all, but should network operators decide to do this, the
following top-level domains have been used on private internal
networks without the problems caused by trying to reuse ".local." for
this purpose:
.intranet.
.internal.
.private.
.corp.
.home.
.lan.
* https://datatracker.ietf.org/doc/html/rfc6762#appendix-GKey words: We do not recommend use of unregistered top-level domains at all….
The drafts for the RFC date back to 2001.
The first mDNS draft came out in 2001. And as noted RFC 6762 § Appendix G, .local was used by Mac OS 9 for the same purpose as it it was for mDNS: link-local resolution.
.local was never reserved for private use, and it got scooped up for mdns. .dev was never reserved for private use, it got gTLD'd and owned by Google who promptly put it on the HSTS preload list.
.internal is nice but it's not what people are already using.