3 module-config: "validator iterator"
4 qname-minimisation: "no"
17 SCENARIO_BEGIN Test serve-expired with SERVFAIL followed by 0 TTL
19 ; - query for 0ttl.example.com. IN A
20 ; - answer from upstream is SERVFAIL; will be cached for NORR_TTL(5)
21 ; - check that the client gets the SERVFAIL; also cached
22 ; - query again right after the TTL expired
23 ; - this time the server answers with a 0 TTL RRset
24 ; - check that we get the correct answer
31 MATCH opcode qtype qname
35 0ttl.example.com. IN A
43 MATCH opcode qtype qname
49 example.com. 10 IN NS ns.example.com.
51 ns.example.com. 10 IN A 1.2.3.4
55 MATCH opcode qtype qname
59 0ttl.example.com. IN A
61 0ttl.example.com. 0 IN A 5.6.7.8
63 example.com. 10 IN NS ns.example.com.
65 ns.example.com. 10 IN A 1.2.3.4
74 0ttl.example.com. IN A
77 ; Check that we get the SERVFAIL (will be cached)
81 REPLY QR RD RA SERVFAIL
83 0ttl.example.com. IN A
91 0ttl.example.com. IN A
94 ; Check that we get the cached SERVFAIL
98 REPLY QR RD RA SERVFAIL
100 0ttl.example.com. IN A
103 ; Wait for the SERVFAIL to expire
104 STEP 31 TIME_PASSES ELAPSE 32
111 0ttl.example.com. IN A
114 ; Check that we got the correct answer
118 REPLY QR RD RA NOERROR
120 0ttl.example.com. IN A
122 0ttl.example.com. 0 IN A 5.6.7.8
124 example.com. 10 IN NS ns.example.com.
126 ns.example.com. 10 IN A 1.2.3.4