Skip to content

Angel0ffDeath/noip-renew

 
 

Repository files navigation

Script to auto renew/confirm noip.com free hosts

noip.com free hosts expire every month. This script auto clicks web pages to renew the hosts, using Python/Selenium with Chrome headless mode.

NOTE: this is an up-to-date fork of loblab/noip-renew repository as it seems it's not anymore actively developed, I'll try to keep this fork up to date and working as much as possible. Feel free to contribute!

noip.com hosts

Usage

  1. Clone this repository to the device you will be running it from. (git clone https://github.com/neothematrix/noip-renew.git)
  2. Run setup.sh and set your noip.com account information,
  3. Run noip-renew-USERNAME command.

Check confirmed records from multiple log files:

grep -h Confirmed *.log | grep -v ": 0" | sort

Usage with Docker

For docker users, run the following:

my_username='add username here'
my_password='add base64 encoded password here'
debug_lvl=2
docker build -t neothematrix/noip-renew .
echo -e "$(crontab -l)"$'\n'"12  3  *  *  1,3,5  docker run --network host neothematrix/noip-renew ${my_username} ${my_password} ${debug_lvl}" | crontab -

Remarks

The script is not designed to renew/update the dynamic DNS records, but only to renew the hostnames expiring every 30 days due to the free tier. Check noip.com documentation for that purpose. Most wireless routers support noip.com. For more information, check here. You can also check DNS-O-Matic to update multiple noip.com DNS records.

If you need notification functionality, please try IDemixI's branch. - OUTDATED

History

  • 1.5 (11/23/2021): Created this fork and merged all pull requests making the script working again.
  • 1.2 (01/02/2021): Merged all pull requests in latest months: make it work for updated noip.com site.
  • 1.1 (06/05/2020): Fixed error when attempting to update an expired host.
  • 1.0 (05/18/2020): Minor fixes to an xpath & a try catch pass to avoid an exception. Also fixed versioning.
  • 1.0 (04/16/2020): Catches "Would you like to upgrade?" page & stops script accordingly. Manual intervention still required.
  • 0.9 (04/13/2020): Complete refactor of code, more stability & automatic crontab scheduling.
  • 0.8 (03/23/2020): Added menu to repair/install/remove script along with ability to update noip.com details.
  • 0.7 (03/21/2020): Code tidyup and improved efficiency (Removed number of hosts and automatically get this)
  • 0.6 (03/15/2020): Improved support for Raspberry Pi (Raspbian Buster) & Changes to setup script.
  • 0.5 (01/05/2020): Support raspberry pi, try different "chromedriver" packages in setup script.
  • 0.4 (01/14/2019): Add num_hosts argument, change for button renaming; support user agent.
  • 0.3 (05/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/05/2017): Support Debian with Chrome headless.

About

Auto renew (confirm) noip.com free hosts

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Python 56.1%
  • Shell 38.1%
  • Dockerfile 5.8%