SV_RFC1034_3_6_MX_rdata - Resource record of MX
Verify that a NUT transmits correct message including MX resource record.
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ | PREFERENCE | +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ / EXCHANGE / / / +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| PREFERENCE : |
A 16 bit integer which specifies the preference given to this RR among others at the same owner. Lower values are preferred. |
| EXCHANGE : | A <domain-name> which specifies a host willing to act as a mail exchange for the owner name. |
Authoritative Server
SV_RFC1034_3_6_MX_rdata.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 MX 10 MAIL1 ; NS1 IN A 192.168.0.10 MAIL1 IN A 192.168.1.11
$TTL 86400 ; TTL of 1 day @ IN SOA NS1.example.com. root.example.com. ( 2005081601 ; 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 MX 10 MAIL1 IN MX 20 MAIL2 ; NS1 IN A 192.168.0.10 MAIL1 IN A 192.168.1.11 MAIL2 IN A 192.168.1.12
This test sequence is following.
DNS Client1 (TN) DNS Server1 (NUT)
| |
|------------------------------------->|
| 1. Send standard query |
| QNAME=example.com |
| QTYPE=MX |
| |
|<-------------------------------------|
| 2. Standard query response |
| MX=10 MAIL1.example.com |
| |
|(Change zone file on DNS Server1(NUT) |
| from A to B.) |
| |
|------------------------------------->|
| 3. Send standard query to NUT |
| QNAME=example.com |
| QTYPE=MX |
| |
|<-------------------------------------|
| 4. Standard query response |
| MX=10 MAIL1.example.com |
| MX=20 MAIL2.example.com |
| |
v v
1. TN send standard query QNAME=example.com, QTYPE=MX to NUT.
2. NUT reply query response w/ MX=10 MAIL1.example.com to TN (Judgment *2)
3. TN send standard query QNAME=mail.example.com, QTYPE=MX to NUT.
4. NUT reply query response w/ MX=10 MAIL1.example.com and MX=20 MAIL2.example.com to TN (Judgment *4)
|
|
||
| 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 | MX (0x000F) | |
| 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 | 1 | |
| NSCOUNT | 1 | |
| ARCOUNT | 2 | |
| DNS Question section | QNAME | example.com |
| QTYPE | MX (0x000F) | |
| QCLASS | IN (0x0001) | |
| DNS Answer section | NAME | example.com (Pointer 0xC00C) |
| TYPE | MX (0x000F) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 10 | |
| PREFERENCE | 10 | |
| EXCHANGE | MAIL1.example.com (MAIL1 + Pointer 0xC00C) | |
| DNS Authority 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 Additional section | NAME | MAIL1.example.com (Pointer 0xC02B) |
| TYPE |
A (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 4 | |
| ADDRESS | 192.168.1.11 | |
| DNS Additional section | NAME | NS1.example.com (Pointer 0xC03F) |
| TYPE |
A (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 4 | |
| ADDRESS | 192.168.0.10 | |
|
|
||
| IP Header | Source Address | CL1_NETZ |
| Destination Address | NUT_NETZ | |
| UDP Header | Src Port | 2001 |
| Dst Port | 53 | |
| DNS Header | ID | 0x1001 |
| 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 | MX (0x000F) | |
| QCLASS | IN (0x0001) | |
|
|
||
| IP Header | Source Address | NUT_NETZ |
| Destination Address | CL1_NETZ | |
| UDP Header | Src Port | 53 |
| Dst Port | 2001 | |
| DNS Header | ID | 0x1001 |
| QR | 1 | |
| OPCODE | 0 | |
| AA | ANY | |
| TC | 0 | |
| RD | 1 | |
| RA | ANY | |
| Z | 0 | |
| RCODE | 0 | |
| QDCOUNT | 1 | |
| ANCOUNT | 2 | |
| NSCOUNT | 1 | |
| ARCOUNT | 3 | |
| DNS Question section | QNAME | example.com |
| QTYPE | MX (0x000F) | |
| QCLASS | IN (0x0001) | |
| DNS Answer section 1 | NAME | example.com (Pointer 0xC00C) |
| TYPE | MX (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 10 | |
| PREFERENCE | 10 | |
| EXCHANGE | MAIL1.example.com (MAIL1 + Pointer 0xC00C) | |
| DNS Answer section 2 | NAME | example.com (Pointer 0xC00C) |
| TYPE | MX (0x000F) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 10 | |
| PREFERENCE | 20 | |
| EXCHANGE | MAIL2.example.com (MAIL1 + 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 0xC00C) | |
| Additional section 1 | NAME | MAIL1.example.com (Pointer 0xC02B) |
| TYPE |
A (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 4 | |
| ADDRESS | 192.168.1.11 | |
| Additional section 2 | NAME | MAIL2.example.com (Pointer 0xC041) |
| TYPE |
A (0x0001) | |
| CLASS | IN (0x0001) | |
| TTL | 1 day (86400) | |
| RDLENGTH | 4 | |
| ADDRESS | 192.168.1.12 | |
| DNS Additional section | NAME | NS1.example.com (Pointer 0xC055) |
| 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 MX type record.
4. Received standard query response including multiple MX type records.
None
RFC1034 DOMAIN NAMES - CONCEPTS AND FACILITIES
3.6 Resource Records
RFC1035 DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION
3.2.1 Format
3.2.2 TYPE values
3.3.9 MX RDATA format