1; This is a comment.
2; config options go here.
3server:
4	minimal-responses: no
5forward-zone: name: "." forward-addr: 216.0.0.1
6CONFIG_END
7
8SCENARIO_BEGIN Query receives answer from the cache
9
10STEP 1 QUERY
11ENTRY_BEGIN
12	REPLY RD
13	SECTION QUESTION
14	www.example.com. IN A
15ENTRY_END
16; the query is sent to the forwarder - no cache yet.
17STEP 2 CHECK_OUT_QUERY
18ENTRY_BEGIN
19	MATCH qname qtype opcode
20	SECTION QUESTION
21	www.example.com. IN A
22ENTRY_END
23STEP 3 REPLY
24ENTRY_BEGIN
25	MATCH opcode qtype qname
26	ADJUST copy_id
27	; authoritative answer
28	REPLY QR AA RD RA NOERROR
29	SECTION QUESTION
30	www.example.com. IN A
31	SECTION ANSWER
32	www.example.com. IN A 10.20.30.40
33	SECTION AUTHORITY
34	www.example.com. IN NS ns.example.com.
35	SECTION ADDITIONAL
36	ns.example.com. IN A 10.20.30.50
37ENTRY_END
38STEP 4 CHECK_ANSWER
39ENTRY_BEGIN
40	MATCH all 
41	REPLY QR RD RA
42	SECTION QUESTION
43	www.example.com. IN A
44	SECTION ANSWER
45	www.example.com. IN A 10.20.30.40
46	SECTION AUTHORITY
47	www.example.com. IN NS ns.example.com.
48	SECTION ADDITIONAL
49	ns.example.com. IN A 10.20.30.50
50ENTRY_END
51
52; another query, same, so it must be answered from the cache
53STEP 5 QUERY
54ENTRY_BEGIN
55	REPLY RD
56	SECTION QUESTION
57	www.example.com. IN A
58ENTRY_END
59; immediate answer without an OUT_QUERY happening (checked on exit)
60; also, the answer does not have AA set
61STEP 6 CHECK_ANSWER
62ENTRY_BEGIN
63	MATCH all
64	REPLY QR RD RA
65	SECTION QUESTION
66	www.example.com. IN A
67	SECTION ANSWER
68	www.example.com. IN A 10.20.30.40
69	SECTION AUTHORITY
70	www.example.com. IN NS ns.example.com.
71	SECTION ADDITIONAL
72	ns.example.com. IN A 10.20.30.50
73ENTRY_END
74
75SCENARIO_END
76