[Bug] extra records (JSON) works only when names are in lowercase
Is this a support request?
- [x] This is not a support request
Is there an existing issue for this?
- [x] I have searched the existing issues
Current Behavior
I have configured my headscale DNS using NextDNS (works OK) as well as an additional extra-records.json file (configured in extra_records_path) for resolving names of my home network.
I noticed (using dig <name> @100.100.100.100) that regardless of how I type the name when resolving (lower, upper, MiXeD case) headscale only returns a valid response (A/AAAA) when the name is stored in lowercase in the JSON file. If the JSON file contains names like "Printer.fritz.box" it is never matched, so the query goes to the global nameserver.
Expected Behavior
Regardless of how the name is written in the JSON file, the query should succeed. (e.g. headscale should do the lookup disregarding case).
Steps To Reproduce
As above.
Environment
- OS: Debian 13
- Headscale version: 0.26.1
- Tailscale version: tested above with Android/1.86.4
Runtime environment
- [ ] Headscale is behind a (reverse) proxy
- [ ] Headscale runs in a container
Debug information
I don't think anything is necessary here?