This DNS story started when I bought a domain with a specific need — to dynamically create and delete DNS records for Nuage Networks components we use during Proof Of Concepts and customers trials.
Earlier I used to rely on Dynamic DNS services (i.e. no-ip.com) whenever I needed a DNS name for my public endpoints. But this approach has two drawbacks:
- To use if for free you have to manually prolong you hostname once in a month. Drove me mad every time!
- In PoCs/trials you want your domain represent your product. Using
hostname.ddns.netin front of a customer is not something that speaks well for your product. And we all know that devil is in the details.
Therefore I decided to buy a domain that will represent a product we are offering and park it to some provider which offers robust, free and API-enabled DNS service. Google cloud DNS and DynDNS while being both cheap are not free. So I kept looking and ended up with Yandex DNS which has all three traits I was looking for. Lastly I automated this DNS workflow so everyone in my team could provision their own DNS entries via one shared tool.
You got it right, in this post I am going to tell you about a completely free DNS service from Yandex with a decent API you can use for your personal needs. And yes, this post is accompanied with a python script which leverages API and automates DNS records provisioning.