; config options server: # must have target-fetch-policy to fetch forward-host name. target-fetch-policy: "3 2 1 0 0" qname-minimisation: no minimal-responses: no forward-zone: name: "." forward-addr: 1.2.3.4 forward-host: ns.example.com CONFIG_END SCENARIO_BEGIN Test forward with forward-host lookup for more addresses ; Forward server RANGE_BEGIN 0 15 ADDRESS 1.2.3.4 ENTRY_BEGIN MATCH opcode qtype qname ADJUST copy_id REPLY QR NOERROR SECTION QUESTION ns.example.com. IN A SECTION ANSWER ns.example.com. IN A 1.2.3.4 ns.example.com. IN A 1.2.3.5 ENTRY_END ENTRY_BEGIN MATCH opcode qtype qname ADJUST copy_id REPLY QR NOERROR SECTION QUESTION ns.example.com. IN AAAA SECTION ANSWER SECTION AUTHORITY example.com. IN SOA ns.example.com. host.example.com. 3 3600 300 86400 3600 ENTRY_END ENTRY_BEGIN MATCH opcode qtype qname ADJUST copy_id REPLY QR NOERROR SECTION QUESTION www.example.com. IN A SECTION ANSWER www.example.com. IN A 1.2.3.6 ENTRY_END RANGE_END ; The forward server gives no answers. RANGE_BEGIN 20 55 ADDRESS 1.2.3.4 ENTRY_BEGIN MATCH opcode qtype qname ADJUST copy_id REPLY QR SERVFAIL SECTION QUESTION www2.example.com. IN A SECTION ANSWER ENTRY_END ENTRY_BEGIN MATCH opcode qtype qname ADJUST copy_id REPLY QR SERVFAIL SECTION QUESTION www3.example.com. IN A SECTION ANSWER ENTRY_END RANGE_END ; The other forward server. RANGE_BEGIN 20 55 ADDRESS 1.2.3.5 ENTRY_BEGIN MATCH opcode qtype qname ADJUST copy_id REPLY QR NOERROR SECTION QUESTION www2.example.com. IN A SECTION ANSWER www2.example.com. IN A 1.2.3.7 ENTRY_END ENTRY_BEGIN MATCH opcode qtype qname ADJUST copy_id REPLY QR NOERROR SECTION QUESTION www3.example.com. IN A SECTION ANSWER www3.example.com. IN A 1.2.3.8 ENTRY_END RANGE_END STEP 1 QUERY ENTRY_BEGIN REPLY RD SECTION QUESTION www.example.com. IN A ENTRY_END ; recursion happens here. STEP 10 CHECK_ANSWER ENTRY_BEGIN MATCH all REPLY QR RD RA NOERROR SECTION QUESTION www.example.com. IN A SECTION ANSWER www.example.com. IN A 1.2.3.6 ENTRY_END ; The address 1.2.3.4 is not responding so it has to fail over to the ; address from the name lookup. STEP 20 QUERY ENTRY_BEGIN REPLY RD SECTION QUESTION www2.example.com. IN A ENTRY_END STEP 30 CHECK_ANSWER ENTRY_BEGIN MATCH all REPLY QR RD RA NOERROR SECTION QUESTION www2.example.com. IN A SECTION ANSWER www2.example.com. IN A 1.2.3.7 ENTRY_END STEP 40 QUERY ENTRY_BEGIN REPLY RD SECTION QUESTION www3.example.com. IN A ENTRY_END STEP 50 CHECK_ANSWER ENTRY_BEGIN MATCH all REPLY QR RD RA NOERROR SECTION QUESTION www3.example.com. IN A SECTION ANSWER www3.example.com. IN A 1.2.3.8 ENTRY_END SCENARIO_END