3 module-config: "validator iterator"
4 qname-minimisation: "no"
7 serve-expired-client-timeout: 1
8 serve-expired-reply-ttl: 123
15 SCENARIO_BEGIN Test serve-expired with client-timeout and reply-ttl
17 ; - query for example.com. IN A
18 ; - check that we get an answer for example.com. IN A with the correct TTL
19 ; - query again right after the TTL expired
20 ; - check that we get the expired cached answer with the configured reply ttl
26 MATCH opcode qtype qname
32 example.com. IN NS ns.example.com.
34 ns.example.com. IN A 1.2.3.4
43 MATCH opcode qtype qname
49 example.com. 10 IN A 5.6.7.8
51 example.com. IN NS ns.example.com.
53 ns.example.com. IN A 1.2.3.4
65 ; Check that we got the correct answer (should be cached)
69 REPLY QR RD RA NOERROR
73 example.com. 10 IN A 5.6.7.8
75 example.com. IN NS ns.example.com.
77 ns.example.com. IN A 1.2.3.4
80 ; Wait for the TTL to expire
81 STEP 11 TIME_PASSES ELAPSE 3600
91 ; Allow the client timer to expire
92 STEP 31 TIME_PASSES ELAPSE 1
94 ; Check that we got a stale answer
98 REPLY QR RD RA NOERROR
102 example.com. 123 IN A 5.6.7.8
104 example.com. 123 IN NS ns.example.com.
106 ns.example.com. 123 IN A 1.2.3.4
109 ; Reply to the outstanding query so that the test doesn't fail with
113 MATCH opcode qtype qname
115 ; authoritative answer
116 REPLY QR AA RD RA NOERROR
120 example.com. 3600 IN A 5.6.7.8
122 example.com. 3600 IN NS ns.example.com.
124 ns.example.com. 3600 IN A 1.2.3.4