We've all heard of Russian roulette, the game where you take a 6-shooter, put 1 bullet in it, spin it, and point it at your head. I'm hoping this only exists in movies.
But what about DNS roulette? Here's an example. I'm using a web service (Travis) as a CI. And like all good microservices things, there are multiple endpoints, all accessed by my browser. One of them is 'api.travis-ci.org'. I'm finding the web page is a bit flakey, sometimes it works, sometimes not.
So lets dig in shall we? I try DNS lookup:
$ host api.travis-ci.org api.travis-ci.org is an alias for nagano-4814.herokussl.com. nagano-4814.herokussl.com is an alias for elb052915-208107455.us-east-1.elb.amazonaws.com. elb052915-208107455.us-east-1.elb.amazonaws.com has address 126.96.36.199 elb052915-208107455.us-east-1.elb.amazonaws.com has address 188.8.131.52 elb052915-208107455.us-east-1.elb.amazonaws.com has address 184.108.40.206 Host elb052915-208107455.us-east-1.elb.amazonaws.com not found: 3(NXDOMAIN) Host elb052915-208107455.us-east-1.elb.amazonaws.com not found: 3(NXDOMAIN)
Lovely. Very consumer friendly 🙂