Re:Problems with low DNS TTLs
by cstejerean on Monday March 29, 2021 @12:25PM
(#26624209)
I think load balancing in that argument happens via “clients picks a random IP” and failover happens via “transparently try another if they can’t connect”.
So that would be both load balancing and failover, why doesn’t the argument hold up?
load balancing is more like you have 5 records, I'll serve 3 of them back to you.
next client comes in, I'll serve three again, possibly different from the three i've served before.
the client doesn't even know that there are two other possible endpoints (unless maybe until the next query).
edit: i just tried running this
watch dig -t A www.amazon.com @8.8.8.8
and saw the record change from time to time.
That's just not how this works at all. While you could use RR records for this purpose, I believe the author is suggesting that load balancing will happen automatically when the client simply can't connect to one of the addresses. That's not load balancing. That's failover.
Additionally, most of the use cases for this that I'm aware of are Cname -> A record. This is to say, this method is being used with precision rather than RR.
I agree that running 60 second TTL's regardless of need is inefficient, but at a fast glance, the full argument doesn't hold up for me.