<div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><br>
</div></div>That paragraph from 4.1.4 is just plain wrong and following it will<br>
lead to cached data that can't be validated once retrieved.<br>
<br>
Lets say that all data in the zone has a TTL of 3600.<br>
<br>
At T - 3500 you have retrieved the DNSKEY while validating a MX RRset.<br>
At T - 100 you lookup a A record and validate it with the previously validated<br>
DNSKEY RRset.<br>
At T you update the zone's contents as per above.<br>
At T + 100 the DNSKEY RRset expires from the cache.<br>
At T + 200 a validating stub resolver looks up the A record and gets<br>
RRSIG(KEY1).  It then does a DNSKEY retrieval and only gets KEY2.<br><div class="adn ads" style><div class="gs" style="margin-left:44px"><div id=":5c" class="ii gt adP" style="font-size:13px;margin-top:5px;margin-right:15px;margin-bottom:0px;margin-left:0px;padding-bottom:5px">
<div id=":5d"><span class="HOEnZb adL"><font color="#888888"><br>Mark Andrews, ISC<br>1 Seymour St., Dundas Valley, NSW 2117, Australia<br>PHONE: <a href="tel:%2B61%202%209871%204742" value="+61298714742" style="color:rgb(17,85,204)">+61 2 9871 4742</a>                 INTERNET: <a href="mailto:marka@isc.org" style="color:rgb(17,85,204)">marka@isc.org</a><br>
</font></span></div></div><div class="hi" style="background-image:initial;background-color:rgb(242,242,242);padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;width:auto;border-bottom-left-radius:0px;border-bottom-right-radius:0px;background-repeat:initial initial">
</div></div><div class="ajx" style="clear:both"></div></div><div class="gA gt ac5" style></div></blockquote><div><br></div><div>At T+200 resolver will get RRSIG(KEY2). But your idea stands, the last</div><div><span style>sentence should read something like this:</span></div>
<div><span style>"One replaces the DNSKEY_S_1 signatures with signatures</span></div><div style><div> made with DNSKEY_S_2 AND, AFTER OLD RRSIG EXPIRE FROM CACHES,</div><div> REMOVES DNSKEY_S_1."</div><div><br></div>
<div>The scenario wil be:</div></div><div>1. DNSKEY#1 + RRSIGS#1 + DS#1 (initial state)</div><div>2. DNSKEY#1, DNSKEY#2 +  RRSIGS(DNKSEY)#1,#2 + RRSIGS(ZONE)#2 + DS#1 (add new DNSKEY, sign DNSKEYs with both DNSKEYs, sign zone with new DNSKEY only (remove old RRSIGs))</div>
<div>3. (wait DNSKEY propagation delay)</div><div>4. DNSKEY#1, DNSKEY#2 +  RRSIGS(DNKSEY)#1,#2 + RRSIGS(ZONE)#2 + DS#2 (change DS#1 to DS#2)</div><div>5. (wait DS propagation delay + RRSIG propagation delay since step 2) </div>
<div>6. DNSKEY#2 +  RRSIGS#2 + DS#2 (remove DNSKEY#1, and the corresponding DNSKEY signatures)</div><div><br></div><div>Anyhow, my question was if that would be possible to achieve with BIND.</div><div><br></div><div>Alex</div>
</div></div>