feat: add full Zonemaster stack with Docker and Spanish UI
- Clone all 5 Zonemaster component repos (LDNS, Engine, CLI, Backend, GUI) - Dockerfile.backend: 8-stage multi-stage build LDNS→Engine→CLI→Backend - Dockerfile.gui: Astro static build served via nginx - docker-compose.yml: backend (internal) + frontend (port 5353) - nginx.conf: root redirects to /es/, /api/ proxied to backend - zonemaster-gui/config.ts: defaultLanguage set to 'es' (Spanish) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
# DELEGATION02: Name servers must have distinct IP addresses
|
||||
|
||||
## Test case identifier
|
||||
|
||||
**DELEGATION02:** Name servers must have distinct IP addresses
|
||||
|
||||
## Objective
|
||||
|
||||
If the domain's name servers use several different names, they can all
|
||||
be using the same IP address. This may be due to a configuration error, or
|
||||
a workaround for a certain policy restriction. This test case checks that
|
||||
the name servers used do not reuse the same IP addresses.
|
||||
|
||||
Section 4.1 of [RFC 1034] says at least two name servers must be used
|
||||
for a delegation.
|
||||
|
||||
## Inputs
|
||||
|
||||
"Child Zone" - The domain name to be tested.
|
||||
|
||||
## Ordered description of steps to be taken to execute the test case
|
||||
|
||||
1. Obtain the complete set of name server names in the delegation of
|
||||
the *Child Zone* using [Method2] and the IP addresses for each name
|
||||
using [Method4].
|
||||
|
||||
2. If the same IP address is found for two or more name server names,
|
||||
emit *[DEL_NS_SAME_IP]* for each repeated address, else emit
|
||||
*[DEL_DISTINCT_NS_IP]*.
|
||||
|
||||
3. Obtain the complete set of name server names from the *Child Zone*
|
||||
using [Method3] and the IP addresses for each name using [Method5].
|
||||
|
||||
4. If the same IP address is found for two or more name server names,
|
||||
emit *[CHILD_NS_SAME_IP]* for each repeated address, else emit
|
||||
*[CHILD_DISTINCT_NS_IP]*.
|
||||
|
||||
## Outcome(s)
|
||||
|
||||
The outcome of this Test Case is "fail" if there is at least one message
|
||||
with the severity level *ERROR* or *CRITICAL*.
|
||||
|
||||
The outcome of this Test Case is "warning" if there is at least one message
|
||||
with the severity level *WARNING*, but no message with severity level
|
||||
*ERROR* or *CRITICAL*.
|
||||
|
||||
In other cases the outcome of this Test Case is "pass".
|
||||
|
||||
Message | Default severity level (if message is emitted)
|
||||
:---------------------|:-----------------------------------
|
||||
DEL_NS_SAME_IP | ERROR
|
||||
CHILD_NS_SAME_IP | ERROR
|
||||
DEL_DISTINCT_NS_IP | INFO
|
||||
CHILD_DISTINCT_NS_IP | INFO
|
||||
|
||||
## Special procedural requirements
|
||||
|
||||
None
|
||||
|
||||
## Intercase dependencies
|
||||
|
||||
None
|
||||
|
||||
|
||||
[RFC 1034]: https://datatracker.ietf.org/doc/html/rfc1034
|
||||
|
||||
[Method2]: ../Methods.md#method-2-obtain-glue-name-records-from-parent
|
||||
|
||||
[Method3]: ../Methods.md#method-3-obtain-name-servers-from-child
|
||||
|
||||
[Method4]: ../Methods.md#method-4-obtain-glue-address-records-from-parent
|
||||
|
||||
[Method5]: ../Methods.md#method-5-obtain-the-name-server-address-records-from-child
|
||||
|
||||
[DEL_NS_SAME_IP]: #outcomes
|
||||
|
||||
[CHILD_NS_SAME_IP]: #outcomes
|
||||
|
||||
[DEL_DISTINCT_NS_IP]: #outcomes
|
||||
|
||||
[CHILD_DISTINCT_NS_IP]: #outcomes
|
||||
Reference in New Issue
Block a user