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