What is DedNets?
DedNets connects machines that live behind NAT, firewalls, and home routers, and lets them publish services to each other and to the internet. You run one small daemon per machine; the Console (the hosted control plane) coordinates everything else.
There is nothing to port-forward and no VPN to configure: every daemon connects outbound to the Console and authenticates with mutual TLS. Traffic between your machines is relayed through the Console by default and upgraded to a direct, hole-punched path between the two machines whenever the networks allow it. Established connections keep working even if the Console is temporarily unreachable.
The pieces
Section titled “The pieces”- Console: the hosted control plane and web UI. You enroll hosts, publish ports, and watch health from here.
- Host (daemon): a machine running
dedmeshd. It is fully rootless: no TUN device, no privileged ports, outbound connections only. - App: a service a host exports, named
username/daemon/app, for examplealice/homelab/nginx. Apps can come from a config file, from Docker container labels, or be published straight from the Console UI. - Gateway: a host of yours (typically a VPS with a public IP) that publishes raw TCP/UDP ports on its own address, any port including those below 1024.
What you can do
Section titled “What you can do”| I want to… | How |
|---|---|
| Get a machine on the network | Deploy a daemon |
| Give an internal web app a public HTTPS address | Expose a port publicly |
| Publish a game server, database, or DNS on my own VPS | Publish on your own gateway |
Public HTTP/HTTPS apps get an automatic hostname of the form
{app}-{username}.{domain} served by the DedNets edge, with TLS certificates
issued on demand. Raw TCP/UDP is published through your own gateway hosts, so
it uses your ports and your bandwidth.