SV_RFC2181_5_5_once_RRSet - A Resource Record Set should only be included once in any DNS reply.
Verify that a NUT includes only one RRset to response.
Authoritative Server
SV_RFC2181_5_5_once_RRSet.seq [-tooloption ...]: KOI tool option See also DNSConfig.pm
AP Server1 (TN) |3ffe:501:ffff:101::10 |192.168.1.10 | Net-y --+--------+-------------------------- 3ffe:501:ffff:101::/64 | 192.168.1/24 | | Router (TN) |3ffe:501:ffff:100::1 |192.168.0.1 | | Net-z --+--------+-----------------+-------- 3ffe:501:ffff:100::/64 | | 192.168.0/24 | | DNS Server1 (NUT) DNS Client1 (TN) 3ffe:501:ffff:100::XXXX 3ffe:501:ffff:100::20 192.168.0.10 192.168.0.20
XXXX: EUI64
$TTL 86400 ; TTL of 1 day @ IN SOA NS1.example.com. root.example.com. ( 2005081600 ; serial 3600 ; refresh every 1 hr 900 ; retry every 15 min 604800 ; expire after a week 3600 ; Minimum TTL of a 1 hr ) ; IN NS NS1.example.com. IN NS NS2.example.com. NS1 IN A 192.168.0.10 NS2 IN A 192.168.0.11 ; A IN A 192.168.1.10
This test sequence is following.
DNS Client1 (TN) DNS Server1 (NUT) | | |------------------------------------->| | 1. Send standard query | | QNAME=example.com | | QTYPE=NS | | | |<-------------------------------------| | 2. Standard query response | | QNAME Name=example.com | | OTYPE=NS | | ANSWER Name=example.com | | ANSWER Nsdname=NS1.example.com | | ANSWER Name=example.com | | ANSWER Nsdname=NS2.example.com | | ADDITIONAL Name=NS1.example.com| | ADDITIONAL ADDRESS=192.168.0.10| | ADDITIONAL Name=NS2.example.com| | ADDITIONAL ADDRESS=192.168.0.11| | | v v
1. TN send standard query QNAME=example.com, QTYPE=NS to NUT. 2. NUT reply query response w/ NSDNAME=NS1.example.com, NS2.example.com to TN (Judgment *2)
|
||
IP Header | Source Address | CL1_NETZ |
Destination Address | NUT_NETZ | |
UDP Header | Src Port | 2000 |
Dst Port | 53 | |
DNS Header | ID | 0x1000 |
QR | 0 | |
OPCODE | 0 | |
AA | 0 | |
TC | 0 | |
RD | 1 | |
RA | 0 | |
Z | 0 | |
RCODE | 0 | |
QDCOUNT | 1 | |
ANCOUNT | 0 | |
NSCOUNT | 0 | |
ARCOUNT | 0 | |
DNS Question section | QNAME | example.com |
QTYPE | NS (0x0002) | |
QCLASS | IN (0x0001) |
|
||
IP Header | Source Address | NUT_NETZ |
Destination Address | CL1_NETZ | |
UDP Header | Src Port | 53 |
Dst Port | 2000 | |
DNS Header | ID | 0x1000 |
QR | 1 | |
OPCODE | 0 | |
AA | 1 | |
TC | 0 | |
RD | 1 | |
RA | any | |
Z | 0 | |
RCODE | 0 | |
QDCOUNT | 1 | |
ANCOUNT | 2 | |
NSCOUNT | 0 | |
ARCOUNT | 2 | |
DNS Question section | QNAME | example.com |
QTYPE | NS (0x0002) | |
QCLASS | IN (0x0001) | |
DNS Answer section | NAME | example.com (Pointer 0xC00C) |
TYPE | NS (0x0002) | |
CLASS | IN (0x0001) | |
TTL | 1 day (86400) | |
RDLENGTH | 6 | |
NSDNAME | NS1.example.com (NS1 + Pointer 0xC00C) | |
DNS Answer section | NAME | example.com (Pointer 0xC00C) |
TYPE | NS (0x0002) | |
CLASS | IN (0x0001) | |
TTL | 1 day (86400) | |
RDLENGTH | 6 | |
NSDNAME | NS2.example.com (NS2 + Pointer 0xC00C) | |
DNS Additional section | NAME | NS1.example.com (Pointer 0xC029) |
TYPE |
A (0x0001) | |
CLASS | IN (0x0001) | |
TTL | 1 day (86400) | |
RDLENGTH | 4 | |
ADDRESS | 192.168.0.10 | |
DNS Additional section | NAME | NS1.example.com (Pointer 0xC035) |
TYPE |
A (0x0001) | |
CLASS | IN (0x0001) | |
TTL | 1 day (86400) | |
RDLENGTH | 4 | |
ADDRESS | 192.168.0.11 |
NUT_NETZ | DNS Server1's (NUT) Net-z address |
CL1_NETZ | DNS Client1's (TN) Net-z address |
2. Received standard query response that include only one RRset in Answer section. *Authority section must not include RRset same as Answer section's RRSet. *Additional section is optional.
None
RFC2181 Clarifications to the DNS Specification 5.5. Sending RRSets (reprise)