1; config options 2server: 3 target-fetch-policy: "0 0 0 0 0" 4 minimal-responses: no 5 6stub-zone: 7 name: "." 8 stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET. 9forward-zone: 10 name: "example.com" 11 forward-addr: 10.0.0.1 12stub-zone: 13 name: "sub.example.com" 14 stub-addr: 10.0.0.2 15CONFIG_END 16 17SCENARIO_BEGIN Test iterative resolve with a stub under a forward zone 18 19; K.ROOT-SERVERS.NET. 20RANGE_BEGIN 0 100 21 ADDRESS 193.0.14.129 22ENTRY_BEGIN 23MATCH opcode qtype qname 24ADJUST copy_id 25REPLY QR NOERROR 26SECTION QUESTION 27. IN NS 28SECTION ANSWER 29. IN NS K.ROOT-SERVERS.NET. 30SECTION ADDITIONAL 31K.ROOT-SERVERS.NET. IN A 193.0.14.129 32ENTRY_END 33 34ENTRY_BEGIN 35MATCH opcode qtype qname 36ADJUST copy_id 37REPLY QR NOERROR 38SECTION QUESTION 39www.example.com. IN A 40SECTION AUTHORITY 41com. IN NS a.gtld-servers.net. 42SECTION ADDITIONAL 43a.gtld-servers.net. IN A 192.5.6.30 44ENTRY_END 45RANGE_END 46 47; a.gtld-servers.net. 48RANGE_BEGIN 0 100 49 ADDRESS 192.5.6.30 50ENTRY_BEGIN 51MATCH opcode qtype qname 52ADJUST copy_id 53REPLY QR NOERROR 54SECTION QUESTION 55com. IN NS 56SECTION ANSWER 57com. IN NS a.gtld-servers.net. 58SECTION ADDITIONAL 59a.gtld-servers.net. IN A 192.5.6.30 60ENTRY_END 61 62ENTRY_BEGIN 63MATCH opcode qtype qname 64ADJUST copy_id 65REPLY QR NOERROR 66SECTION QUESTION 67www.example.com. IN A 68SECTION AUTHORITY 69example.com. IN NS ns.example.com. 70SECTION ADDITIONAL 71ns.example.com. IN A 1.2.3.4 72ENTRY_END 73RANGE_END 74 75; ns.example.com. 76RANGE_BEGIN 0 100 77 ADDRESS 1.2.3.4 78ENTRY_BEGIN 79MATCH opcode qtype qname 80ADJUST copy_id 81REPLY QR NOERROR 82SECTION QUESTION 83example.com. IN NS 84SECTION ANSWER 85example.com. IN NS ns.example.com. 86SECTION ADDITIONAL 87ns.example.com. IN A 1.2.3.4 88ENTRY_END 89 90ENTRY_BEGIN 91MATCH opcode qtype qname 92ADJUST copy_id 93REPLY QR NOERROR 94SECTION QUESTION 95www.example.com. IN A 96SECTION ANSWER 97www.example.com. IN A 10.20.30.40 98SECTION AUTHORITY 99example.com. IN NS ns.example.com. 100SECTION ADDITIONAL 101ns.example.com. IN A 1.2.3.4 102ENTRY_END 103RANGE_END 104 105; forwarder for example.com. 106RANGE_BEGIN 0 100 107 ADDRESS 10.0.0.1 108ENTRY_BEGIN 109MATCH opcode qtype qname 110ADJUST copy_id 111REPLY QR NOERROR 112SECTION QUESTION 113example.com. IN NS 114SECTION ANSWER 115example.com. IN NS ns.example.com. 116SECTION ADDITIONAL 117ns.example.com. IN A 1.2.3.4 118ENTRY_END 119 120ENTRY_BEGIN 121MATCH opcode qtype qname 122ADJUST copy_id 123REPLY QR NOERROR 124SECTION QUESTION 125www.example.com. IN A 126SECTION ANSWER 127www.example.com. IN A 10.0.0.4 128SECTION AUTHORITY 129example.com. IN NS ns.example.com. 130SECTION ADDITIONAL 131ns.example.com. IN A 1.2.3.4 132ENTRY_END 133 134; fail all other queries 135ENTRY_BEGIN 136MATCH opcode 137ADJUST copy_id copy_query 138REPLY QR SERVFAIL 139SECTION QUESTION 140example.com. IN A 141ENTRY_END 142RANGE_END 143 144; stub for sub.example.com. 145RANGE_BEGIN 0 100 146 ADDRESS 10.0.0.2 147ENTRY_BEGIN 148MATCH opcode qtype qname 149ADJUST copy_id 150REPLY QR NOERROR 151SECTION QUESTION 152sub.example.com. IN NS 153SECTION ANSWER 154sub.example.com. IN NS ns.sub.example.com. 155SECTION ADDITIONAL 156ns.sub.example.com. IN A 1.2.3.44 157ENTRY_END 158 159ENTRY_BEGIN 160MATCH opcode qtype qname 161ADJUST copy_id 162REPLY QR NOERROR 163SECTION QUESTION 164www.sub.example.com. IN A 165SECTION ANSWER 166www.sub.example.com. IN A 10.0.0.5 167SECTION AUTHORITY 168sub.example.com. IN NS ns.sub.example.com. 169SECTION ADDITIONAL 170ns.sub.example.com. IN A 1.2.3.44 171ENTRY_END 172RANGE_END 173 174 175; check if forwarder is honored 176STEP 1 QUERY 177ENTRY_BEGIN 178REPLY RD 179SECTION QUESTION 180www.example.com. IN A 181ENTRY_END 182 183STEP 10 CHECK_ANSWER 184ENTRY_BEGIN 185MATCH all 186REPLY QR RD RA NOERROR 187SECTION QUESTION 188www.example.com. IN A 189SECTION ANSWER 190www.example.com. IN A 10.0.0.4 191SECTION AUTHORITY 192example.com. IN NS ns.example.com. 193SECTION ADDITIONAL 194ns.example.com. IN A 1.2.3.4 195ENTRY_END 196 197; try to resolve from stub zone 198STEP 20 QUERY 199ENTRY_BEGIN 200REPLY RD 201SECTION QUESTION 202www.sub.example.com. IN A 203ENTRY_END 204 205STEP 30 CHECK_ANSWER 206ENTRY_BEGIN 207MATCH all 208REPLY QR RD RA NOERROR 209SECTION QUESTION 210www.sub.example.com. IN A 211SECTION ANSWER 212www.sub.example.com. IN A 10.0.0.5 213SECTION AUTHORITY 214sub.example.com. IN NS ns.sub.example.com. 215SECTION ADDITIONAL 216ns.sub.example.com. IN A 1.2.3.44 217ENTRY_END 218 219SCENARIO_END 220