noip.com free hosts expire every month. This script auto click web pages to renew the hosts, using Python/Selenium with Chrome headless mode.
- Platform: Debian/Ubuntu Linux, no GUI needed (tested on Debian 9.x/10.x); python 2.x/3.x
- Ver: 0.5
- Ref: Technical explanation for the code (Chinese)
- Updated: 1/5/2020
- Created: 11/4/2017
- Author: loblab
- Set your noip.com account info and number of hosts in noip-renew.sh,
- Run setup.sh,
- Run noip-renew.sh, check result.png (if succeeded) or error.png (if failed)
For docker users, check Dockerfile, docker-compose.yml, crontab-docker-host.
Check confirmed records from multiple log files:
grep -h Confirmed *.log | grep -v ": 0" | sort
The script is not designed to renew/update the dynamic DNS records. Check noip.com document for that purpose. And most wireless routers support noip.com. You can also check DNS-O-Matic to update multiple noip.com DNS records.
- 0.5 (1/5/2020): Support raspberry pi, try different "chromedriver" packages in setup script.
- 0.4 (1/14/2019): Add num_hosts argument, change for button renaming; support user agent.
- 0.3 (5/19/2018): Support Docker, ignore timeout, support proxy, tested on python3.
- 0.2 (11/12/2017): Deploy the script as normal user only. root user with 'no-sandbox' option is not safe for Chrome.
- 0.1 (11/5/2017): Support Debian with Chrome headless.