Sandman4 Asked: 2012-05-11 10:43:24 +0800 CST2012-05-11 10:43:24 +0800 CST 2012-05-11 10:43:24 +0800 CST DNSSEC NSEC3 选择退出 772 有人可以用简单的语言解释 NSEC3 RR 中选择退出标志的含义吗?我确实阅读了RFC 5155,但一无所知。 dnssec 1 个回答 Voted Best Answer Cakemox 2012-05-12T01:27:53+08:002012-05-12T01:27:53+08:00 NSEC3 记录可以通过两种不同的方式之一创建:用于所有委托,或仅用于安全委托。选择退出标志告诉您正在使用哪种方法。该标志的原因是允许主要由授权(即 TLD)组成的非常大的区域不必为每个授权生成 NSEC3 记录及其相应的 RRSIG 记录。这对于像 .com 这样拥有约 100,000,000 个授权的 TLD 很重要;签署每一个代表团都会产生一个非常庞大的区域文件! There is no difference between secure delegations when the opt-out bit is set or not. 对于未设置退出位的不安全委托,您将获得委托 NS 记录以及该委托的 NSEC3 和 RRSIG。这是 house.gov 的示例,它是 .gov 区域中的不安全委托(未提供 DS 记录),不使用退出位: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9019 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 4, ADDITIONAL: 3 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1472 ;; QUESTION SECTION: ;www.house.gov. IN A ;; AUTHORITY SECTION: house.gov. 86400 IN NS chyron.house.gov. house.gov. 86400 IN NS mercury.house.gov. 56j5jp60kq681hl5vtv287p7s16spmcp.gov. 86400 IN NSEC3 1 0 8 4C44934802D3 56K48N2V1IV9H7F4HJ05N62QI9C29JV2 NS 56j5jp60kq681hl5vtv287p7s16spmcp.gov. 86400 IN RRSIG NSEC3 7 2 86400 20120516040019 20120511040019 35464 gov. OlOx3rG7ShAptVt1XTqcXLOtInxEqyfg1b6+vBlWiqSBZ8pkfk/IOFOm 49lbKkrjY2ibw98GaMdjUYCUUDKOX+eTe+HTfxginIfJ3FWOxB+TPFn1 /UEu4QAgEkWdgpT6NbCge9vWnhSxTCYNxTolVuhWq+sp59zodbAMERVi rIdFyoNpX1zijU1tjm9j8a+jFeN7tjf2fgzJQPpk/qNMgmgfp2GerPUX 5kVkhjoXPgRkLmy2W5PwbgWP4zOTRFuLxz0PsRfoqLUHYYEXPMQ0jimW ESl1LDRnHjdQDTD1qYPBCiVNxufaewZMGhTwP901CH3FLr6Gku7ptYkD 5ukEFQ== 如果我们在给定盐值 4C44934802D3 和 8 次额外迭代的情况下计算 NSEC3 哈希值,则它是完全匹配的,因为每个委托都会生成一个 NSEC3 记录: $ nsec3.py -i 8 -s 4C44934802D3 house.gov 56J5JP60KQ681HL5VTV287P7S16SPMCP house.gov 对于设置了退出位的不安全委托,您将不会获得 NSEC3 记录,该记录提供了该域可用的资源记录类型列表。相反,您会得到一个“最接近的封装证明”,如RFC 5155 的第 7.2.1节所述: 此示例是 .com 区域中的不安全委托,它使用退出标志: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48336 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 9, ADDITIONAL: 6 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags: do; udp: 512 ;; QUESTION SECTION: ;www.yahoo.com. IN A ;; AUTHORITY SECTION: yahoo.com. 172800 IN NS ns1.yahoo.com. yahoo.com. 172800 IN NS ns5.yahoo.com. yahoo.com. 172800 IN NS ns2.yahoo.com. yahoo.com. 172800 IN NS ns3.yahoo.com. yahoo.com. 172800 IN NS ns4.yahoo.com. CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0RFQAOES8CTVNVNH4G6Q85NOQAQ8I9 NS SOA RRSIG DNSKEY NSEC3PARAM CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20120515041703 20120508030703 23339 com. RiL6MRN/fPVBjpyANDKurwSgdwgkdsRdB4ADWK7YTJeY2KNnBpjOX+FT +2a/XZR2ylP+G47L8k+DrJCHuAkr1wOYcOj7goiqErDwu+Cm5HZosAL2 EyRqNOHHgTDXlG6PGgyEe2DO0jWgmkyYX7+o0jpYP0m6QNDaRuf166np nkA= GP1945PGQIOH4O61BM3RUL2EVN04SPIA.com. 86400 IN NSEC3 1 1 0 - GPLVOUV0V27L8DPOOBNLQU1VHFRMMPUT NS DS RRSIG GP1945PGQIOH4O61BM3RUL2EVN04SPIA.com. 86400 IN RRSIG NSEC3 8 2 86400 20120518085726 20120511074726 23339 com. VmtH/BYw8H98FJM7YLxLIG0cfReERp5eNh3+bCu7EfWgSuWXn6OXdd4b rIMloxDXe9v/fdyd7RqwDiNLMPMhp8wRJOhKcqT0MczHFEUzy0SnXM3d SABY5d1AJr8YJNL+ZOgbiT445gn7HBET3OL+G5MfZPti+yhBnUvGlPYx UQ8= 第一个 NSEC3 记录是针对 com 域本身的(鉴于它在 RR 类型列表中具有 SOA、DNSKEY 和 NSEC3PARAM,因此很容易发现它。它是最接近的可证明封闭器。 第二个 NSEC3 记录是“覆盖”yahoo.com。这是为了证明 yahoo.com 的 NSEC3 记录不存在,因为它不是安全委托。 以下是用于比较的计算哈希值: $ nsec3.py com yahoo.com CK0POJMG874LJREF7EFN8430QVIT8BSM com GPIOV963K81D6QM6IOTOUFUAPRDA6K3V yahoo.com 除非您运行的是 TLD 区域或其他具有大量授权的区域,否则没有必要使用选择退出标志。
NSEC3 记录可以通过两种不同的方式之一创建:用于所有委托,或仅用于安全委托。选择退出标志告诉您正在使用哪种方法。该标志的原因是允许主要由授权(即 TLD)组成的非常大的区域不必为每个授权生成 NSEC3 记录及其相应的 RRSIG 记录。这对于像 .com 这样拥有约 100,000,000 个授权的 TLD 很重要;签署每一个代表团都会产生一个非常庞大的区域文件!
There is no difference between secure delegations when the opt-out bit is set or not.
对于未设置退出位的不安全委托,您将获得委托 NS 记录以及该委托的 NSEC3 和 RRSIG。这是 house.gov 的示例,它是 .gov 区域中的不安全委托(未提供 DS 记录),不使用退出位:
如果我们在给定盐值 4C44934802D3 和 8 次额外迭代的情况下计算 NSEC3 哈希值,则它是完全匹配的,因为每个委托都会生成一个 NSEC3 记录:
对于设置了退出位的不安全委托,您将不会获得 NSEC3 记录,该记录提供了该域可用的资源记录类型列表。相反,您会得到一个“最接近的封装证明”,如RFC 5155 的第 7.2.1节所述:
此示例是 .com 区域中的不安全委托,它使用退出标志:
第一个 NSEC3 记录是针对 com 域本身的(鉴于它在 RR 类型列表中具有 SOA、DNSKEY 和 NSEC3PARAM,因此很容易发现它。它是最接近的可证明封闭器。
第二个 NSEC3 记录是“覆盖”yahoo.com。这是为了证明 yahoo.com 的 NSEC3 记录不存在,因为它不是安全委托。
以下是用于比较的计算哈希值:
除非您运行的是 TLD 区域或其他具有大量授权的区域,否则没有必要使用选择退出标志。