noip-ddns-updater is a lightweight command-line tool written in Go that updates a No-IP dynamic DNS record. It periodically checks the public IP address and updates the No-IP hostname if the IP has changed.
- Automatically detects the public IP address.
- Updates the No-IP hostname only when the IP has changed.
- Uses environment variables for configuration.
- Can be run as a background service.
- Supports a custom update interval.
- Clone the repository:
git clone https://github.com/middaysan/noip-ddns-updater.git cd noip-ddns-updater - Build the application:
go build -o noip_ddns_updater
Run the program:
./noip_ddns_updater-h: Displays usage information and exits.
Set the following environment variables before running the program:
export NOIP_USER="your_noip_username"
export NOIP_PASS="your_noip_password"
export NOIP_HOST="your_hostname.no-ip.com"
export NOIP_INTERVAL_MINUTES=5export NOIP_URL="https://dynupdate.no-ip.com/nic/update" # Default No-IP update URL
export CHECK_IP_URL="https://checkip.amazonaws.com" # Default IP check URLNOIP_USER="example_user" NOIP_PASS="example_pass" NOIP_HOST="example.ddns.net" NOIP_INTERVAL_MINUTES=10 ./noip_ddns_updaterThis project is licensed under the MIT License.