1 1.1 christos ; config options 2 1.1 christos ; The island of trust is at test. 3 1.1 christos server: 4 1.1 christos target-fetch-policy: "0 0 0 0 0" 5 1.1 christos qname-minimisation: "no" 6 1.1 christos fake-sha1: yes 7 1.1 christos trust-anchor-signaling: no 8 1.1 christos minimal-responses: no 9 1.1 christos iter-scrub-promiscuous: no 10 1.1 christos aggressive-nsec: no 11 1.1 christos local-zone: test. nodefault 12 1.1 christos log-servfail: yes 13 1.1 christos discard-timeout: 0 14 1.1 christos module-config: "respip iterator" 15 1.1 christos serve-expired: yes 16 1.1 christos serve-expired-client-timeout: 500 17 1.1 christos serve-expired-ttl: 3600 18 1.1 christos serve-expired-reply-ttl: 30 19 1.1 christos response-ip: 192.0.2.0/24 redirect 20 1.1 christos response-ip-data: 192.0.2.0/24 "CNAME tgt.far.test." 21 1.1 christos 22 1.1 christos stub-zone: 23 1.1 christos name: "." 24 1.1 christos stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET. 25 1.1 christos CONFIG_END 26 1.1 christos 27 1.1 christos SCENARIO_BEGIN Test expired response respip rewrite 28 1.1 christos 29 1.1 christos ; K.ROOT-SERVERS.NET. 30 1.1 christos RANGE_BEGIN 0 100 31 1.1 christos ADDRESS 193.0.14.129 32 1.1 christos ENTRY_BEGIN 33 1.1 christos MATCH opcode qtype qname 34 1.1 christos ADJUST copy_id 35 1.1 christos REPLY QR NOERROR 36 1.1 christos SECTION QUESTION 37 1.1 christos . IN NS 38 1.1 christos SECTION ANSWER 39 1.1 christos . IN NS K.ROOT-SERVERS.NET. 40 1.1 christos SECTION ADDITIONAL 41 1.1 christos K.ROOT-SERVERS.NET. IN A 193.0.14.129 42 1.1 christos ENTRY_END 43 1.1 christos 44 1.1 christos ENTRY_BEGIN 45 1.1 christos MATCH opcode subdomain 46 1.1 christos ADJUST copy_id copy_query 47 1.1 christos REPLY QR NOERROR 48 1.1 christos SECTION QUESTION 49 1.1 christos test. IN NS 50 1.1 christos SECTION AUTHORITY 51 1.1 christos test. IN NS ns.test. 52 1.1 christos SECTION ADDITIONAL 53 1.1 christos ns.test. IN A 1.2.3.5 54 1.1 christos ENTRY_END 55 1.1 christos RANGE_END 56 1.1 christos 57 1.1 christos ; ns.test 58 1.1 christos RANGE_BEGIN 0 100 59 1.1 christos ADDRESS 1.2.3.5 60 1.1 christos ENTRY_BEGIN 61 1.1 christos MATCH opcode qtype qname 62 1.1 christos ADJUST copy_id 63 1.1 christos REPLY QR AA NOERROR 64 1.1 christos SECTION QUESTION 65 1.1 christos test. IN NS 66 1.1 christos SECTION ANSWER 67 1.1 christos test. IN NS ns.test 68 1.1 christos SECTION ADDITIONAL 69 1.1 christos ns.test. IN A 1.2.3.5 70 1.1 christos ENTRY_END 71 1.1 christos 72 1.1 christos ENTRY_BEGIN 73 1.1 christos MATCH opcode qtype qname 74 1.1 christos ADJUST copy_id 75 1.1 christos REPLY QR AA NOERROR 76 1.1 christos SECTION QUESTION 77 1.1 christos ns.test. IN A 78 1.1 christos SECTION ANSWER 79 1.1 christos ns.test. IN A 1.2.3.5 80 1.1 christos ENTRY_END 81 1.1 christos 82 1.1 christos ENTRY_BEGIN 83 1.1 christos MATCH opcode qtype qname 84 1.1 christos ADJUST copy_id 85 1.1 christos REPLY QR AA NOERROR 86 1.1 christos SECTION QUESTION 87 1.1 christos ns.test. IN AAAA 88 1.1 christos SECTION AUTHORITY 89 1.1 christos test. 3600 IN SOA ns.test. host.test. 20201 3600 1800 604800 3600 90 1.1 christos ENTRY_END 91 1.1 christos 92 1.1 christos ENTRY_BEGIN 93 1.1 christos MATCH opcode subdomain 94 1.1 christos ADJUST copy_id copy_query 95 1.1 christos REPLY QR NOERROR 96 1.1 christos SECTION QUESTION 97 1.1 christos example.test. IN NS 98 1.1 christos SECTION AUTHORITY 99 1.1 christos example.test. IN NS ns.example.test. 100 1.1 christos SECTION ADDITIONAL 101 1.1 christos ns.example.test. IN A 1.2.3.4 102 1.1 christos ENTRY_END 103 1.1 christos 104 1.1 christos ENTRY_BEGIN 105 1.1 christos MATCH opcode subdomain 106 1.1 christos ADJUST copy_id copy_query 107 1.1 christos REPLY QR NOERROR 108 1.1 christos SECTION QUESTION 109 1.1 christos far.test. IN NS 110 1.1 christos SECTION AUTHORITY 111 1.1 christos far.test. IN NS ns.far.test. 112 1.1 christos SECTION ADDITIONAL 113 1.1 christos ns.far.test. IN A 1.2.3.6 114 1.1 christos ENTRY_END 115 1.1 christos RANGE_END 116 1.1 christos 117 1.1 christos ; ns.example.test. 118 1.1 christos RANGE_BEGIN 0 20 119 1.1 christos ADDRESS 1.2.3.4 120 1.1 christos ENTRY_BEGIN 121 1.1 christos MATCH opcode qtype qname 122 1.1 christos ADJUST copy_id 123 1.1 christos REPLY QR NOERROR 124 1.1 christos SECTION QUESTION 125 1.1 christos example.test. IN NS 126 1.1 christos SECTION ANSWER 127 1.1 christos example.test. IN NS ns.example.test. 128 1.1 christos SECTION ADDITIONAL 129 1.1 christos ns.example.test. IN A 1.2.3.4 130 1.1 christos ENTRY_END 131 1.1 christos 132 1.1 christos ENTRY_BEGIN 133 1.1 christos MATCH opcode qtype qname 134 1.1 christos ADJUST copy_id 135 1.1 christos REPLY QR AA NOERROR 136 1.1 christos SECTION QUESTION 137 1.1 christos ns.example.test. IN A 138 1.1 christos SECTION ANSWER 139 1.1 christos ns.example.test. IN A 1.2.3.4 140 1.1 christos ENTRY_END 141 1.1 christos 142 1.1 christos ENTRY_BEGIN 143 1.1 christos MATCH opcode qtype qname 144 1.1 christos ADJUST copy_id 145 1.1 christos REPLY QR AA NOERROR 146 1.1 christos SECTION QUESTION 147 1.1 christos ns.example.test. IN AAAA 148 1.1 christos SECTION AUTHORITY 149 1.1 christos example.test. 3600 IN SOA ns.example.test. host.example.test. 20301 3600 1800 604800 3600 150 1.1 christos ENTRY_END 151 1.1 christos 152 1.1 christos ; response to query of interest 153 1.1 christos ENTRY_BEGIN 154 1.1 christos MATCH opcode qtype qname 155 1.1 christos ADJUST copy_id 156 1.1 christos REPLY QR AA NOERROR 157 1.1 christos SECTION QUESTION 158 1.1 christos www.example.test. IN A 159 1.1 christos SECTION ANSWER 160 1.1 christos www.example.test. 1 IN A 192.0.2.1 161 1.1 christos ENTRY_END 162 1.1 christos RANGE_END 163 1.1 christos 164 1.1 christos ; ns.example.test. 165 1.1 christos RANGE_BEGIN 45 100 166 1.1 christos ADDRESS 1.2.3.4 167 1.1 christos ENTRY_BEGIN 168 1.1 christos MATCH opcode qtype qname 169 1.1 christos ADJUST copy_id 170 1.1 christos REPLY QR AA NOERROR 171 1.1 christos SECTION QUESTION 172 1.1 christos www.example.test. IN A 173 1.1 christos SECTION ANSWER 174 1.1 christos www.example.test. 1 IN A 192.0.2.1 175 1.1 christos ENTRY_END 176 1.1 christos RANGE_END 177 1.1 christos 178 1.1 christos ; ns.far.test. 179 1.1 christos RANGE_BEGIN 0 100 180 1.1 christos ADDRESS 1.2.3.6 181 1.1 christos ENTRY_BEGIN 182 1.1 christos MATCH opcode qtype qname 183 1.1 christos ADJUST copy_id 184 1.1 christos REPLY QR NOERROR 185 1.1 christos SECTION QUESTION 186 1.1 christos far.test. IN NS 187 1.1 christos SECTION ANSWER 188 1.1 christos far.test. IN NS ns.far.test. 189 1.1 christos SECTION ADDITIONAL 190 1.1 christos ns.far.test. IN A 1.2.3.6 191 1.1 christos ENTRY_END 192 1.1 christos 193 1.1 christos ENTRY_BEGIN 194 1.1 christos MATCH opcode qtype qname 195 1.1 christos ADJUST copy_id 196 1.1 christos REPLY QR AA NOERROR 197 1.1 christos SECTION QUESTION 198 1.1 christos ns.far.test. IN A 199 1.1 christos SECTION ANSWER 200 1.1 christos ns.far.test. IN A 1.2.3.6 201 1.1 christos ENTRY_END 202 1.1 christos 203 1.1 christos ENTRY_BEGIN 204 1.1 christos MATCH opcode qtype qname 205 1.1 christos ADJUST copy_id 206 1.1 christos REPLY QR AA NOERROR 207 1.1 christos SECTION QUESTION 208 1.1 christos ns.far.test. IN AAAA 209 1.1 christos SECTION AUTHORITY 210 1.1 christos far.test. 3600 IN SOA ns.far.test. host.far.test. 20301 3600 1800 604800 3600 211 1.1 christos ENTRY_END 212 1.1 christos 213 1.1 christos ; response to query of interest 214 1.1 christos ENTRY_BEGIN 215 1.1 christos MATCH opcode qtype qname 216 1.1 christos ADJUST copy_id 217 1.1 christos REPLY QR AA NOERROR 218 1.1 christos SECTION QUESTION 219 1.1 christos tgt.far.test. IN A 220 1.1 christos SECTION ANSWER 221 1.1 christos tgt.far.test. 1 IN A 10.20.30.40 222 1.1 christos ENTRY_END 223 1.1 christos RANGE_END 224 1.1 christos 225 1.1 christos ; Put items with TTL 1 in cache. 226 1.1 christos STEP 1 QUERY 227 1.1 christos ENTRY_BEGIN 228 1.1 christos REPLY RD DO 229 1.1 christos SECTION QUESTION 230 1.1 christos tgt.far.test. IN A 231 1.1 christos ENTRY_END 232 1.1 christos 233 1.1 christos STEP 2 CHECK_ANSWER 234 1.1 christos ENTRY_BEGIN 235 1.1 christos MATCH all 236 1.1 christos REPLY QR RD RA DO NOERROR 237 1.1 christos SECTION QUESTION 238 1.1 christos tgt.far.test. IN A 239 1.1 christos SECTION ANSWER 240 1.1 christos tgt.far.test. 1 IN A 10.20.30.40 241 1.1 christos ENTRY_END 242 1.1 christos 243 1.1 christos STEP 10 QUERY 244 1.1 christos ENTRY_BEGIN 245 1.1 christos REPLY RD DO 246 1.1 christos SECTION QUESTION 247 1.1 christos www.example.test. IN A 248 1.1 christos ENTRY_END 249 1.1 christos 250 1.1 christos STEP 11 CHECK_ANSWER 251 1.1 christos ENTRY_BEGIN 252 1.1 christos MATCH all 253 1.1 christos REPLY QR RD RA DO NOERROR 254 1.1 christos SECTION QUESTION 255 1.1 christos www.example.test. IN A 256 1.1 christos SECTION ANSWER 257 1.1 christos www.example.test. 3600 IN CNAME tgt.far.test. 258 1.1 christos tgt.far.test. 1 IN A 10.20.30.40 259 1.1 christos ENTRY_END 260 1.1 christos 261 1.1 christos ; Move time to expire the cache entries. 262 1.1 christos STEP 20 TIME_PASSES ELAPSE 2 263 1.1 christos 264 1.1 christos ; the upstream RANGE is removed, so serve-expired has to act. 265 1.1 christos 266 1.1 christos STEP 30 QUERY 267 1.1 christos ENTRY_BEGIN 268 1.1 christos REPLY RD DO 269 1.1 christos SECTION QUESTION 270 1.1 christos www.example.test. IN A 271 1.1 christos ENTRY_END 272 1.1 christos 273 1.1 christos ; for serve expired callback. 274 1.1 christos STEP 31 TIME_PASSES ELAPSE 2 275 1.1 christos 276 1.1 christos STEP 40 CHECK_ANSWER 277 1.1 christos ENTRY_BEGIN 278 1.1 christos MATCH all 279 1.1 christos REPLY QR RD RA DO NOERROR 280 1.1 christos SECTION QUESTION 281 1.1 christos www.example.test. IN A 282 1.1 christos SECTION ANSWER 283 1.1 christos www.example.test. 3600 IN CNAME tgt.far.test. 284 1.1 christos tgt.far.test. 1 IN A 10.20.30.40 285 1.1 christos ENTRY_END 286 1.1 christos 287 1.1 christos ; The pending lookup for the data, that was answered with expired to the client. 288 1.1 christos STEP 50 TRAFFIC 289 1.1 christos 290 1.1 christos SCENARIO_END 291