Skip to main content

Dynamic DNS

Dynamic DNS (DDNS) is similar to DNS. DDNS manages records of servers that have IP addresses which change.

cMixx Nodes and Gateways communicate using IP addresses or domain names. If a Node or Gateway has a dynamic IP address, then the changing of the IP address can result in downtime until the Node operator manually updates the configurations files. DDNS can be used to avoid downtime when its IP address changes.

Depending on your needs and preferences, you can configure just the Node, or just the Gateway or both to use DDNS.

info

If your Node and/or Gateway has a static IP address, then there is really no need to use DDNS, but you can if you prefer.

Which DDNS Should I Use?

There are multiple DDNS providers and multiple ways to implement their services. You will need to determine for yourself which DDNS provider to use and how to implement their service. Each DDNS provider will provide documentation related to their service.

tip

To get you started ask a search engine, "What is DDNS?"

Once you have configured DDNS per your provider's instructions, follow the appropriate instructions below for configuring the cMixx software.

DDNS on Node ONLY

To use DDNS on the Node ONLY, you must ...

  • Enable overridePublicIP in the cmix.yaml file of the Node computer.
  • Update the cmixAddress in the gateway.yaml file of the Gateway computer.
note

Below the NODE computer will use the DDNS address mynode.ddns.com for demonstration purposes.

Enable overridePublicIP on NODE

On the NODE computer, edit the cmix.yaml configuration file.

nano /opt/xxnetwork/config/cmix.yaml

Navigate to the line with #overridePublicIP.

  # The public IPv4 address of the Node, as reported to the network. When not
# set, external IP address lookup services are used to set this value. If a
# port is not included, then the port from the port flag is used instead.
# WARNING: Do not modify this option unless explicitly required.
#overridePublicIP: "1.2.3.4"

Enable overridePublicIP by deleting the # prepending the line. Replace the placeholder IP address "1.2.3.4" with your DDNS address (Ex: "mynode.ddns.com"). Once the change is made it should look similar to the following:

  # The public IPv4 address of the Node, as reported to the network. When not
# set, external IP address lookup services are used to set this value. If a
# port is not included, then the port from the port flag is used instead.
# WARNING: Do not modify this option unless explicitly required.
overridePublicIP: "mynode.ddns.com"

Press Ctrl + s then Ctrl + x

For the change to take effect restart the xxnetwork-cmix service.

sudo systemctl restart xxnetwork-cmix.service

Update cmixAddress on GATEWAY

On the GATEWAY computer, edit the gateway.yaml configuration file.

nano /opt/xxnetwork/config/gateway.yaml

Navigate to the line with cmixAddress and replace the IP address with the DDNS address and port of cMixx Node computer.

# The IP address of the machine running cMixx that the Gateway communicates with.
# Expects an IPv4 address with a port. (Required).
cmixAddress: "mynode.ddns.com:11420"
warning

Ensure that cmixAddress specifies a port. The default port is 11420.

Press Ctrl + s then Ctrl + x

For the change to take effect restart the xxnetwork-gateway service.

sudo systemctl restart xxnetwork-gateway.service

DDNS on Gateway ONLY

To use DDNS on the Gateway ONLY, you must ...

  • Enable overridePublicIP in the gateway.yaml file of the Gateway computer.
note

Below the Gateway computer will use the DDNS address mygateway.ddns.com for demonstration purposes.

Enable overridePublicIP on GATEWAY

On the GATEWAY computer, edit the gateway.yaml configuration file.

nano /opt/xxnetwork/config/gateway.yaml

Navigate to the line with #overridePublicIP.

# The public IPv4 address of the Gateway, as reported to the network. When not
# set, external IP address lookup services are used to set this value. If a
# port is not included, then the port from the port flag is used instead.
#overridePublicIP: "1.2.3.4"

Enable overridePublicIP by deleting the # prepending the line. Replace the placeholder IP address "1.2.3.4" with your DDNS address (Ex: "mygateway.com"). Once the change is made it should look similar to the following:

# The public IPv4 address of the Gateway, as reported to the network. When not
# set, external IP address lookup services are used to set this value. If a
# port is not included, then the port from the port flag is used instead.
overridePublicIP: "mygateway.ddns.com"

Press Ctrl + s then Ctrl + x

For the change to take effect restart the xxnetwork-gateway service.

sudo systemctl restart xxnetwork-gateway.service

DDNS on Both Computers

To use DDNS on both computers, combine the instructions for DDNS on Node ONLY AND DDNS on Gateway ONLY

To use DDNS on the BOTH computers, you must ...

  • Enable overridePublicIP in the cmix.yaml file of the Node computer.
  • Update the cmixAddress in the gateway.yaml file of the Gateway computer.
  • Enable overridePublicIP in the gateway.yaml file of the Gateway computer.