[GDK-in-a-box] `.local` should not be the default domain
## Background GDK-in-a-box currently uses `gdk.local` as the default hostname. [^gdk-hostname] [^gdk-hostname]: https://docs.gitlab.com/development/contributing/first_contribution/configure-dev-env-gdk-in-a-box/ ## Problem The `.local` domain is reserved as a special-use domain for Multicast DNS (mDNS), and [RFC 6762](https://datatracker.ietf.org/doc/html/rfc6762) defines that fully qualified domain names ending in `.local.` are treated as link-local names that should be resolved via mDNS. Apple devices (iOS, iPadOS, and macOS) follow this behavior and special-case `.local` for mDNS resolution. Apple’s support warns that using `.local` as an internal DNS suffix can cause issues resolving unicast DNS names. [^apple] [^apple]: https://support.apple.com/101903 ## User impact In practice, this means that when a user wants to access GDK-in-a-box from other devices on the same LAN, for example from an iPhone or iPad, defining `gdk.local` as an A record on a local DNS server will not work as expected. The client OS still treats `.local` as an mDNS-only namespace, leading to confusing and hard-to-diagnose name resolution failures. ## Proposal Replace `gdk.local` with `gdk.internal` or `gdk.test` as the default hostname used by GDK-in-a-box. - **`.internal`**: `.internal` has been reserved as a top-level domain for private-use applications. [^draft-internal] [^draft-internal]: https://datatracker.ietf.org/doc/html/draft-davies-internal-tld-06 - **`.test`**: [RFC 2606](https://datatracker.ietf.org/doc/html/rfc2606 ) reserves `.test` as a special-use top-level domain and recommends it for testing DNS-related code and configurations. `gdk.test` is the standard hostname for referring to the local GDK instance. [^gdk-test] [^gdk-test]: https://gitlab-org.gitlab.io/gitlab-development-kit/howto/local_network/ If the choice of `gdk.local` was intended to avoid collisions with existing `gdk.test` usage, then `gdk.internal` might be a better fit as the default hostname. ## Impacted categories The following categories relate to this issue: - [x] ~"gdk-reliability" - e.g. When a GDK action fails to complete. - [~] ~"gdk-usability" - e.g. Improvements or suggestions around how the GDK functions. - [~] ~"gdk-performance" - e.g. When a GDK action is slow or times out.
issue