在 DNSSEC 的環境中,所有資料都必須使用RRSIG 進行資料驗證,以一般正常回印來說,都會在 Answer 區段附上回應的資料,但是有一個時候卻是另外的,就是負面回應,當查詢的網域不存在時,在傳統回應中,Answer 區段並不會有資料,而是在 Authority 中附加 SOA 的資料,Answer 區段沒有資料怎麼做加密呢? 又如果我是駭客,我一直偽造假的不存在資料,是不是就可以讓受害者達到無法連線,在 DNSSEC 中如何去避免這個問題,聰明的 IETF 就制定了 NSEC 這個標準來避免這些問題。
在我們啟動 DNSSEC 的時候,DNS程式會將我們所有網域名稱做一個排序的動作,排序的原則是
以下列範例來說
mail.twnic.net.tw
abc.twnic.net.tw.
twnic.net.tw
www.twnic.net.tw
ftp.twnic.net.tw |
排序後會變成:
twnic.net.tw
abc.twnic.net.tw.
ftp.twnic.net.tw
mail.twnic.net.tw
www.twnic.net.tw |
若是這時查詢 w3.twnic.net.tw 就會回應上一筆資料與下一筆資料,所以會得到 mail.twnic.net.tw NSEC www.twnic.net.tw這筆資料, 接者這資料就會進行 RRSIG 加密演算,如此驗證w3.twnic.net.tw 的負面回應不存在,如果這時查詢 xyz.twnic.net.tw 則會取得 www.twnic.net.tw NSEC twnic.net.tw 的回應。 |