Site Map - skip to main content

Hacker Public Radio

Your ideas, projects, opinions - podcasted.

New episodes Monday through Friday.


hpr4203 :: Setup DuckDNS on a Raspberry Pi

Kevie discusses Dynamic DNS and how to setup DuckDNS on a Raspberry Pi

<< First, < Previous, , Latest >>

Thumbnail of Kevie
Hosted by Kevie on 2024-09-11 is flagged as Clean and is released under a CC-BY-SA license.
Dynamic DNS,Raspberry Pi,remote access,Linux. (Be the first).

Listen in ogg, spx, or mp3 format. Play now:

Duration: 00:17:16

general.

Kevie, co-host of TuxJam, discusses what a Dynamic DNS is and also introduces the free service DuckDNS. To complete this project you are going to need:

  • Raspberry Pi
  • Pi Power Supply
  • Micro-SD Card
  • Ethernet Cable

The first thing that we will need to do is to go to the DuckDNS website, sign in using your preferred method, once you complete the captcha then you will be given your unique token (copy or take a note of it, but don't share this with anybody).

Next you will want to create your own unique address, type in your chosen domain and click on Add Domain.

Now it is time to setup your Raspberry Pi. Log into your Pi and open a terminal. The first thing that we will do is make sure that it is up to date:

sudo apt update && sudo apt upgrade -y

Install Curl using the command:

sudo apt install curl

You will now create two new folders, the first is where the script will be kept, the second to store the logs:

sudo mkdir /opt/duckdns/ && sudo mkdir /var/log/duckdns/

We need to add a bash script that will update your IP with the DuckDNS service. First of all create a new file called duck.sh with the code:

sudo nano /opt/duckdns/duck.sh

At this point the file is empty, we need to enter in the command below. However you must replace DUCKDNSDOMAIN with the domain that was created on the DuckDNS website and replace DUCKTOKEN with your DuckDNS Token:

echo url="https://www.duckdns.org/update?domains=DUCKDNSDOMAIN&token=DUCKTOKEN&ip=" | curl -k -o /var/log/duckdns/duck.log -K -

Now save and exit (ctrl+X, Y, enter on Nano).

Next we can set the script's permission so that nobody else will gain access to your token:

sudo chmod 700 /opt/duckdns/duck.sh

Last step: we need to set a cron task so that your Pi will update DuckDNS domain every 5 minutes:

sudo crontab -e

Navigate to the bottom of the page and add the line:

*/5 * * * * /opt/duckdns/duck.sh >/dev/null 2>&1

Save and exit and your dynamic DNS should be up and running within five minutes.


Comments

Subscribe to the comments RSS feed.

Leave Comment

Note to Verbose Commenters
If you can't fit everything you want to say in the comment below then you really should record a response show instead.

Note to Spammers
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to record a show about yourself, or your industry, or any other topic we may find interesting. We also check shows for spam :).

Provide feedback
Your Name/Handle:
Title:
Comment:
Anti Spam Question: What does the P in HPR stand for ?