Various updates to match authoritative behavior of BIND9#22
Open
pinheadmz wants to merge 8 commits intochjj:masterfrom
Open
Various updates to match authoritative behavior of BIND9#22pinheadmz wants to merge 8 commits intochjj:masterfrom
pinheadmz wants to merge 8 commits intochjj:masterfrom
Conversation
Open
A |
Collaborator
Author
|
Thanks, I was putting "glue" in quotes for this reason, JJ used the term in the code to refer to data that belongs to the target of a CNAME (i.e. it is returned like the A records that get glued to an NS record) |
61775b3 to
cbc448c
Compare
|
LGTM EDIT: NVM, I found the Handshake fork. |
angrymouse
approved these changes
Jan 7, 2022
This makes sense as it applies to reflection / amplification attacks. If we are serving a root zone, we can always offer a SOA
|
This is nice! What's the status? |
Collaborator
Author
|
Status: needs review. I've learned a lot more about DNS since I wrote this PR and probably need to make sure it all still makes sense. This branch is included in handout. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #5
Closes #21
Closes #16
Closes #15
A few edge cases aren't complete, indicated by
skipin some of the tests.Test cases were designed to match results from adding the same record set to
namedand querying.Changes summary:
zone: only serve wildcard if there was otherwise no match
if
*.domain.exists in the zone along withsub.domain., do not return the wildcard record as an answer fordomain.orsub.domainorsub.otherdomain.zone: return CNAME records for any type requested
We should return this CNAME record whenever
sub.domainis requested, no matter what the requested type is.zone: glue requested type, default A / AAAA
Assuming "glue" exists:
When
sub.domain.is queried, the corresponding type should be returned as "glue" (it goes in the answer section though, not additional). We return A/AAAA records by default. In other words, the CNAME glue is treated like its own request, including adding SOA to authority section if no answer is available. Sosub.domain. TXTwould return the CNAME record along with the TXT record.zone: wildcard matches more than one label
This record should be matched against
sub.domain. TXTbut alsofoo.bar.sub.domain. TXT.zone: filter out wildcards that do not match
This record should NOT be returned for a query for
another.domain.because it does not match.zone: add SOA if authoritative but no answers. Applies to CNAME glue
Always sets the
aaflag if we have a corresponding SOA in the zone, even if we don't include an actual SOA record (which we usually don't if an answer is present). This will also apply to "glue" from CNAME matches:(results from
named)Record matching requested type present for target of CNAME:
Record matching requested type NOT present for target of CNAME:
zone: no-authority no-records answer should be as quiet as possible
Match behavior from
namedif the request is totally wrong for our zone (unless we are root)zone: add zsk property and enable ad-hoc signing
Self-explanatory. Enables loading a ZSK into the AuthServer to sign wildcard records upon request.