I'm developing a product that enables users to run a service at home which is part of a larger network. This service needs to be contacted regularly by a coordination service running in the cloud (on a VPS). The mechanism implemented for this relies on a normal port-forward on the user's internet-facing router, but also needs a reliable way to be found: enter DDNS.
What I'd like to implement is a DDNS service which can be easily configured by the service running at the user's (think of the service to just have the additional functionality of a DDNS update client).
(You may ask why wouldn't the service just dynamically keep the property "externalIP" updated and inform the coordination service, but for several reasons it is preferred to keep that config static and have a permanent contact alias for the service behind the user's firewall)
On the server-side I'm hoping to get away with a solution that can easily run on a VPS and provide DDNS like someuniqueid.nodes.mydomain.com
(where mydomain.com
is owned by me and points to the VPS).
The solution should reliably support potentially thousands of clients (unique ID's).
(For reliability the coordination, DDNS and auxiliary services will probably be scaled with k8s in a HA configuration).
Any ideas about a possibly effective solution for this?