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 20 1.1 christos rpz: 21 1.1 christos name: "rpz.example.com." 22 1.1 christos rpz-log: yes 23 1.1 christos rpz-log-name: "rpz.example.com" 24 1.1 christos zonefile: 25 1.1 christos TEMPFILE_NAME rpz.example.com 26 1.1 christos TEMPFILE_CONTENTS rpz.example.com 27 1.1 christos $ORIGIN example.com. 28 1.1 christos rpz 3600 IN SOA ns1.rpz.example.com. hostmaster.rpz.example.com. ( 29 1.1 christos 1379078166 28800 7200 604800 7200 ) 30 1.1 christos 3600 IN NS ns1.rpz.example.com. 31 1.1 christos 3600 IN NS ns2.rpz.example.com. 32 1.1 christos $ORIGIN rpz.example.com. 33 1.1 christos 24.0.2.0.192.rpz-ip CNAME . 34 1.1 christos TEMPFILE_END 35 1.1 christos 36 1.1 christos stub-zone: 37 1.1 christos name: "." 38 1.1 christos stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET. 39 1.1 christos CONFIG_END 40 1.1 christos 41 1.1 christos SCENARIO_BEGIN Test expired response RPZ rewrite 42 1.1 christos 43 1.1 christos ; K.ROOT-SERVERS.NET. 44 1.1 christos RANGE_BEGIN 0 100 45 1.1 christos ADDRESS 193.0.14.129 46 1.1 christos ENTRY_BEGIN 47 1.1 christos MATCH opcode qtype qname 48 1.1 christos ADJUST copy_id 49 1.1 christos REPLY QR NOERROR 50 1.1 christos SECTION QUESTION 51 1.1 christos . IN NS 52 1.1 christos SECTION ANSWER 53 1.1 christos . IN NS K.ROOT-SERVERS.NET. 54 1.1 christos SECTION ADDITIONAL 55 1.1 christos K.ROOT-SERVERS.NET. IN A 193.0.14.129 56 1.1 christos ENTRY_END 57 1.1 christos 58 1.1 christos ENTRY_BEGIN 59 1.1 christos MATCH opcode subdomain 60 1.1 christos ADJUST copy_id copy_query 61 1.1 christos REPLY QR NOERROR 62 1.1 christos SECTION QUESTION 63 1.1 christos test. IN NS 64 1.1 christos SECTION AUTHORITY 65 1.1 christos test. IN NS ns.test. 66 1.1 christos SECTION ADDITIONAL 67 1.1 christos ns.test. IN A 1.2.3.5 68 1.1 christos ENTRY_END 69 1.1 christos RANGE_END 70 1.1 christos 71 1.1 christos ; ns.test 72 1.1 christos RANGE_BEGIN 0 100 73 1.1 christos ADDRESS 1.2.3.5 74 1.1 christos ENTRY_BEGIN 75 1.1 christos MATCH opcode qtype qname 76 1.1 christos ADJUST copy_id 77 1.1 christos REPLY QR AA NOERROR 78 1.1 christos SECTION QUESTION 79 1.1 christos test. IN NS 80 1.1 christos SECTION ANSWER 81 1.1 christos test. IN NS ns.test 82 1.1 christos SECTION ADDITIONAL 83 1.1 christos ns.test. IN A 1.2.3.5 84 1.1 christos ENTRY_END 85 1.1 christos 86 1.1 christos ENTRY_BEGIN 87 1.1 christos MATCH opcode qtype qname 88 1.1 christos ADJUST copy_id 89 1.1 christos REPLY QR AA NOERROR 90 1.1 christos SECTION QUESTION 91 1.1 christos ns.test. IN A 92 1.1 christos SECTION ANSWER 93 1.1 christos ns.test. IN A 1.2.3.5 94 1.1 christos ENTRY_END 95 1.1 christos 96 1.1 christos ENTRY_BEGIN 97 1.1 christos MATCH opcode qtype qname 98 1.1 christos ADJUST copy_id 99 1.1 christos REPLY QR AA NOERROR 100 1.1 christos SECTION QUESTION 101 1.1 christos ns.test. IN AAAA 102 1.1 christos SECTION AUTHORITY 103 1.1 christos test. 3600 IN SOA ns.test. host.test. 20201 3600 1800 604800 3600 104 1.1 christos ENTRY_END 105 1.1 christos 106 1.1 christos ENTRY_BEGIN 107 1.1 christos MATCH opcode subdomain 108 1.1 christos ADJUST copy_id copy_query 109 1.1 christos REPLY QR NOERROR 110 1.1 christos SECTION QUESTION 111 1.1 christos example.test. IN NS 112 1.1 christos SECTION AUTHORITY 113 1.1 christos example.test. IN NS ns.example.test. 114 1.1 christos SECTION ADDITIONAL 115 1.1 christos ns.example.test. IN A 1.2.3.4 116 1.1 christos ENTRY_END 117 1.1 christos 118 1.1 christos ENTRY_BEGIN 119 1.1 christos MATCH opcode subdomain 120 1.1 christos ADJUST copy_id copy_query 121 1.1 christos REPLY QR NOERROR 122 1.1 christos SECTION QUESTION 123 1.1 christos far.test. IN NS 124 1.1 christos SECTION AUTHORITY 125 1.1 christos far.test. IN NS ns.far.test. 126 1.1 christos SECTION ADDITIONAL 127 1.1 christos ns.far.test. IN A 1.2.3.6 128 1.1 christos ENTRY_END 129 1.1 christos RANGE_END 130 1.1 christos 131 1.1 christos ; ns.example.test. 132 1.1 christos RANGE_BEGIN 0 20 133 1.1 christos ADDRESS 1.2.3.4 134 1.1 christos ENTRY_BEGIN 135 1.1 christos MATCH opcode qtype qname 136 1.1 christos ADJUST copy_id 137 1.1 christos REPLY QR NOERROR 138 1.1 christos SECTION QUESTION 139 1.1 christos example.test. IN NS 140 1.1 christos SECTION ANSWER 141 1.1 christos example.test. IN NS ns.example.test. 142 1.1 christos SECTION ADDITIONAL 143 1.1 christos ns.example.test. IN A 1.2.3.4 144 1.1 christos ENTRY_END 145 1.1 christos 146 1.1 christos ENTRY_BEGIN 147 1.1 christos MATCH opcode qtype qname 148 1.1 christos ADJUST copy_id 149 1.1 christos REPLY QR AA NOERROR 150 1.1 christos SECTION QUESTION 151 1.1 christos ns.example.test. IN A 152 1.1 christos SECTION ANSWER 153 1.1 christos ns.example.test. IN A 1.2.3.4 154 1.1 christos ENTRY_END 155 1.1 christos 156 1.1 christos ENTRY_BEGIN 157 1.1 christos MATCH opcode qtype qname 158 1.1 christos ADJUST copy_id 159 1.1 christos REPLY QR AA NOERROR 160 1.1 christos SECTION QUESTION 161 1.1 christos ns.example.test. IN AAAA 162 1.1 christos SECTION AUTHORITY 163 1.1 christos example.test. 3600 IN SOA ns.example.test. host.example.test. 20301 3600 1800 604800 3600 164 1.1 christos ENTRY_END 165 1.1 christos 166 1.1 christos ; response to query of interest 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.example.test. 179 1.1 christos RANGE_BEGIN 20 100 180 1.1 christos ADDRESS 1.2.3.4 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 AA NOERROR 185 1.1 christos SECTION QUESTION 186 1.1 christos ns.example.test. IN A 187 1.1 christos SECTION ANSWER 188 1.1 christos ns.example.test. IN A 1.2.3.4 189 1.1 christos ENTRY_END 190 1.1 christos 191 1.1 christos ENTRY_BEGIN 192 1.1 christos MATCH opcode qtype qname 193 1.1 christos ADJUST copy_id 194 1.1 christos REPLY QR AA NOERROR 195 1.1 christos SECTION QUESTION 196 1.1 christos ns.example.test. IN AAAA 197 1.1 christos SECTION AUTHORITY 198 1.1 christos example.test. 3600 IN SOA ns.example.test. host.example.test. 20301 3600 1800 604800 3600 199 1.1 christos ENTRY_END 200 1.1 christos 201 1.1 christos ENTRY_BEGIN 202 1.1 christos MATCH opcode qtype qname 203 1.1 christos ADJUST copy_id 204 1.1 christos REPLY QR SERVFAIL 205 1.1 christos SECTION QUESTION 206 1.1 christos www.example.test. IN A 207 1.1 christos SECTION ANSWER 208 1.1 christos ENTRY_END 209 1.1 christos RANGE_END 210 1.1 christos 211 1.1 christos ; ns.far.test. 212 1.1 christos RANGE_BEGIN 0 100 213 1.1 christos ADDRESS 1.2.3.6 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 NOERROR 218 1.1 christos SECTION QUESTION 219 1.1 christos far.test. IN NS 220 1.1 christos SECTION ANSWER 221 1.1 christos far.test. IN NS ns.far.test. 222 1.1 christos SECTION ADDITIONAL 223 1.1 christos ns.far.test. IN A 1.2.3.6 224 1.1 christos ENTRY_END 225 1.1 christos 226 1.1 christos ENTRY_BEGIN 227 1.1 christos MATCH opcode qtype qname 228 1.1 christos ADJUST copy_id 229 1.1 christos REPLY QR AA NOERROR 230 1.1 christos SECTION QUESTION 231 1.1 christos ns.far.test. IN A 232 1.1 christos SECTION ANSWER 233 1.1 christos ns.far.test. IN A 1.2.3.6 234 1.1 christos ENTRY_END 235 1.1 christos 236 1.1 christos ENTRY_BEGIN 237 1.1 christos MATCH opcode qtype qname 238 1.1 christos ADJUST copy_id 239 1.1 christos REPLY QR AA NOERROR 240 1.1 christos SECTION QUESTION 241 1.1 christos ns.far.test. IN AAAA 242 1.1 christos SECTION AUTHORITY 243 1.1 christos far.test. 3600 IN SOA ns.far.test. host.far.test. 20301 3600 1800 604800 3600 244 1.1 christos ENTRY_END 245 1.1 christos 246 1.1 christos ; response to query of interest 247 1.1 christos ENTRY_BEGIN 248 1.1 christos MATCH opcode qtype qname 249 1.1 christos ADJUST copy_id 250 1.1 christos REPLY QR AA NOERROR 251 1.1 christos SECTION QUESTION 252 1.1 christos tgt.far.test. IN A 253 1.1 christos SECTION ANSWER 254 1.1 christos tgt.far.test. 1 IN A 10.20.30.40 255 1.1 christos ENTRY_END 256 1.1 christos RANGE_END 257 1.1 christos 258 1.1 christos ; Put items with TTL 1 in cache. 259 1.1 christos STEP 1 QUERY 260 1.1 christos ENTRY_BEGIN 261 1.1 christos REPLY RD DO 262 1.1 christos SECTION QUESTION 263 1.1 christos tgt.far.test. IN A 264 1.1 christos ENTRY_END 265 1.1 christos 266 1.1 christos STEP 2 CHECK_ANSWER 267 1.1 christos ENTRY_BEGIN 268 1.1 christos MATCH all 269 1.1 christos REPLY QR RD RA DO NOERROR 270 1.1 christos SECTION QUESTION 271 1.1 christos tgt.far.test. IN A 272 1.1 christos SECTION ANSWER 273 1.1 christos tgt.far.test. 1 IN A 10.20.30.40 274 1.1 christos ENTRY_END 275 1.1 christos 276 1.1 christos STEP 10 QUERY 277 1.1 christos ENTRY_BEGIN 278 1.1 christos REPLY RD DO 279 1.1 christos SECTION QUESTION 280 1.1 christos www.example.test. IN A 281 1.1 christos ENTRY_END 282 1.1 christos 283 1.1 christos STEP 11 CHECK_ANSWER 284 1.1 christos ENTRY_BEGIN 285 1.1 christos MATCH all 286 1.1 christos REPLY QR RD RA DO NXDOMAIN 287 1.1 christos SECTION QUESTION 288 1.1 christos www.example.test. IN A 289 1.1 christos SECTION ANSWER 290 1.1 christos ENTRY_END 291 1.1 christos 292 1.1 christos ; Move time to expire the cache entries. 293 1.1 christos STEP 20 TIME_PASSES ELAPSE 2 294 1.1 christos 295 1.1 christos ; the upstream RANGE is removed, so serve-expired has to act. 296 1.1 christos 297 1.1 christos STEP 30 QUERY 298 1.1 christos ENTRY_BEGIN 299 1.1 christos REPLY RD DO 300 1.1 christos SECTION QUESTION 301 1.1 christos www.example.test. IN A 302 1.1 christos ENTRY_END 303 1.1 christos 304 1.1 christos ; for serve expired callback. 305 1.1 christos STEP 31 TIME_PASSES ELAPSE 2 306 1.1 christos 307 1.1 christos STEP 40 CHECK_ANSWER 308 1.1 christos ENTRY_BEGIN 309 1.1 christos MATCH all 310 1.1 christos REPLY QR RD RA DO NXDOMAIN 311 1.1 christos SECTION QUESTION 312 1.1 christos www.example.test. IN A 313 1.1 christos SECTION ANSWER 314 1.1 christos ENTRY_END 315 1.1 christos 316 1.1 christos ; The pending lookup for the data, that was answered with expired to the client. 317 1.1 christos STEP 50 TRAFFIC 318 1.1 christos 319 1.1 christos SCENARIO_END 320