WeOS
5.20.1

# DDNS (Dynamic DNS)

## Introduction

DDNS is a service offered by many Internet Service Providers (ISPs) to allow end-users to register a dynamic (DHCP/PPPoE/PPPoA) address with a DNS record.

When the switch acquires its IP address dynamically (via DHCP or PPP) from an ISP, maintaining the DNS server entry is cumbersome. To that end the system includes support for dynamic DNS (DDNS). With DDNS enabled, the switch updates its DNS server entry automatically when acquiring a new IP address.

Below is a non-exhaustive list of supported DDNS providers:

- DYN: http://www.dyndns.org
- FreeDNS: http://freedns.afraid.org
- no-ip: http://www.noip.com
- LOOPIA: http://www.loopia.com

## Basic DDNS configuration

DDNS configuration context can be found under IP context in the CLI:

    example:/#> configure
    example:/config/#> ip
    example:/config/ip/#> ddns
    example:/config/ip/ddns/#>

## Syntax

`[no] enable`

  Enable/disable DDNS. Useful to disable a fully configured DDNS before deployment, the configuration will remain dormant while disabled.

  no
    Disable DDNS
`[no] interval [1-864000]`

  This setting controls the IP address check interval, and is in range 1 - 864000. Default value is 43200 seconds (12 hours)

  no
    Reset interval to its default value (43200 seconds)
`[no] ca-store [auto|local]`

  This setting controls the Root CA certificate store. Default value is ‘auto’.

  no
    Reset CA certificate store to its default value: auto
  auto
    WeOS’ builtin certificate store. This includes all certificates shipped directly with WeOS.
  local
    Local store includes certificates imported by user and overrides WeOS’ builtin certificate store (auto).
`[no] provider-id [PROVIDER_UID]`

  Create/remove DDNS provider instance with specified UID. UIDs are unique numbers in range 1 - 999. Maximum 7 simultaneous provider instances may be configured.

  no
    Delete provider with specified UID
  PROVIDER_UID
    Unique identifier for DDNS provider. This simply represents DDNS provider instance.

## DDNS Provider configuration

In order to configure DDNS provider, a provider-instance must be created first by specifying UID.

    example:/config/ip/ddns/#> provider-id 1
    example:/config/ip/ddns/provider-1/#>

## Syntax

`[no] provider [freedns|dyn|cloudflare|loopia|...]`

  Add/remove builtin DDNS provider.

  no
    Remove builtin DDNS provider
  freedns
    Freedns DDNS provider.
  dyn
    Dyndns DDNS provider.
  cloudflare
    Cloudflare DDNS provider.
  loopia
    Loopia DDNS provider.
  noip
    NoIP DDNS provider.
  yandex
    Yandex DDNS provider.
  duiadns
    Duiadns DDNS provider.
  dnspod
    Dnspod DDNS provider.
`[no] custom [NAME]`

  Set custom DDNS provider name. This setting is mutually exclusive with `provider` setting.

  no
    Remove custom DDNS provider
  NAME
    Custom DDNS provider name.
`[no] ssl`

  Enable/disable HTTPS. Enabled by default.

  no
    Disable HTTPS. HTTP will be enabled instead.
`[no] username [USERNAME] [hash] [PASSWORD]`

  Set username and password for DDNS provider. Password can be omitted when setting username.

  no
    Remove username and password
  USERNAME
    username for DDNS provider account.
  PASSWORD
    password for DDNS provider account.
  hash
    specify password as a hash.
`[no] password [hash] [PASSWORD]`

  Set password for DDNS provider. Password may be set either in plain text or as a hash.

  no
    Remove password
  PASSWORD
    password for DDNS provider account.
  hash
    specify password as a hash.
`[no] hostname [HOSTNAME[,HOSTNAME,...]]`

  Set hostname(s) for DDNS provider.

  no
    Remove hostnames
  HOSTNAME
    name of the host.
`[no] server [SERVER] [PATH]`

  Set server and url for custom DDNS provider.

  no
    Remove custom DDNS server and url
  SERVER
    DDNS server string (example: twodns.de).
  PATH
    path that follows ddns server string, (example: /)
`[no] checkip-server [SERVER] [PATH]`

  Set checkip server and url for custom DDNS provider.

  no
    Remove checkip server and url
  SERVER
    Checkip server string (example: updatemyip.org).
  PATH
    path that follows checkip server string, (example: /update/now)
`[no] checkip-ssl`

  Enable/disable HTTPS for checkip serever.

  no
    Disable HTTPS, HTTP will be used instead

« Previous Next »