partial 15 min verified 723b308 (2026-09-19)
Share something on the house mesh
A "service" is anything with a TCP port you want people on the mesh to
open by name: a wiki, a camera page, a game, a printer admin UI. The
directory on hello.mesh is the index. DNS for .mesh is served by the
routers, so it works with the WAN unplugged.
Status: partial. Operator publish from SSH is built. App cards inside hello.mesh are not deployed. Claiming a pretty name from the front desk is not deployed.
What residents see
Do: open http://hello.mesh → Services.
Expect: links such as https://walkie-talkie.mesh. Tapping one opens
the app. A self-signed certificate warning is normal for https://…mesh.
If not: "Nothing has been shared" means nobody has published on this mesh yet. Internet sites are unrelated; they need a WAN uplink.
Residents do not need an IdentiKey to open a published HTTP service. Sign-in is only when an app asks, via Sign in to mesh apps.
Publish from a router (operator)
The command must run on the router (mjolnir-meshd talks to
127.0.0.1). There is no meshd alias.
Do: SSH to the router whose LAN holds the thing you are sharing, then:
mjolnir-meshd publish photos --port 8080
Expect: published photos.mesh ip=10.42.x.1 port=8080. Within a
minute it appears under Services on every hello.mesh.
If the app is another machine on that LAN:
mjolnir-meshd publish photos --ip 10.42.7.42 --port 8080 --mac aa:bb:cc:dd:ee:ff
Expect: a router-scoped name like photos.ab12.mesh. Share the full
name.
Full flags, key-owned names, and the HTTP APIs: Publish a service.
House rules of thumb
- Prefer a
.meshname over asking people to remember10.42.x.y. - Do not bridge client LANs to "make Chromecast work everywhere." Publish instead, or keep the device on one router.
- A service that needs the public internet still needs a gateway. A service that is only local should keep working when the WAN is out — that is the point.
Next: Add another router.