pfSense
Services → Dynamic DNS → Add. Use Custom (there is no separate hostname field).
- Service Type: Custom
- Interface to monitor: WAN
- Username: your TechDDNS account username
- Password: hostname update password
- Update URL (put your real FQDN in place of the example):
https://techddns.com/update?hostname=hostname.techddns.com&myip=%i
Some builds use <ipaddr> instead of %i. Use HTTPS on port 443 (not port 5000).
Save → Force Update. Status should show good … or nochg ….
OPNsense
Services → Dynamic DNS → Settings → Add.
- Service: Custom or No-IP if available
- Interface: WAN
- Hostname:
hostname.techddns.com
- Username / Password: account username + update password
- If Custom, Check IP / Force IP and set URL:
https://techddns.com/update?hostname=hostname.techddns.com&myip=%IP%
Placeholder names vary by OPNsense version — use the WAN IP token shown in the UI help text.
ASUS (Merlin / stock)
WAN → DDNS (or Adaptive QoS / Internet → DDNS on some firmwares).
- Enable DDNS Client
- Server: No-IP if listed, otherwise Custom / HTTPS
- Host Name:
hostname.techddns.com
- User Name / Password / Key: account username + update password
- If Custom URL is offered:
https://techddns.com/update?hostname=hostname.techddns.com&myip=
ASUS often appends the WAN IP automatically when the URL ends with myip=.
TP-Link (Archer / Omada gateway)
Omada Controller: Configuration → Device Config → Dynamic DNS. Archer: Advanced → Network → Dynamic DNS.
- Service Provider: Custom (Omada’s NO-IP preset talks to No-IP’s cloud, not TechDDNS)
- Interface: WAN1 (or your WAN)
- Username: TechDDNS account username
- Password: that hostname’s update password (dashboard / Settings → Copy — not your login password)
- Domain Name:
hostname.techddns.com
- Update-URL (paste exactly; Omada requires these placeholders):
https://techddns.com/update?hostname=[DOMAIN]&myip=[IP]&username=[USERNAME]&password=[PASSWORD]
Also valid (No-IP style; avoid if your update password has @ : # or /):
https://[USERNAME]:[PASSWORD]@techddns.com/nic/update?hostname=[DOMAIN]&myip=[IP]
Apply → Enable. Status should leave Disconnect. Check Admin → Activity for good / nochg (not badauth).
NETGEAR
Advanced → Dynamic DNS (or Settings → Advanced Setup → Dynamic DNS).
- Use a Dynamic DNS Service: Yes
- Service Provider: No-IP (preferred) or Custom if present
- Host Name:
hostname.techddns.com
- User Name / Password: account username + update password
UniFi / Ubiquiti
UniFi OS / Network application → Settings → Internet → WAN → Dynamic DNS (or Teleport / Advanced).
- Create Dynamic DNS
- Service: noip or dyndns / custom
- Hostname:
hostname.techddns.com
- Username / Password: account username + update password
- Server (if asked):
techddns.com or https://techddns.com/update
On some UniFi versions the “Server” field is only the host (techddns.com); the path is fixed to No-IP style.
Synology DSM
Control Panel → External Access → DDNS → Add.
- Service provider: No-IP.com or Customize
- Hostname:
hostname.techddns.com
- Username / Password: account username + update password
- If Customize, set provider URL to:
https://techddns.com/update?hostname=__HOSTNAME__&myip=__MYIP__
Synology substitutes __HOSTNAME__ and __MYIP__ automatically.
ddclient / Linux
Works on Raspberry Pi, Ubuntu, Proxmox LXC, etc.
protocol=noip
server=techddns.com
login=YOUR_USERNAME
password=YOUR_UPDATE_PASSWORD
hostname.techddns.com
Or with inadyn:
system = default@no-ip.com
username = YOUR_USERNAME
password = YOUR_UPDATE_PASSWORD
hostname = hostname.techddns.com
ddns-server = techddns.com
ddns-path = /update?hostname=%h&myip=%i
Windows
Use the branded TechDDNS Client (No-IP-style DUC), Task Scheduler + script, or curl.
TechDDNS Client (recommended)
Download Windows Client
- Download and run TechDDNS-Client.exe (or install via the included installer script from the project)
- Enter your account username and hostname update password
- Click Refresh and pick a hostname from the list
- Save → Start
Optional: enable Start with Windows and Start minimized. Closing the window while running can send it to the system tray.
curl / Task Scheduler
curl -sS -u "YOUR_USERNAME:YOUR_UPDATE_PASSWORD" ^
"https://techddns.com/update?hostname=hostname.techddns.com"
Omit myip to let the server detect your public IP from the connection (via NPM X-Real-IP / X-Forwarded-For).
curl / cron
curl -sS -u "YOUR_USERNAME:YOUR_UPDATE_PASSWORD" \
"https://techddns.com/update?hostname=hostname.techddns.com&myip=$(curl -4 -fsS https://api.ipify.org)"
Run every 5–15 minutes from cron, or only when the WAN IP changes.
Generic / “No-IP compatible” routers
If the router only lists DynDNS or No-IP:
- Choose No-IP
- Enter hostname, username, and update password as above
- If there is a Server / Provider address field, set it to
techddns.com
- If the server is hard-coded to
dynupdate.no-ip.com and cannot be changed, use Custom URL mode or a LAN device running ddclient instead
API reference
GET https://techddns.com/update?hostname=hostname.techddns.com&myip=203.0.113.40
Authorization: Basic base64(username:update_password)
Private (RFC1918) addresses are rejected so a LAN IP is never published by mistake.