Container for No-IP dynamic DNS updates


Recommended Posts

By request, here's a container for keeping your IP up-to-date using No-IP:

 

https://registry.hub.docker.com/u/coppit/no-ip/

 

The easiest way to install this is to go to Community Applications, search for "coppit" then select the No-Ip container. Searching for "no ip" or "no-ip" won't work because the search ignores short words. Searching for "noip" might find it. But thankfully my name "coppit" is pretty unique. B|

 

Note: On July 12 2015 the config file format changed. As described in the webpage above, running it will create a noip.conf file that will need to be edited. You can delete the noip2.conf file.

Edited by coppit
Link to comment
  • 10 months later...

I think im missing something here. when i install the docker from the template i map the container volume: /config to the host path: /mnt/user/appdata/noIp/config/

the install process runs. everything seems fine. after about 15 minutes the docker is stopped and the log says "Could not find /config/noip2.conf"

 

It appears i have not set something up correctly. Any suggestions?

Link to comment

No-Ip requires an interactive setup. Did you do the command line step as described on the web page? If you used the unraid template without setting it up with the command line, I could see that causing a problem.

 

You might find duckdns easier to use, if you don't want to deal with the command line.

Link to comment

After a while of running the Docker, I notice that it stops working.... on the log screen, I see this (ip number changed for privacy):

 

[Jul 14 09:20:15] No-IP successfully called. Result was "nochg 108.111.111.111".
[Jul 14 09:25:21] No-IP successfully called. Result was "nochg 108.111.111.111".
[Jul 14 09:30:24] Something went wrong. Check your settings. Result was "".
[Jul 14 09:30:24] For an explanation of error codes, see http://www.noip.com/integrate/response

 

Would it be better running the script as a cron task rather that a continuously looping script? Not sure if my internet was down for a little or what may have caused this. It has happened 3 times in the past 2 days.

 

Thanks..

 

H.

Link to comment

I had No-ip working with issues. I noticed there was an update to the docker so I updated. This broke the installation so after a bit of reading and research I sorted it out. 

 

But now I get an error when running the docker and it stops.

 

[Jul 14 16:40:26] Something went wrong. Check your settings. Result was "nochg".
[Jul 14 16:40:26] For an explanation of error codes, see http://www.noip.com/integrate/response

 

I looked up the nochg result and it means that there was no ip update done because the ip submitted was current.  This result shouldn't cause the docker to stop.

 

The problem now is I can not get the docker to stay in a running state. I suppose when my ip changes I will be able to run it again and all will be good. But it is a bit of a pain.

 

I would imagine rebooting my router might give me a new ip. But it would be better to have the response handled correctly.

 

 

Link to comment

After a while of running the Docker, I notice that it stops working.... on the log screen, I see this (ip number changed for privacy):

 

[Jul 14 09:30:24] Something went wrong. Check your settings. Result was "".

 

Hm... That's not supposed to happen. I suppose I could ignore empty string. Or at least tolerate it happening intermittently before failing. I suspect that curl had trouble connecting, but didn't dump any error since I'm running with the "silent" flag. I'll try to improve that.

 

Would it be better running the script as a cron task rather that a continuously looping script? Not sure if my internet was down for a little or what may have caused this. It has happened 3 times in the past 2 days.

 

cron jobs don't send logs to "docker logs". Plus I want to stop if there's a problem. Otherwise your account can get blocked. I'll update it to be more tolerant of network failures.

Link to comment

I had No-ip working with issues. I noticed there was an update to the docker so I updated. This broke the installation so after a bit of reading and research I sorted it out.

 

Yeah, sorry about that. The new way is better, and I was thinking that not too many people were using this container yet. 

 

[Jul 14 16:40:26] Something went wrong. Check your settings. Result was "nochg".

 

Wha??? "nochg" violates the API. It should be "nochg<space><ip>". Sigh. I guess I can treat that as a success. Are you sure that the domain is working right?

Link to comment

Okay, I just pushed an update with these changes:

 

    - Capture errors from "curl". Show them, and make them nonfatal.

    - Treat "good" and "nochg" without an IP as successes. (Even though this violates the API.)

      - Note that in my testing I saw "nochg" even when my credentials were invalid

    - Wait 30 minutes before retrying when the status is 911, as requested in the API docs.

Link to comment

Its running great after about 12 hours... my recent log shows a few of these:

 

[Jul 15 05:37:26] Couldn't update. Trying again in 5 minutes. Output from curl command was "curl: (56) SSL read: error:00000000:lib(0):func(0):reason(0), errno 104".

 

But it keeps chugging afterwards... not sure if they are endemic minor interruption with either my ISP, or no-ip, or my router... I get them very sporadically, yet not too often. It's nice that it ignores the error and it keeps updating properly in subsequent updates.

 

Thank you!!

Link to comment

[Jul 15 05:37:26] Couldn't update. Trying again in 5 minutes. Output from curl command was "curl: (56) SSL read: error:00000000:lib(0):func(0):reason(0), errno 104".

 

Yeah, mine too. Exact same error. I see it happened a couple of times in a row max.

 

How would I know if I have the correct config?

 

Are you looking for a manual answer? From a machine inside your network, you can enter your domain into http://ping.eu/nslookup/, then compare the IP at the top versus the one at the bottom.

 

I could implement some sort of verification inside the container, but I'd rather hold off on adding that complexity until we know it's needed. Besides, if it said "nochg" but the IP was wrong, I'm not sure what else we could do. I'd rather treat that as a transient failure and log it. (In the current version, it's being treated as a success.)

Link to comment
  • 4 weeks later...

Thank you for this Docker. Is it possible to change the amount of time before renewal of the IP?

 

It updates immediately on start, then every five minutes. Is that not sufficient? I could make it configurable, with some minimum interval to prevent abuse.

Link to comment

I was actually looking to drop it down to once an hour or every 30 minutes. I use it on a remote system that I do not have to access a lot. I was just thinking every 5 minutes in such a situation is overkill.

 

If you can make it adjustable without too much effort, that would be great.

Link to comment
  • 2 weeks later...

Okay, I've added an "INTERVAL" configuration value.

 

If you are upgrading from a previous version, you will need to add an interval to your config file. Example:

 

INTERVAL='30m'

 

The new default interval for new config files is 30m. The minimum allowed is 5m.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.