-
-
Notifications
You must be signed in to change notification settings - Fork 358
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Fix for #1114: Fix that cache fill for forward-host names is
performed, so that with nonzero target-fetch-policy it fetches forwarder addresses and uses them from cache. Also updated that delegation point cache fill routines use CDflag for AAAA message lookups, so that its negative lookup stops a recursion since the cache uses the bit for disambiguation for dns64 but the recursion uses CDflag for the AAAA target lookups, so the check correctly stops a useless recursion by its cache lookup.
- Loading branch information
1 parent
6af28be
commit 03b511b
Showing
4 changed files
with
181 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,152 @@ | ||
; 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 |