Besides DNS-based naming there is Multicast DNS (Bonjour/Avahi/ZeroConf) and NetBIOS naming (which still exist and works on most operating systems that have Samba or something similar).
In any case, you don't need a remote service like Cloud9 or Tailscale to any of this. Normal networking has done this for decades.
The next step beyond this is running a more capable DNS system in your home network. Generally this takes the shape of a DNS forwarder service running on a router or server. It could be as simple as a PiHole or OpnSense firewall, or however complicated you might want to make it.
[0] https://wlog.viltstigen.se/articles/2021/05/02/mdns-for-linu...
Also, somepcname.local mDNS works on most operating systems today (once you grant firewall permissions to it; for instance, on Windows setting your home network as a "Private" network for instance when it asks Public or Private).
I've got a domain, and I've added multiple A records pointing to IPs of servers in my 192.168.X.Y NAT. This has a downside thought, that with short enough TTL, you may not be able to access your server during intermittent connectivity problems.
I'm using letsencrypt through traefik for the certs.
I use NixOS, so it was easy to make a function to abstract over the config. In each computer's config, all I do is specify a hostname. This function does the work (or really, some nixpkgs committer did):
{ hostName }:
{
services.avahi = {
enable = true;
nssmdns = true; # Allows programs like ssh to resolve .local domains via avahi
inherit hostName;
openFirewall = true;
publish = {
enable = true;
addresses = true;
workstation = true;
};
};
}- desired hostname and search domain(can be bogus though not recommended)
- DHCP server parameters with the router's IP as primary DNS
- DHCP static assignment for (each of)server(s)
- DNS static assignment such as "yourserver.bogusdomain.tld 192.168.10.10"
- (optionally) domain names, ddclient, certbot
"Proper" classical router/firewall OSs like Cisco IOS, Juniper JunOS, VyOS, RouterOS, OpenWrt, all easily do it like they do a cigarette, but good gamer routers and some NASs also can do it okay in many cases.
(How would you even add hosts to an iPhone or something?)
You could have your own top level domain as well.