Plainnotes

What DNS round-robin cannot do

2024-11-13 · 2 min readNetwork

Resolving one name to several addresses looks like the simplest load balancer. In practice it fails at three things.

Caching makes distribution uncontrollable: resolvers honour TTLs differently by region and network, so the real split can sit at 8:2 for weeks instead of 5:5.

Failure removal is slow: after a host dies, traffic keeps arriving until every cache expires, and some users fail throughout.

And DNS knows nothing about load; rotation is blind.

Its narrow fit is coarse regional routing or static asset locality. Real balancing belongs at layer 4 or 7, with DNS only pointing users at the entrance.

If you use it anyway, keep TTLs at 60 seconds and pick a provider with health checks.