OVH Dyn DNS service setup with CISCO 2800 series

OVH Dyn DNS service setup with CISCO 2800 series

Hi again people!

Today I'd like to talk a little bit about my favorite ISP, and how easy and effective is to use their Dyn DNS service with any CISCO IOS driven ISR 2800 series (and very surely the vary same is valid to most L3 IOS driven devices).

About OVH

I first knew about this company at work, it is a French company, but it operates almost worldwide. It has several hi-tech data-centers, along as connection and presence on most peering exchange data-centers in Europe, USA and Canada.
Their services and portfolio is huge... so better visit your country's OVH brand website (http://www.ovh.com/XX) for further info on their offers.

My experience with OVH

I extensively use OVH products both for personal, and professional duties. From domains, hosting, email and so, to dedicated servers, storage, virtual rack, RIPE IP block management and private networking.

In a nutshell:
· the 'pro' on OVH is that they have probably the better prices in respect of any other competitor, very far lower. So, very good services at very low prices.

·The 'con' with OVH is that you have to 'do it yourself' and not to expect very much support (or any support at all)...along with outdated info, outdated guides, and so on.

The feeling with OVH is that they have grown so big, so quick, so successfully, offering so much technologies, so new, and always so innovative, with so much services and solutions (often overlapping) that their commercial and support staff simply runs behind their engineers and their business strategists.
I remember a period of time, a few years ago, when OVH literally freezed their sales on their site for several months... they had to stop and rethink/recap their strategy!!!

Often you'll find that you can do more with OVH than even OVH brochures announce, since you have plenty of freedom to setup and configure...

As a thumb rule, the true limit on what you can do with OVH services is their API (yes, they provide an API, and, in theory, their very own web management tool for customers uses their API).
The API documentation is available and sufficiently explained, but whether it is up to date at every moment is another question.

OVH's Dyn

As an example of OVH philosophy, we'll talk about the included Dyn service included with any of their Domain Reservation / DNS management plans (Reaaaally cheap, really good).
In theory, you just get a domain, and the DNS zone administration (if you wish to use it)... but you'll find also a few megs for a landing page storage (or whatever), ftp service, an email redirection service, and several other useful things like this for just for a couple of euros.
Among those services, there's the Dyn service:
You can create a set of Dyn user/password identity pairs (I don't know how many!!!) and you can create Dyn DNS entries asigned to those entities for authentication... How many of them? I don't know!!!... but sure far more than I need!

Dyn client and setup.

OVH's offers a guide for setting a windows client to update the Dyn DNS entry, along with instructions for using it with a Linux script.
There's also instructions for setting the service with some home DSL routers and firewalls that come with OVH Dyn service client on their firmware.
So, according to official brochures or documentation, what we are going to do is not possible, although it is, but that's normal in OVH world.

So, I read in a forum a guy that was trying to sync pfSense appliances with OVH's Dyn DNS service. The guy was having problems to get their entries updated, and shared his latest setup.
Among it, there was an HTTP updating URL, in the style of DynDNS or NoIP (...but, From where did that came from!?!?!). The problem was indeed on client side, he managed to fix it, and the guy claimed it worked!

So, if it's possible with pfSense, it should with CISCO too!!!
Googling a little bit on the topic, I found that URL a few more times in OVH forums, talking on Dyn service updating... mostly in french.
Even I found a guy asking on how to sync a CISCO router with OVH's Dyn DNS service 8 years ago! (unfortunately, nobody replied).

So, I decided to try it, and, provide I got it working, to share it.
It worked, it's working, and here we go!

Updating OVH's Dyn through HTTP

Provide we do have the following steps done with OVH:

  • We get our domain registered and DNS managed at OVH: example.com
  • We created a user / pass pair for Dyn update authentication: example.com-user / somepassword
  • We create a Dyn DNS entry to update: dynamicip.example.com
  • We do associate the former auth pair with the formes Dyn DNS entry

With that data, here's the resulting OVH's Dyn HTTP update URL:
http://example.com-user:somepassword@www.ovh.com/nic/update?system=dyndns&hostname=dynamicip.example.com

Provide you have your own, you culd give it a try pasting your resulting URL on any browser... it should work.

Setting CISCO's ddns

There's plenty of documentation on howto setup DynDNS or NoIP services with CISCO IOS by using ddns.
So I'm not going to dig on what makes every command... As always, there's plenty of documentation on the topic.

In a nutshell, the process involves two steps.

  • As an early condition, DNS has to be enabled and setup on the device.
  • First, you create a kind of Dynamic DNS update profile, which I named 'OVH'. Then, you configure it to use HTTP binding to send updates, and add an URL to connect to the service and prompt the updating. Also there are other, very intuitive options, such as minimum and maximum inter-update periods of time.
  • Second, You assign that profile to the interface on the ISR that gets a Dynamic IP (Typically a FTTH, Cable or DSL connection)

Here are some config example excerpts to show how it finally should look like:

!
! We need DNS environment up and running
!
ip domain name dynamicip.example.com
ip name-server 8.8.8.8
ip name-server 8.8.4.4

!
! We create a ddns update profile named 'OVH'
!
ip ddns update method OVH
 HTTP     
  add http://example.com-user:somepassword@www.ovh.com/nic/update?system=dyndns&hostname=dynamicip.example.com
 interval maximum 1 0 0 0
 interval minimum 0 0 1 0
! 

!
! Set the interface to update DNS entry using 'OVH' profile
!         
interface Dialer0
 ip ddns update hostname dynamicip.example.com
 ip ddns update OVH
!

 
I'm currently using it at home, but the results are so good, that we are thinking to put it in production as needed at work, and switch from DynDNS to OVH and unify everything.

Hope it works to someone else!
Best regards!