How do I setup NC Box with a dynamic DNS provider?

Hi all,

I have signed up to freedns.afraid.org so that I can have access to my NC Box from outside my home network. What is the best way to setup a client on the NC Box so that my freedns.afraid.org gets updated with any changes to my ip address? I have looked at doing this on my router but it isn’t possible with it’s existing firmware so I need something on the NC Box itself

Is there an app that could be installed in nextcloud to do this? I didn’t see anything like that when I looked through the app store.

Is there a snap package that would do this?

Or should I install something in the Ubuntu Core OS? I see lots of different ways to do this but I also understand that the Ubuntu Core OS is a cut down version of a full Ubuntu install so I am looking for a tried and tested solution that works with the NC Box. Failing that I will turn this thread into a how to, once I figure out how to! :smiley:

The current image is a “full” ubuntu install, a proper snappy core will be released with Pi3 support #soon :slight_smile:

In that regard, any command line option freedns offers you will be easy to set up.

JasonBayton when I issue a snap list I get this

ubuntu@nextcloud:~$ snap list
Name         Version      Rev   Developer  Notes
nextcloud    11.0.0snap3  550   nextcloud  -
ubuntu-core  16.04.1      1361  canonical  -
ubuntu@nextcloud:~$ 

What is the ubuntu-core snap installed on my system? I thought that was Ubuntu Core 16. I was under the impression that the problem with the pi3 was that it still had some bugs with the 64 bit Ubuntu Core but that the pi2 was running 32 bit Ubuntu Core.

The Pi2 runs a proper ARM compiled ubuntu server and can be configured as one, too. Snap is just an application pre-installed on all 16.04+ versions of Ubuntu, which is why it works on your box and equally on my 16.04 ubuntu servers at home and in datacentres.

I understand that snap is a new way to install applications (similar to apt except that snap packages are isolated from the system and each other) and that nextcloud is installed as a snap package.

The snap list command lists all installed applications on a machine.

So when I run that command on my NC Box I get the above list that shows nextcloud as expected and ubuntu-core which would also be expected on a machine running ubuntu core?

If this is not the case then what is the ubuntu-core snap package that is installed on my machine? Why do I have ubuntu core snap installed on a full ubuntu server install? :confused:

My NC Box has been setup with the original sd card image that came with it.

That’s the first package installed when you try to install a snap. My non-NC corporate LTS server has it too:

Okay thanks, that clears up that confusion.

Cool. So to reiterate the answer providing freedns has a script or application that can be installed on a normal server you should be set.

Otherwise, you can look at duckdns which can update via cron, no-ip which has a ubuntu client or dyn which if I recall has several options.

I’ve installed ddclient with apt which brought up a configuration dialog as it installed. I’ll watch it and make sure it works.

1 Like

You could also have a look at twodns.de. Their IP update is a simple command in curl which you can copy/paste from their homepage. In the current box, you can set up a cron job. In Ubuntu core, you’ll have to create a snap like this:

name: sendip
version: 1.0
architectures: [ all ]
summary: sends ip
description: |
    * dd-dns      - service for two-dns
confinement: strict

apps:
  dd-dns:
   command: bin/your_code
   plugs: [network-bind]
   daemon: simple

parts:
  foo:
    plugin: copy
    files:
      your_code: bin/
    stage-packages:
      - curl

with you_code like this:

#!/bin/sh
while true; do
     your_command
     sleep 3m
done
1 Like

After trying several ddns services I’ve setup duckdns.org and that seems to have been the easiest and most straight forward to get working properly.