Windows v2.0.0

Native Windows client with system tray icon. Runs as a background process and updates your DNS records automatically when your public IP changes. Supports all record types (A/AAAA).

Download v2.0.0 (64-bit MSI)
Legacy: Windows v1.42 (older systems)

For Windows XP/Vista/7. Not recommended for new installations.

Download v1.42 (EXE)

Installation

  1. 1Run the MSI installer and accept the UAC prompt. The app runs in the system tray — lightweight, built with a modern, memory-safe language, minimal resource usage. Supports 11 UI languages with a consistent look and feel on both Windows and macOS.
  2. 2The system tray icon appears. Click it → Settings.
  3. 3Enter your No-IP.pl login and password.
  4. 4Enter the hostname(s) you want to keep updated (e.g. myhome.no-ip.eu). The hosts must already exist in your No-IP.eu account panel. Click Save.
  5. 5Status turns green. Your DNS records are now updated automatically on every IP change.

macOS v2.0.0

Universal binary (Apple Silicon + Intel). Runs as a login item in the menu bar, no terminal required.

Download v2.0.0 (Universal DMG)

Installation

  1. 1Open the DMG and drag No-IP Client.app to /Applications.
  2. 2The app is not code-signed (no Apple Developer ID). On first launch, macOS Gatekeeper will block it. Fix: right-click No-IP Client.appOpen → click Open in the security dialog. This only needs to be done once. Alternatively: System Settings → Privacy & Security, scroll down and click Open Anyway.
  3. 3Click the menu bar icon → Preferences. Enter your credentials.
  4. 4Enter the hostname(s) you want to keep updated (e.g. myhome.no-ip.eu). The hosts must already exist in your No-IP.eu account panel. Click Save.
  5. 5Optional: enable Launch at Login in Preferences so it starts automatically.

Linux x86-64

Lightweight static binary — no dependencies, no installer. Uses the native no-ip.eu UDP protocol (port 7777): lighter than HTTPS, works through most firewalls. Good fit for servers, VMs, and automated setups.

Download binary (x64) Download tar.gz

Usage

# Single update and exit: noip.client -u user@example.com -p yourpassword -d myhome.no-ip.eu # Daemon mode — update every N minutes in background (N ≥ 5): noip.client -u user@example.com -p yourpassword -d myhome.no-ip.eu -b 5 # Show version: noip.client -V

Quick start

  1. 1Download and make executable:
    wget -O /usr/local/bin/noip.client https://no-ip.eu/progs/noip.client-x64 chmod +x /usr/local/bin/noip.client
  2. 2Test with a single update:
    noip.client -u user@example.com -p yourpassword -d myhome.no-ip.eu
  3. 3Start as daemon (updates every 5 min in background):
    noip.client -u user@example.com -p yourpassword -d myhome.no-ip.eu -b 5 &
  4. 4To start automatically after reboot, add to crontab:
    crontab -e # Add: @reboot /usr/local/bin/noip.client -u user@example.com -p yourpassword -d myhome.no-ip.eu -b 5
    Note: on some systems @reboot fires before the network is up. Because the daemon retries every 5 minutes, it will connect automatically on the first successful attempt after boot.
  5. 5systemd unit file and SysV init script are in preparation — not yet included in this release. For now use cron as shown above.

Linux ARM / Raspberry Pi

ARMv7+ binary. Works on Raspberry Pi (all models), Orange Pi, Banana Pi, and any ARMv7+ Linux system. Identical interface to the x64 version.

Download ARM binary

Quick start

  1. 1
    wget -O /usr/local/bin/noip.client https://no-ip.eu/progs/noip.client-arm chmod +x /usr/local/bin/noip.client
  2. 2Test with a single update:
    noip.client -u user@example.com -p yourpassword -d mypi.no-ip.eu
  3. 3Start as daemon (updates every 5 min):
    noip.client -u user@example.com -p yourpassword -d mypi.no-ip.eu -b 5 &
  4. 4Auto-start after reboot via crontab:
    crontab -e # Add: @reboot /usr/local/bin/noip.client -u user@example.com -p yourpassword -d mypi.no-ip.eu -b 5

Router (built-in DDNS)

Most routers support the DynDNS protocol natively. No software to install — configure once, works forever.

SettingValue
Service / ProviderCustom or DynDNS
Server / Hostupdate.no-ip.pl
Login / UsernameYour No-IP.pl email
PasswordYour No-IP.pl password
Hostnamee.g. myhome.no-ip.pl

Works with any DynDNS2-compatible client. No-IP.eu implements the standard DynDNS2 protocol — the same one used by most routers, ddclient, inadyn, and other DDNS tools. Set the update server to update.no-ip.pl and your no-ip.eu credentials. Our native Linux/C client uses an optimised UDP protocol specific to no-ip.eu — lighter and firewall-friendly compared to HTTPS.

Router-specific notes
  • ASUS: WAN → DDNS → Service Provider: Custom. Paste update.no-ip.pl as the server URL.
  • TP-Link: Advanced → Network → Dynamic DNS → Service Provider: DynDNS.org works. Server: update.no-ip.pl.
  • MikroTik: IP → Cloud is not relevant. Use the /ip cloud script or a RouterOS script calling update.no-ip.pl via HTTP GET.
  • OpenWrt: No-IP.eu is an officially supported DDNS provider in OpenWrt. Install the ddns-scripts package, select no-ip.pl from the provider list, and set the server to update.no-ip.pl. The DynDNS2 update URL is shared — it works with no-ip.eu accounts.

Docker

Use qmcgaw/ddns-updater — a well-maintained multi-provider DDNS updater. Supports No-IP protocol.

services: ddns-updater: image: qmcgaw/ddns-updater restart: unless-stopped environment: - CONFIG=[{"provider":"noip","domain":"myhome.no-ip.pl","username":"This email address is being protected from spambots. You need JavaScript enabled to view it.","password":"yourpassword","ip_version":"ipv4"}] - PERIOD=5m - HTTP_TIMEOUT=10s ports: - "8000:8000" # optional: web status UI

Replace myhome.no-ip.pl, This email address is being protected from spambots. You need JavaScript enabled to view it., and yourpassword with your actual credentials. The container checks your IP every 5 minutes and updates the record when it changes.

FreeBSD

Binary distribution for FreeBSD amd64. Alternatively, use the inadyn port (pkg install inadyn) with the NoIP provider.

Download FreeBSD tar.gz

Installation

  1. 1
    tar -xzf no-ip-client-freebsd.tgz chmod +x noip.client cp noip.client /usr/local/bin/
  2. 2Run a test update:
    noip.client -u user@example.com -p yourpassword -d myhome.no-ip.eu
  3. 3Add to /etc/rc.local or create an rc.d script for automatic startup.
  4. 4Daemon mode or cron @reboot — same syntax as Linux above.
  5. 5Alternatively, use inadyn from ports (pkg install inadyn) — supports DynDNS2 protocol, set server to update.no-ip.pl.
Need API access, DNSSEC, or team management?
primedns.net — DNS platform for developers and businesses, from the team behind no-ip.eu.
Learn more →