Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Maximizing Internet Infrastructure: Using an API For Managed DNS
Kevin Gray Dyn’s Technical Integrator @tuftsmoose @Dyninc
John Oberon Mashery’s VP of Engineering @joberon @mashery
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
What is DNS?
• Associate names to addresses
• Giant distributed database
• 2 Types of DNS Servers
• Recursive – performs the lookup
• AuthoritaAve – Replies with the answers
DNS = Domain Name System
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
A Basic DNS Lookup
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
A Basic DNS Lookup
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
• All stored in a zone file
• Many different types with different data
• A Record: IPv4 address
• AAA Record: IPv6 address
• MX: Mail Server
• CNAME: Alias to another DNS name
What is it we are asking for?
A DNS Record
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
It’s a bit more complicated…
I’m in the details!
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
It's a bit more complicated…
• Caching at all levels
• MulQple Data Centers & fastest route algorithms
• Loading Balancing
• Failovers
• NX: No record found handling
• PropagaQon Time
• DNSSEC: Think hUps at the DNS level
• Access control & zone ediQng
• Dozens of record types (A, AAAA, MX, CNAME, etc.)
The devil is in the details
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Managed DNS
• Offloads data center upkeep
• Allows for responses from mulQple points around the world
• Handles the implementaQons of load balancing, failovers, geographically specific responses, etc.
Takes care of most of the details
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Managed DNS
• Gives you a simple zone editor and
user access control
• Lets you focus on your specialty instead of DNS
• Dyn’s Enterprise DNS offering is DynECT
Takes care of most of the details
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
WHAT’S AN API – Mechanism to Connect
ONE OF THE MOST POWERFUL SOURCES OF COMPETITIVE ADVANTAGE IN BUSINESS TODAY
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
SIMPLIFY THE COMPLEXITY
PRODUCT BUS DEV IT
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
DEPLOY FLEXIBLY & QUICKLY
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
MASHERY GLOBAL API TRAFFIC NETWORK
• Robust – 4 levels of
failover – SLA
• ElasQc • Distributed
– Edge Caching
– Geo-‐rouQng
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
DynECT API
Asynchronous • Start a job: reply is immediate
• Call back to ask if job has finished
• Unblocks user during long operaQons
• Libraries allow for synchronous access by hiding the blocking
RESTful API
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
DynECT API
• JSON
• XML
• YAML
• HTML/Querystring (limited)
Supported Data Forms
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
DynECT API
• All zones and nodes & all record types
• Advanced services
• Users
• Permissions
What can be accessed?
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
DynECT API
• YES!
• We provide a WSDL
SOAP?
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
DynECT API
• Full documentaQon online
• SecQons specific to REST and SOAP
• Most examples we provide are REST (C# is SOAP)
• There examples in many languages
DocumentaAon & Examples
• Python • Ruby
• Perl • C#
• Java • PHP
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Tell me more!
Shameless Plug Alert!!!
Check out the blog I wrote for ge\ng started with the API: hUp://bit.ly/10dqCtz
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Tell me more!
Find some great examples on Github
Dyninc Dyninc-‐cs
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Tell me more!
• Bulk changes to mulQple zones or records
• Keeping advanced services in sync with local DNS
• CreaQng single point tools to update mulQple DNS providers
What would I use your API for?
Maximizing Internet Infrastructure: Using an API For Managed DNS @tu=smoose @DynInc @joberon @Mashery
Thank You!
Dyn www.dyn.com www.dyn.com/blog @Dyninc
Mashery www.mashery.com blog.mashery.com @mashery