SV_RFC1034_4_3_2_23A6_1 - The data at the node is not CNAME or CNAME and QTYPE match CNAME.
Verify that whether NUT's behavior. Recursion service is available but not requested
via the RD bit in the query. Search the available zones for the zone which is the nearest
ancestor to QNAME. Such a zone is found and the whole of QNAME is matched, the data at
the node is not a CNAME, or the node is a CNAME and QTYPE match CNAME case.
Server
SV_RFC1034_4_3_2_23A6_1.seq [-tooloption ...]: KOI tool option
See also DNSConfig.pm
This test sequence is following.
DNS Client1 (TN) DNS Server1 (NUT)
| |
|----------------------------->|
| 1. Send standard query |
| RD = 0 |
| QNAME = A.example.com |
| QTYPE = ANY (0x00FF) |
| |
|<-----------------------------|
| 2. Standard query response |
| RD = 0 |
| RA = 1 |
| AA = 1 |
| QNAME = A.example.com |
| QTYPE = A |
| ANSWER Name |
| = A.example.com |
| ANSWER Type |
| = A (0x0001) |
| ANSWER Address |
| = 192.168.1.10 |
| ANSWER Name |
| = A.example.com |
| ANSWER Type |
| = AAAA (0x001C) |
| ANSWER Address |
| = 3ffe:501:ffff:101::10 |
| AUTHORITY Name |
| = example.com |
| AUTHORITY Type |
| = NS (0x0002) |
| AUTHORITY Name Server |
| = NS1.example.com |
| ADDITIONAL Name |
| = NS1.example.com |
| ADDITIONAL Type |
| = A (0x0001) |
| ADDITIONAL Address |
| = 192.168.0.10 |
| |
|----------------------------->|
| 3. Send standard query |
| RD = 0 |
| QNAME = C.example.com |
| QTYPE = CNAME (0x0005) |
| |
|<-----------------------------|
| 4. Standard query response |
| RD = 0 |
| RA = 1 |
| AA = 1 |
| QNAME = C.example.com |
| QTYPE = A |
| ANSWER Name |
| = C.example.com |
| ANSWER Type |
| = CNAME (0x0005) |
| ANSWER Primary Name |
| = A.example.com |
| AUTHORITY Name |
| = example.com |
| AUTHORITY Type |
| = NS (0x0002) |
| AUTHORITY Name Server |
| = NS1.example.com |
| ADDITIONAL Name |
| = NS1.example.com |
| ADDITIONAL Type |
| = A (0x0001) |
| ADDITIONAL Address |
| = 192.168.0.10 |
| |
v v
1. DNS Client1 (TN) send standard query QNAME=A.example.com, QTYPE=ANY with RD=0 to DNS Server1 (NUT).
2. DNS Server1 (NUT) transmits standard query response all RRs that match QTYPE to DNS Client1 (TN). (Judgment *2)
3. DNS Client1 (TN) send standard query QNAME=C.example.com, QTYPE=CNAME with RD=0 to DNS Server1 (NUT).
4. DNS Server1 (NUT) transmits standard query response all RRs that match QTYPE to DNS Client1 (TN). (Judgment *4)
- Packet Description
- 1st packet.
|
Standard query from DNS Client1 (TN) to Server1 (NUT)
|
| IP Header |
Source Address |
CL1_NETZ |
| Destination Address |
NUT_NETZ |
| UDP Header |
Src Port |
1000 |
| Dst Port |
53 |
| DNS Header |
ID |
0x1000 |
| QR |
0 |
| OPCODE |
0 |
| AA |
0 |
| TC |
0 |
| RD |
0 |
| RA |
0 |
| Z |
0 |
| RCODE |
0 |
| QDCOUNT |
1 |
| ANCOUNT |
0 |
| NSCOUNT |
0 |
| ARCOUNT |
0 |
| DNS Question section |
QNAME |
A.example.com |
| QTYPE |
ANY (0x00FF) |
| QCLASS |
IN (0x0001) |
- 2nd packet.
|
Standard query response from DNS Server1 (NUT) to Client1 (TN)
|
| IP Header |
Source Address |
NUT_NETZ |
| Destination Address |
CL1_NETZ |
| UDP Header |
Src Port |
53 |
| Dst Port |
1000 |
| DNS Header |
ID |
0x1000 |
| QR |
1 |
| OPCODE |
0 |
| AA |
1 |
| TC |
0 |
| RD |
0 |
| RA |
1 |
| Z |
ANY |
| RCODE |
0 |
| QDCOUNT |
1 |
| ANCOUNT |
2 |
| NSCOUNT |
1 |
| ARCOUNT |
1 |
| DNS Question section |
QNAME |
A.example.com |
| QTYPE |
ANY (0x00FF) |
| QCLASS |
IN (0x0001) |
| DNS Answer section |
NAME |
A.example.com (Pointer 0xC00C)
|
| TYPE |
A (0x0001) |
| CLASS |
IN (0x0001) |
| TTL |
1 day (86400) |
| RDLENGTH |
4 |
| Address |
192.168.1.10 |
| DNS Answer section |
NAME |
A.example.com (Pointer 0xC00C)
|
| TYPE |
AAAA (0x001C) |
| CLASS |
IN (0x0001) |
| TTL |
1 day (86400) |
| RDLENGTH |
16 |
| Address |
3ffe:501:ffff:101::10 |
| DNS Authority section |
NAME |
example.com (Pointer 0xC00E) |
| TYPE |
NS (0x0002) |
| CLASS |
IN (0x0001) |
| TTL |
1 day (86400) |
| RDLENGTH |
6 |
| NSDNAME |
NS1.example.com (NS1 + Pointer 0xC00E) |
| DNS Additional section |
NAME |
NS1.example.com (Pointer 0xC058) |
TYPE
|
A (0x0001) |
| CLASS |
IN (0x0001) |
| TTL |
1 day (86400) |
| RDLENGTH |
4 |
| ADDRESS |
192.168.0.10 |
- 3rd packet.
|
Standard query from DNS Client1 (TN) to Server1 (NUT)
|
| IP Header |
Source Address |
CL1_NETZ |
| Destination Address |
NUT_NETZ |
| UDP Header |
Src Port |
1000 |
| Dst Port |
53 |
| DNS Header |
ID |
0x2000 |
| QR |
0 |
| OPCODE |
0 |
| AA |
0 |
| TC |
0 |
| RD |
0 |
| RA |
0 |
| Z |
0 |
| RCODE |
0 |
| QDCOUNT |
1 |
| ANCOUNT |
0 |
| NSCOUNT |
0 |
| ARCOUNT |
0 |
| DNS Question section |
QNAME |
C.example.com |
| QTYPE |
CNAME (0x0005) |
| QCLASS |
IN (0x0001) |
- 4th packet.
|
Standard query response from DNS Server1 (NUT) to Client1 (TN)
|
| IP Header |
Source Address |
NUT_NETZ |
| Destination Address |
CL1_NETZ |
| UDP Header |
Src Port |
53 |
| Dst Port |
1000 |
| DNS Header |
ID |
0x2000 |
| QR |
1 |
| OPCODE |
0 |
| AA |
1 |
| TC |
0 |
| RD |
0 |
| RA |
1 |
| Z |
ANY |
| RCODE |
0 |
| QDCOUNT |
1 |
| ANCOUNT |
1 |
| NSCOUNT |
1 |
| ARCOUNT |
1 |
| DNS Question section |
QNAME |
C.example.com |
| QTYPE |
CNAME (0x0005) |
| QCLASS |
IN (0x0001) |
| DNS Answer section |
NAME |
C.example.com (Pointer 0xC00C)
|
| TYPE |
CNAME (0x0005) |
| CLASS |
IN (0x0001) |
| TTL |
1 day (86400) |
| RDLENGTH |
4 |
| CNAME |
A.example.com (Pointer 0xC00C) |
| DNS Authority section |
NAME |
example.com (Pointer 0xC00E) |
| TYPE |
NS (0x0002) |
| CLASS |
IN (0x0001) |
| TTL |
1 day (86400) |
| RDLENGTH |
6 |
| NSDNAME |
NS1.example.com (NS1 + Pointer 0xC00E) |
| DNS Additional section |
NAME |
NS1.example.com (Pointer 0xC041) |
TYPE
|
A (0x0001) |
| CLASS |
IN (0x0001) |
| TTL |
1 day (86400) |
| RDLENGTH |
4 |
| ADDRESS |
192.168.0.10 |
- Exp.
| NUT_NETZ |
DNS Server1's (NUT) Net-z address |
| CL1_NETZ |
DNS Client1's (TN) Net-z address |
2. Received standard query response which include all RRs in Answer section.
4. Received standard query response which include CNAME in Answer section.
None
RFC1034 DOMAIN NAMES - CONCEPTS AND FACILITIES
4. NAME SERVERS
4.3.2. Algorithm