I would like to configure an IP updater for OpenDNS.

  1. What packages I need to install?
  2. What configuration is necessary?

I'm not asking about how to include the OpenDNS servers in my /etc/resolv.conf.


The normal way to set it up at home is to just configure your router to use it. How to do this varies by model, but the basic support page for OpenDNS is here, it's a good starting point.

If you still want to just configure your Ubuntu machine to use OpenDNS, their how-to is here.

Good luck.


Very nice. However, following the tips above, the error occurs for me: "WARNING: unable to determine IP address". To resolve this error, it was only necessary to remove the blank spaces in the options of file.

And to get the IP is better the site: myip.dnsomatic.com

See below:

sudo nano /etc/ddclient.conf 
# #
# # OpenDNS.com account-configuration
# #

use=web, web=myip.dnsomatic.com

login=username in OpenDNS                   <-----
password='key OpenDNS'                      <----- CHANGE THIS
(Name of the network you set up in OpenDNS)   <-----

Test if is all ok with the command:

sudo ddclient -verbose -file /etc/ddclient.conf

As of 2018, here are the steps to get the IP updater working. This answer integrates the two answers before it by hhlp and user268594.

To limit the updates to a specific network, refer to this question.


Install the updater:

$ sudo apt install ddclient

This will open its shell-based UI. The correctness of its configured values is not very important at this time, as they need to be reconfirmed and possibly changed later anyway.

Configure ddclient

Use sudo nano /etc/default/ddclient to configure as below:

# Configuration for ddclient scripts 
# generated from debconf on Sun Jun 24 00:08:13 EDT 2018
# /etc/default/ddclient

# Set to "true" if ddclient should be run every time DHCP client ('dhclient'
# from package isc-dhcp-client) updates the systems IP address.

# Set to "true" if ddclient should be run every time a new ppp connection is 
# established. This might be useful, if you are using dial-on-demand.

# Set to "true" if ddclient should run in daemon mode
# If this is changed to true, run_ipup and run_dhclient must be set to false.

# Set the time interval between the updates of the dynamic DNS name in seconds.
# This option only takes effect if the ddclient runs in daemon mode.

Given this file, upon a reboot, the ddclient process should start automatically start in daemon mode.

$ ps aux | grep [d]dclient
root     15323  0.0  0.0  39564 10036 ?        S    09:11   0:00 ddclient - sleeping for 180 seconds

Configure ddclient.conf

Use sudo nano /etc/ddclient.conf to configure as below:

use=web, if=myip.dnsomatic.com

Customize the last three lines above. The last line is your network label as shown in OpenDNS Settings.

The primary reference for this section is an OpenDNS support article.


Test once (not as daemon):

$ sudo ddclient -verbose -file /etc/ddclient.conf

When the above command is run for the first time, the last line of the output should represent:

SUCCESS:  updating Home: good: IP address set to

If the command is repeated, the last line of the output should represent:

SUCCESS:  Home: skipped: IP address was already set to

After some research I can configure it:

  1. create your account in OpenDns.
  2. install ddclient:

    ddclient is a Perl based client used to update DNS entries. This client works with all of our services as well as services provided by many of our competitors.

    sudo apt-get install ddclient

    when it starts to ask for parameters just click next and next ...

Now we have to configure 2 files, open a terminal and type the following :

sudo nano /etc/default/ddclient
# Configuration for ddclient scripts
# Generated from debconf on Mon Aug 2 12:39:39 CEST 2010
# /Etc/default/ddclient

# Set to "true" if ddclient run Should Be Every time a new ppp connection is
# Established. This Might Be Useful, if You are using dial-on-demand.
run_ipup = "false"

# Set to "true" if ddclient Should run in daemon mode
# If tis is changed to true, run_ipup Must Be Set to false.
run_daemon = "true"

# Set the time interval Between the updates of the dynamic DNS name in seconds.
# This option only Takes effect if the ddclient runs in daemon mode.
daemon_interval = "300"

now with the other:

sudo nano /etc/ddclient.conf
# #
# # OpenDNS.com account-configuration
# #

ssl = yes
use = web, web = whatismyip.org

server = updates.opendns.com
protocol = dyndns2
login = username in OpenDNS                   <-----
password = 'key OpenDNS'                      <----- CHANGE THIS
(Name of the network you set up in OpenDNS)   <----- 

And configure your DNS as describe JE2Tom in his post.


This is a seven year old question is no longer relevant. OpenDNS does not need an updater in Windows or Linux.

To simplify, add the OpenDNS Primary and secondary IP addresses in the router. One spec covers either Ethernet or WiFi. If this cannot be done in the router, as in my case because the ISP's own DNS and they are not replaceable, then place them in the network configuration.

Depending on one's connection, they are found in on either the IPv4 or IPv6 Settings tab under additional DNS servers as:, In this case they have to be specified for each connection type. Test it with the following OpenDNS website: https://welcome.opendns.com/

  • OP is not asking how to use OpenDNS for resolving DNS. OP wants to update the OpenDNS service with his current public IP to use other services provided by OpenDNS, such as statistics, parental filtering, etc.
    – Gaia
    Sep 7 '18 at 18:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.