> My theory is as follows. The query causes the caching NS to get the two > answers but the software stores them in numerical order. The default > for bind is to "round-robin" so it choses the first (and thus the lower > IP address) as the first value. Since the TTL is zero, the software > then discards the data so it never gets to select the second value in > its robin robin scheme. > > Does this sound plausible?
It's plausible. I would assume this behavior without looking at the source code, too. > Has anyone else observed this? Is it a bug or a feature? It's a feature. Anything which discourages the use of TTL 0 is a feature.