· javascript

Scriptable GeoDNS: Leaving AWS for Bunny

I moved this blog from CloudFront and Route 53 to a European provider.


JavaScript code running on each DNS query returns the closest servers,... To op­ti­mize the per­for­mance met­rics of this blog, I re­lied on Ama­zon Cloud­Front to serve the as­sets,1 and Route 53 for the geo-aware DNS2 to di­rect read­ers to the clos­est host serv­ing the con­tent. But Route 53 is ex­pen­sive: US$0.50 per zone per month, US$0.70 per mil­lion ge­olo­ca­tion queries, and US$0.75 per healthcheck per month[1], plus US$1 per month for the KMS key[2] needed to sign zones with DNSSEC.

When I dis­cov­ered that Bunny DNS is al­most free[3] for up to 500 do­mains and fea­tures script­able an­swers, I made the jump! Plus, it’s a Eu­ro­pean com­pany based in Slovenia. I had been host­ing me­dia as­sets on Cloud­Front since 2011. ❦ Route 53 had served bernat.ch since De­cem­ber 2021.

I didn’t use healthchecks as they were too ex­pen­sive. I didn’t host most of my zones there ei­ther, as queries for haproxy.debian.net alone would have cost me around US$10 per month. ❦ Bunny.net[4] started as BunnyCDN in 2015[5]. They added IPv6 sup­port in 2017[6]. I don’t bring a cus­tom do­main: I serve the con­tent from the b-cdn.net do­main.

Earlier coverage

Related coverage

Also worth reading

  1. Fireworks says you’re wasting money on AI unless you’re using all the models
  2. How Grab Improved Mobile App Stability by Safely Handling Surge in AI-Generated Code Changes
  3. Open Source pg_vectorsearch Brings More Scalable Vector Search to PostgreSQL
  4. How are you dealing with all the negative side effects of AI on the web?
  5. Meridian browser, Servo and GPUI, experimental web browser release