Thanks for your reply. <br><br>I have been able to sign the zone with the steps you mentioned. <br>I am using bind 9.6.1-P1 and there is no "-P" option in it.<br>I removed that and dnssec-signzone created a signed zone.<br>
<br>It looks like NSEC3 is a draft but .gov seems to be still using NSEC3. It is not clear which mode of operation DNS servers should be configured to operate in: NSEC (till NSEC3 becomes a standard) or NSEC3. My understanding so far is a DNS server cannot be run in a mixed (supporting both NSEC and NSEC3) mode.<br>
<br>Any thoughts on that in this forum?<br><br>thanks,<br>Ravi.<br><br><div class="gmail_quote">On Wed, Sep 9, 2009 at 12:51 PM, Jeremy C. Reed <span dir="ltr"><<a href="mailto:reed@reedmedia.net">reed@reedmedia.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">On Wed, 9 Sep 2009, Ravi Kondamuru wrote:<br>
<br>
> I am trying to sign a zone and use NSEC3 instead of NSEC.<br>
> I used the NSECRSASHA1 as the algorithm when generating the keys. I see that<br>
> the algorithm value is "7".<br>
> However when I sign the zone it still generates NSEC records in the file.<br>
<br>
</div>NSECRSASHA1 allows for NSEC too. And dnssec-signzone defaults to NSEC.<br>
Did you use dnssec-signzone -3 option?<br>
<div class="im"><br>
> Is there some place I can look for the steps to generate NSEC3 signed zone?<br>
><br>
> I see there are 3 additional options in dnssign-zone: -3 salt (NSEC3 salt), <br>
> -H iterations (NSEC3 iterations) and -A (NSEC3 optout).<br>
> how do I generate the "salt" file?<br>
<br>
</div>(I can't find "dnssign-zone".)<br>
<br>
RFC 5155 says the length is 0 to 255 octets and is a "sequence of<br>
case-insensitive hexadecimal digits" (without whitespace) and it is used<br>
to "defend against pre-calculated dictionary attacks." The salt is a hex<br>
encoded string. Or you can use "-" (dash) to mean to not use a salt.<br>
<br>
How you generate it depends on your system. Some examples:<br>
<br>
  printf "%x" `echo $RANDOM`<br>
<br>
  dd if=/dev/urandom bs=16 count=1 2>/dev/null | hexdump -e \"%08x\"<br>
<br>
(I won't discuss how "random" these are, they are just examples.)<br>
<br>
Signing example:<br>
<br>
dnssec-keygen -r /dev/urandom -a NSEC3RSASHA1 -b 1024 foo<br>
cat Kfoo.+007+*.key >> foo<br>
(be sure to remove the 005 DNSKEY from your zone)<br>
dnssec-signzone -P -3 - foo<br>
   or<br>
dnssec-signzone -P -3 ABCDEF foo<br>
</blockquote></div><br>