Skip to content

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 b4c070a2f92f1b7a87d33a26f203bc1ed4a7263f
Author: Jesse <jesse@greenlightedns.net>
Date: Wed Aug 21 00:03:44 2024 +0200
Initial commit

It’s nominally been in beta for over a year and a half:

commit 21cc763ea09858abe20aa8d90034c49cf908d508
Author: Jesse <jesse@greenlightedns.net>
Date: Mon Apr 14 04:15:08 2025 +0200
Hacks together beta registration

The 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.

On a positive note, let’s list some things that it does do:

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.

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.