Skip to content

Test scenarios for MethodsV2#1254

Merged
matsduf merged 25 commits into
zonemaster:developfrom
matsduf:test-zones-methodv2
Jul 23, 2024
Merged

Test scenarios for MethodsV2#1254
matsduf merged 25 commits into
zonemaster:developfrom
matsduf:test-zones-methodv2

Conversation

@matsduf

@matsduf matsduf commented Apr 17, 2024

Copy link
Copy Markdown
Contributor

Purpose

This PR provides test scenarios for MethodsV2. They have been implemented in zonemaster/zonemaster-engine#1351.

How to test this PR

  • Review
  • Load the test zone environment and check by using dig

@matsduf matsduf added this to the v2024.1 milestone Apr 17, 2024
@matsduf matsduf requested a review from tgreenx April 17, 2024 08:26
@matsduf matsduf force-pushed the test-zones-methodv2 branch from b87c12a to 561aba3 Compare April 22, 2024 10:24
Comment thread test-zone-data/MethodsV2/child.parent.good-undel-2.methodsv2.xa_UNDEL Outdated
@tgreenx tgreenx modified the milestones: v2024.1, v2024.2 Jun 11, 2024
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread test-zone-data/MethodsV2/README.md
Comment thread test-zone-data/MethodsV2/README.md
Comment thread test-zone-data/MethodsV2/README.md Outdated
Comment thread test-zone-data/MethodsV2/README.md Outdated
Comment thread test-zone-data/MethodsV2/README.md Outdated
Comment thread test-zone-data/MethodsV2/README.md Outdated
Comment thread test-zone-data/MethodsV2/README.md Outdated
Comment thread test-zone-data/MethodsV2/README.md Outdated
Co-authored-by: tgreenx <96772376+tgreenx@users.noreply.github.com>
@matsduf matsduf requested a review from tgreenx July 11, 2024 16:52
matsduf added 2 commits July 11, 2024 21:26
* Updates to match updated specification where NXDOMAIN and NODAT
  for the tested domain is ignored.
* Introduce a distinction between "empty" and "undefined" for
  some sets without members, e.g. set of parent NS IP.
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated



$ORIGIN parent ; Must be relative

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are relative domain names allowed in $ORIGIN directives? I doubt it, and I know nsd would reject such a directive.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They are permitted. There is nothing in RFC 1035 forbidding the domain name after $ORIGIN. There is nothing special about the "" after $ORIGIN.

And CoreDNS has no problem with that. I pretty sure that also Bind supports it.


## Root hint for scenarios

For all scenarios the root hint should be

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a minor cosmetic detail, but it feels more correct to name the root servers something like ns1.root-servers.xa instead of a TLD.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is nothing that could be changed here since that is part of the entire framework.

It does not disturb me, but having names with at least two labels before the final dot would work too, and it is more like you would expect. I can change it later in a PR that must be coordinated with a PR to Zonemaster-Engine too, and with a quick review and merge.

Comment thread test-zone-data/MethodsV2/README.md Outdated
Comment thread test-zone-data/MethodsV2/README.md
Co-authored-by: Marc van der Wal <103426270+marc-vanderwal@users.noreply.github.com>

@matsduf matsduf left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@marc-vanderwal, thank you for a thorough review into the details.

* Zone: child.parent.chld-found-inconsist-6.methodsv2.xa
* Parent `ns1` has normal delegation of child to the two child NS.
* Parent `ns2` lacks delegation of child (NXDOMAIN).
* Child shares `ns1.parent.chld-found-inconsist-6.methodsv2.xa` with parent.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, on parent ns1 (ns1.parent.chld-found-inconsist-6.methodsv2.xa).

* Parent `ns1` has normal delegation of child to the two child NS.
* Parent `ns2` lacks delegation of child (NXDOMAIN).
* Child shares `ns1.parent.chld-found-inconsist-6.methodsv2.xa` with parent.
* Child also uses child `ns1` and `ns2`.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Child is also hosted on ns1 and ns2 (the default ns1 and ns2 for a child).

other there is a NODATA response.

* Zone: child.parent.chld-found-inconsist-10.methodsv2.xa
* Parent `ns1` has normal delegation of child to two child NS, `ns1` and `ns2`.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here "child" refer to the relation not the name. Both "child" and "parent" are used as relations here.

* Normal response on grandparent `ns1`.
* Grandparent `ns2` responds with other owner name on NS query for
`zone-err-grandparent-3.methodsv2.xa`:
* Owner name `oncle.zone-err-grandparent-3.methodsv2.xa` instead.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that "uncle" is the expected, but it is just a name. The name in the configuration is also "oncle". It should match.




$ORIGIN parent ; Must be relative

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They are permitted. There is nothing in RFC 1035 forbidding the domain name after $ORIGIN. There is nothing special about the "" after $ORIGIN.

And CoreDNS has no problem with that. I pretty sure that also Bind supports it.


## Root hint for scenarios

For all scenarios the root hint should be

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is nothing that could be changed here since that is part of the entire framework.

It does not disturb me, but having names with at least two labels before the final dot would work too, and it is more like you would expect. I can change it later in a PR that must be coordinated with a PR to Zonemaster-Engine too, and with a quick review and merge.

Comment thread test-zone-data/MethodsV2/README.md
@matsduf matsduf requested a review from marc-vanderwal July 16, 2024 19:23
Comment thread docs/public/specifications/test-zones/MethodsV2/README.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/README.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/README.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/README.md Outdated
Test zone specifications for the following methods are available (work in
progress):

[Get parent NS IP addresses](get-parent-ns-ip-addresses.md)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This link should be created, or removed.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updates.

Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
Comment thread docs/public/specifications/test-zones/MethodsV2/methodsv2.md Outdated
* [Undelegated data for scenarios](#undelegated-data-for-scenarios)
* [Data type in method output](#data-type-in-method-output)
* [Scenarios](#scenarios)
* [GOOD-1](#good-1)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This table should be updated with all scenarios.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll create.

Comment thread test-zone-data/MethodsV2/README.md Outdated
Comment thread test-zone-data/README.md Outdated
matsduf and others added 3 commits July 18, 2024 15:59
Co-authored-by: tgreenx <96772376+tgreenx@users.noreply.github.com>
@matsduf matsduf requested a review from tgreenx July 18, 2024 14:39
@matsduf matsduf merged commit 44f7e3e into zonemaster:develop Jul 23, 2024
@matsduf matsduf deleted the test-zones-methodv2 branch July 23, 2024 14:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants