Underpass
Always available

Keep internal apps up.
Even when a machine goes down.

Run an app on two machines under one name. Everyone uses the same one; if it stops, they all move to the other on their own. No load balancer, no DNS changes, nothing to update on anyone's device.

90 seconds, sped up
laptopAmaraoffice-pcJonasci-runnerbuild serverwiki100.100.0.4app-1offlineapp-2serving
Everyone moves to app-2 on its ownTIME 10:01:40SERVING app-2

A machine that stops checking in is counted offline after 90 seconds. Then every device moves to the backup on its own. Same name, same address: nothing to change anywhere.

Set up

Three steps.
Nothing else to run.

Give the app a name, run it on more than one machine, and approve them. No load balancer or extra server to look after.

01Service

Give your app a name

In the dashboard, add a service and the port it uses. It gets its own name and its own address, separate from any one machine.

name wiki
address 100.100.0.4
port tcp:443
02Hosts

Run it on two machines

On each machine that runs the app, one command says: this machine serves wiki, and here's where the app is listening.

$ underpass serve --service=svc:wiki \
--tcp=443 127.0.0.1:8080
Serving svc:wiki on port 443 from app-1.
03Approval

Approve them, and you're done

A machine only serves once an admin approves it under Services in the dashboard. From then on, people just open wiki.

✓ app-1 · approved · serving
✓ app-2 · approved · backup
How it picks

One name.
Machines behind it.

The name and address belong to the app, not to a machine. Add, swap or retire machines behind it, and nobody has to update a bookmark.

  • Everyone goes to the same machine
  • A backup is always ready
  • Retire old machines without telling anyone
wiki · 100.100.0.4every device picks the same
  1. 1app-1online · serving since MarchServing
  2. 2app-2online · serving since MayBackup
  3. 3app-3offlineSkipped

Machines that are online come first, then the one that has served the longest. Every device uses the same order, so everyone lands on the same machine.

Name and address, whichever machine runs it
1
Without a check-in before a machine counts as offline
90 s
How often the network checks who's online
10 s
Settings to change on anyone's device
0
Good for

The apps your team can't be without.
Kept running.

Anything people open every day, and notice the moment it's down.

Internal wiki or docs

The page your team checks ten times a day.

Dashboards and admin tools

Monitoring, back offices, anything behind a login.

Git and build servers

Keep pushes and builds working while you patch one.

Anything on a TCP port

Databases, APIs, SSH. If it listens on a port, it works.

FAQ

Questions about uptime.

Something we didn't cover? Write to us and we'll help you get set up.

Ask us anything
  • A machine that stops checking in is counted as offline after 90 seconds, and devices move to the next one right after. When you take a machine down on purpose (stop serving on it first), they move right away.

More features

/ Independent · bootstrapped · no investors

Built by a person,
not a fund.

I'm Endi, and I build Underpass myself. No investors to answer to, only the people who run their networks on it. Every message that comes in reaches me directly.