SV_RFC2782_SRV_rdata - Resource record of SRV type
Verify that a NUT transmits correct message including SRV resource record
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Priority | Weight | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Port | Target ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| Priority : | The priority of this target host. A client MUST attempt to contact the target host with the lowest-numbered priority it can reach. This is a 16 bit unsigned integer in network byte order. |
| Weight : | The weight field specifies a relative weight for entries with the same priority. Larger weights SHOULD be given a proportionately higher probability of being selected. This is a 16 bit unsigned integer in network byte order. |
| Port : | The port on this target host of this service. This is a 16 bit unsigned integer in network byte order. |
| Target : | The domain name of the target host. A Target of "." means that the service is decidedly not available at this domain. |
Authoritative Server
SV_RFC2782_SRV_rdata.seq [-tooloption ...]: KOI tool option See also DNSConfig.pm
AP Server1 (TN) AP Server2 (TN)
|www1.example.com. |www2.example.com.
|3ffe:501:ffff:101::10 |3ffe:501:ffff:101::20
|192.168.1.10 |192.168.1.20
| |
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. NS1 IN A 192.168.0.10 ; _http._tcp IN SRV 10 20 80 www1.example.com. IN SRV 11 21 81 www2.example.com. www1 IN A 192.168.1.10 www2 IN A 192.168.1.20
This test sequence is following.
DNS Client1 (TN) DNS Server1 (NUT)
| |
|------------------------------------->|
| 1. Send standard query |
| QNAME = _http._tcp.example.com.|
| QTYPE = SRV |
| |
|<-------------------------------------|
| 2. Standard query response |
| QNAME = _http._tcp.example.com.|
| QTYPE = SRV |
| ANSWER |
| Priority = 10 |
| Weight = 20 |
| Port = 80 |
| Target = www1.example.com. |
| ANSWER |
| Priority = 11 |
| Weight = 21 |
| Port = 81 |
| Target = www2.example.com. |
| Authority Name |
| = example.com. |
| AUTHORITY Name Server |
| = NS1.example.com. |
| ADDITIONAL Name |
| = www1.example.com. |
| ADDITIONAL Address |
| = 192.168.1.10 |
| ADDITIONAL Name |
| = www2.example.com. |
| ADDITIONAL Address |
| = 192.168.1.20 |
| ADDITIONAL Name |
| = NS1.example.com. |
| ADDITIONAL Address |
| = 192.168.0.10 |
| |
v v
1. TN send standard query QNAME=_http._tcp.example.com., QTYPE=SRV to NUT.
2. NUT reply query response w/ SRV=10 20 80 www1.example.com.
and SRV=11 21 81 www2.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 | _http._tcp.example.com. |
| QTYPE | SRV (0x0021) | |
| 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 | ANY | |
| TC | 0 | |
| RD | 1 | |
| RA | 1 | |
| Z | 0 | |
| RCODE | 0 | |
| QDCOUNT | 1 | |
| ANCOUNT | 2 | |
| NSCOUNT | 1 | |
| ARCOUNT | 3 | |
| DNS Question section | QNAME | _http._tcp.example.com. |
| QTYPE | SRV (0x0021) | |
| QCLASS | IN (0x0001) | |
| DNS Answer section | NAME | _http._tcp.example.com. (Pointer 0xC00C) |
| TYPE | SRV (0x0021) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 24 | |
| Priority | 10 | |
| Weight | 20 | |
| Port | 80 | |
| Target | www1.example.com. | |
| DNS Answer section | NAME | _http._tcp.example.com. (Pointer 0xC00C) |
| TYPE | SRV (0x0021) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 24 | |
| Priority | 11 | |
| Weight | 21 | |
| Port | 81 | |
| Target | www2.example.com. | |
| DNS Authority section | NAME | example.com. (Pointer 0xC063) |
| TYPE | NS (0x0002) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 6 | |
| NSDNAME | NS1.example.com. (NS1 + Pointer 0xC063) | |
| DNS Additional section | NAME | www1.example.com. (Pointer 0xC03A) |
| TYPE | A (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 4 | |
| ADDRESS | 192.168.1.10 | |
| DNS Additional section | NAME | www2.example.com. (Pointer 0xC05E) |
| TYPE | A (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 4 | |
| ADDRESS | 192.168.1.20 | |
| DNS Additional section | NAME | NS1.example.com. (Pointer 0xC07C) |
| TYPE |
A (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 4 | |
| ADDRESS | 192.168.0.10 | |
| NUT_NETZ | DNS Server1's (NUT) Net-z address |
| CL1_NETZ | DNS Client1's (TN) Net-z address |
2. Received standard query response including SRV type record.
None
RFC1034 DOMAIN NAMES - CONCEPTS AND FACILITIES
3.6 Resource Records
RFC1035 DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION
3.2.1 Format
RFC2782 DNS SRV RR