Dynamic DNS from your terminal. No account dashboard. No fuss.
// getting started
Install the Linux CLI, claim a hostname, and choose how its DNS address should be maintained.
# 1. Install the client$curl -fsSL https://ipbind.sh/install.sh | sh# 2. Claim your hostname$ipbind claim homeClaimed: home.ipbind.sh
Token: saved locally# 3. Keep it updated automatically$ipbind enableAutomatic updates enabled.
Each hostname has its own authentication token, stored locally in your user configuration. The server stores a token hash. You can also manage multiple hostnames independently.
// choose your mode
AUTO
My public IP changes
Best for a home connection or a machine whose public IP may change. The client detects the machine's public IP when updating.
$ ipbind claim home
$ ipbind enable
A systemd timer runs every five minutes and updates all locally configured auto hostnames. If the IP hasn't changed, no DNS write is needed.
# Update immediately$ ipbind update home
MANUAL
I choose the destination IP
Best for pointing a hostname at a remote VPS, another machine, or a specific public IPv4/IPv6 address.
$ ipbind claim server
$ ipbind update server --ip 1.1.1.1
Specifying --ip sets the hostname's local mode to manual. Scheduled updates skip it, so your chosen address stays put until you change it.
# Change the destination later$ ipbind update server --ip 8.8.8.8
Important: Auto/manual is a local CLI setting, not a server-enforced lock. It controls which hostnames this installation includes in ipbind update --all and scheduled updates. Only globally routable IP addresses are accepted.
// switch modes
You can change your mind without reclaiming the hostname.
# See the current local mode$ipbind mode server# Switch to automatic updates$ipbind mode server auto$ipbind update server# Switch back to manual$ipbind mode server manual
Switching mode alone does not change the DNS address. ipbind update server updates it to the caller's detected public IP, while --ip uses the exact address you supply and selects manual mode.
// how automatic updates work
Claim a hostname with ipbind claim home. The CLI stores its token privately for the current Unix user.
Enable the timer with ipbind enable on a systemd Linux machine.
Check every five minutes: the timer invokes ipbind update --all, which processes only auto-mode hostnames.
Update DNS only if the detected public IP differs from the saved address.
Inspect with ipbind status home and ipbind timer-status.
The timer runs as the Unix user who enabled it. Other users, including root, have separate local token stores and settings.
// command reference
ipbind claim <name> # Claim a hostname
ipbind list # List locally managed hosts
ipbind status [name] # Show hostname status
ipbind config [name] # Show local configuration
ipbind update <name> # Use detected public IP
ipbind update <name> --ip <address> # Set IP; switch to manual
ipbind update --all # Update auto hosts only
ipbind mode <name> [auto|manual] # View/change local mode
ipbind enable # Enable five-minute timer
ipbind disable # Disable timer
ipbind timer-status # Inspect timer
ipbind rotate [name] # Rotate authentication token
ipbind delete [name] # Delete a hostname
ipbind version
ipbind help
// tokens & recovery
Each hostname is protected by its own authentication token. The plaintext token is generated once and stored locally by the CLI. The ipbind.sh server stores only a one-way SHA-256 hash used to verify requests.
Keep your token safe: ipbind.sh cannot retrieve, display, email, or recover a lost token from the server because the original token is not stored there. A stored token hash is not a backup of the token and is not intended to be reversible.
If you still have the current token, ipbind rotate [name] replaces it with a new token and immediately invalidates the old one. If you lose the only valid token, normal authenticated management of that hostname is no longer possible through the client; do not rely on ipbind.sh as a token-recovery service.
Treat files under your local ipbind configuration directory as credentials. Do not publish them, commit them to source control, or paste their contents into support requests.
// terminal first, always
ipbind.sh provides Dynamic DNS through a CLI and API. This site is documentation and software distribution—not a web control panel.