skynetservices / skydns1

DNS for skynet or any other service discovery
MIT License
528 stars 54 forks source link

Mix-matching TTLs is invalid ... #91

Closed colmmacc closed 10 years ago

colmmacc commented 10 years ago

I haven't tested this, but based on the README.md, skydns serves RRsets with mix-and-matched TTLs, e.g.

production.skydns.local.        629     IN  SRV 10 20 80   web1.site.com. 
production.skydns.local.        3979    IN  SRV 10 20 8080 web2.site.com.
production.skydns.local.        3629    IN  SRV 10 20 9000 server24.
production.skydns.local.        3985    IN  SRV 10 20 80   web3.site.com.
production.skydns.local.        3990    IN  SRV 10 20 80   web4.site.com.

Unfortunately this is invalid, and some caches (bind8 and some versions of active directory I think) treat it as a format error.

RFC2181 Section 5.2 : "the use of differing TTLs in an RRSet is hereby deprecated, the TTLs of all RRs in an RRSet must be the same"

miekg commented 10 years ago

I have no sympathy for anybody running bind8 (nor Windows actually). However clamping the TTL of the RRset to the lowest TTL of the RRset is not that hard.

miekg commented 10 years ago

I have fix for this in skydns2 (skynetservices/skydns2)

miekg commented 10 years ago

Closing because it is fixed in skydns2