I have a bunch of services running on my LAN, mostly from a single Debian machine. I access them at URLs like http://devicename.lan:portnumber. I would like to change to http://servicename.devicename.lan.

How it works now: The router (openwrt) sets a static IP per device and the port number is selected by the application or system unit running it.

What is the absolute simplest way to accomplish this? I don’t mind if it is managed by the router or by the server machine itself. Hoping for something that can be configured with a text file or web interface or other basic mathod.

These sevices are private, just for me and I have no plans to ever access them externally. I have so far avoided any certificates or SSL or other stuff. I don’t use docker and would rather not get into it right now. I like my domain name setup how it is with fake local domains.

Hoping this could be possible without making a whole project out of it.

  • dislabled@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 days ago

    You’re right that IPv6 doesn’t need NAT for its original purpose (address scarcity). But “there is no NAT in IPv6” isn’t quite accurate: NAT still exists in IPv6

    NAT66 (stateful, like NAT44) exists but is discouraged. More relevant is NPTv6, a standardized stateless 1:1 prefix translation, not the many-to-one port-overloaded NAT you’re used to from IPv4. It doesn’t do address+port multiplexing, so it doesn’t break peer-to-peer the way NAT44 does. So the “NAT is the enemy of p2p” argument applies to stateful NAT44-style translation — not really to NPTv6, which preserves end-to-end host addressability and just swaps the prefix.

    You can absolutely build a fully functional internal network on ULA (fd00::/8) alone — routing, DNS, services, all independent of any ISP-delegated prefix. But ULA is explicitly non-routable on the public internet, so a pure ULA network is isolated: internal-only, no internet reachability.