Skip to content

Instantly share code, notes, and snippets.

@Zebiano
Last active January 4, 2025 05:36

Revisions

  1. Zebiano revised this gist Jun 22, 2023. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions ddclient.md
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,6 @@
    # DDClient setup <!-- omit in toc -->

    **Warning:** I believe the paths to be outdated, as DDClient docs point to `/etc/ddclient/ddclient.conf` instead of `/etc/ddclient.conf`. However, this document should still work reagrdless.
    **Warning:** I believe the paths to be outdated, as DDClient docs point to `/etc/ddclient/ddclient.conf` instead of `/etc/ddclient.conf`. However, this document should still work regardless.

    Quick and easy steps to get DDClient running with Namecheap and as a `systemd` service on Ubuntu Server OS.

    @@ -75,4 +75,4 @@ In order to get ddclient to start on system boot, you need to run it as a `syste
    sudo systemctl enable ddclient.service
    sudo systemctl start ddclient.service
    ```
    Information taken from [this Gist](https://gist.github.com/eliroca/cf09290492ec4c746b07cf7bf3cf1d15) (which seems to be invalid last time I checked again), there's some troubleshooting help there which may be useful if you're running into errors.
    Information taken from [this Gist](https://gist.github.com/eliroca/cf09290492ec4c746b07cf7bf3cf1d15) (which seems to be invalid last time I checked), there's some troubleshooting help there which may be useful if you're running into errors.
  2. Zebiano revised this gist Jun 22, 2023. 1 changed file with 3 additions and 1 deletion.
    4 changes: 3 additions & 1 deletion ddclient.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,7 @@
    # DDClient setup <!-- omit in toc -->

    **Warning:** I believe the paths to be outdated, as DDClient docs point to `/etc/ddclient/ddclient.conf` instead of `/etc/ddclient.conf`. However, this document should still work reagrdless.

    Quick and easy steps to get DDClient running with Namecheap and as a `systemd` service on Ubuntu Server OS.

    - [Installation](#installation)
    @@ -73,4 +75,4 @@ In order to get ddclient to start on system boot, you need to run it as a `syste
    sudo systemctl enable ddclient.service
    sudo systemctl start ddclient.service
    ```
    Information taken from [this Gist](https://gist.github.com/eliroca/cf09290492ec4c746b07cf7bf3cf1d15), there's some troubleshooting help there which may be useful if you're running into errors.
    Information taken from [this Gist](https://gist.github.com/eliroca/cf09290492ec4c746b07cf7bf3cf1d15) (which seems to be invalid last time I checked again), there's some troubleshooting help there which may be useful if you're running into errors.
  3. Zebiano created this gist Jul 25, 2022.
    76 changes: 76 additions & 0 deletions ddclient.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,76 @@
    # DDClient setup <!-- omit in toc -->

    Quick and easy steps to get DDClient running with Namecheap and as a `systemd` service on Ubuntu Server OS.

    - [Installation](#installation)
    - [Configuration](#configuration)
    - [Check if it works](#check-if-it-works)
    - [Run ddclient as a service](#run-ddclient-as-a-service)

    ## Installation

    Use `apt` to easily install ddclient:

    ```sh
    sudo apt install ddclient
    ```

    When prompted with a GUI to configure ddclient, feel free to either fill in information correctly, or to simply skip it and configure it in a later step. You will have to configure it manually anyways though.

    ## Configuration

    [You'll first have to enable "Dynamic DNS" on Namecheap to get a password](https://www.namecheap.com/support/knowledgebase/article.aspx/595/11/how-do-i-enable-dynamic-dns-for-a-domain/).

    In order to configure ddclient to work with Namecheap, run `sudo nano /etc/ddclient.conf` and [make sure these Namecheap settings are applied](https://www.namecheap.com/support/knowledgebase/article.aspx/583/11/how-do-i-configure-ddclient/):

    ```conf
    use=web, web=dynamicdns.park-your-domain.com/getip
    protocol=namecheap
    server=dynamicdns.park-your-domain.com
    login=YOUR_DOMAIN.COM
    password=YOUR_PASSWORD
    YOUR_HOST_1,YOUR_HOST_2,YOUR_HOST_3
    ```

    ## Check if it works

    Verify your configuration is correctly set up:

    ```sh
    sudo ddclient -daemon=0 -verbose
    ```

    You should get something like:

    ```sh
    ubuntu@ubuntu:~$ sudo ddclient -daemon=0 -verbose
    CONNECT: dynamicdns.park-your-domain.com
    CONNECTED: using HTTP
    SENDING: GET /getip HTTP/1.0
    SENDING: Host: dynamicdns.park-your-domain.com
    SENDING: User-Agent: ddclient/3.9.1
    SENDING: Connection: close
    SENDING:
    SENDING:
    RECEIVE: HTTP/1.1 200 OK
    RECEIVE: Date: Mon, 25 Jul 2022 11:44:27 GMT
    RECEIVE: Content-Type: text/html
    RECEIVE: Connection: close
    RECEIVE: CF-Cache-Status: DYNAMIC
    RECEIVE: Server: cloudflare
    RECEIVE:
    RECEIVE: 123.123.123.123
    SUCCESS: YOUR_HOST_1: skipped: IP address was already set to 123.123.123.123.
    SUCCESS: YOUR_HOST_2: skipped: IP address was already set to 123.123.123.123.
    SUCCESS: YOUR_HOST_3: skipped: IP address was already set to 123.123.123.123.
    ```

    ## Run ddclient as a service

    In order to get ddclient to start on system boot, you need to run it as a `systemd` service:

    ```sh
    sudo systemctl enable ddclient.service
    sudo systemctl start ddclient.service
    ```
    Information taken from [this Gist](https://gist.github.com/eliroca/cf09290492ec4c746b07cf7bf3cf1d15), there's some troubleshooting help there which may be useful if you're running into errors.