The Road to Release
It’s nearly time to try and get Greenlight into the hands of users. There are just a few things left.
I’ve been working on it off-and-on-and-off for nearly two years now:
commit b4c070a2f92f1b7a87d33a26f203bc1ed4a7263fAuthor: Jesse <jesse@greenlightedns.net>Date: Wed Aug 21 00:03:44 2024 +0200
Initial commitIt’s nominally been in beta for over a year and a half:
commit 21cc763ea09858abe20aa8d90034c49cf908d508Author: Jesse <jesse@greenlightedns.net>Date: Mon Apr 14 04:15:08 2025 +0200
Hacks together beta registrationThe domain has been registered for just as long:
$ whois greenlightedns.net. Domain Name: GREENLIGHTEDNS.NET Registry Domain ID: 2972122369_DOMAIN_NET-VRSN Registrar WHOIS Server: whois.namecheap.com Registrar URL: http://www.namecheap.com Updated Date: 2026-04-03T14:42:07Z Creation Date: 2025-04-03T11:26:38Z ...But I’ve not done anything of substance to promote it or otherwise show the world that it exists. Why is that?
It’s because Greenlight hasn’t yet gotten good enough for me yet. It’s getting close, it’s enough for some use-cases (hello.greenlightedns.net has successfully been using Weighted Round Robin for a long time now), but it’s not yet something I’d want to run my homelab off of.
What is working
Section titled “What is working”On a positive note, let’s list some things that it does do:
- Weighted Round Robin records
- Regular DNS records
- Supports the (imo) most essential record types for securely operating a domain: A, AAAA, MX, TXT, and CAA
- Provides Prometheus metrics that users can use to see when server healthchecks fail
- DNSSEC
What’s missing for me to use it myself
Section titled “What’s missing for me to use it myself”Greenlight has truly made progress, and it’s gratifying to see it work. But these crucial things are missing:
nsupdate/RFC 2136 support, needed to support the DNS-01 ACME challenge type–this is essential for using ACME to issue TLS certificates when using multiple servers (at least until DNS-PERSIST-01 is finished and widely supported!)- Geolocation records that route the client to the geographically-nearest server–this is supposed to be a headline feature for Greenlight. Once I start working on it, it shouldn’t take long to implement. But it’s just been on the backburner for a while as I build out other essential parts of the system.
So what’s blocking the road to release?
Section titled “So what’s blocking the road to release?”nsupdate/RFC 2136 is a blocker, Geolocation records are not.
Geolocation is a nice-to-have that some other GSLB solutions don’t even offer.
But without RFC 2136, Greenlight doesn’t have a native way to support issuance
of TLS certificates using ACME for load-balanced names. Users wanting
certificates would need to use CNAME records to delegate the _acme-challenge
subdomain to another DNS server
that supports common ACME clients.
I think I have a good picture of what is required for RFC 2136 support. The main this is having Greenlight’s engine support atomic changes to Zones. Once that’s done, there is a highly-regarded DNS library for Go that should make it rather straightforward to wire up the actual DNS protocol stuff.
Once RFC 2136 support is added, it will be time.