Home | History | Annotate | Line # | Download | only in testdata
      1 ; config options
      2 server:
      3 	target-fetch-policy: "0 0 0 0 0"
      4 	qname-minimisation: "no"
      5 	module-config: "dns64 iterator"
      6 	dns64-prefix: 64:ff9b::0/96
      7 	minimal-responses: no
      8 	iter-scrub-promiscuous: no
      9 	prefetch: yes
     10 
     11 stub-zone:
     12 	name: "."
     13 	stub-addr: 193.0.14.129 	# K.ROOT-SERVERS.NET.
     14 CONFIG_END
     15 
     16 SCENARIO_BEGIN Test dns64 with prefetch and cache store.
     17 
     18 ; K.ROOT-SERVERS.NET.
     19 RANGE_BEGIN 0 200
     20 	ADDRESS 193.0.14.129 
     21 ENTRY_BEGIN
     22 MATCH opcode qtype qname
     23 ADJUST copy_id
     24 REPLY QR NOERROR
     25 SECTION QUESTION
     26 . IN NS
     27 SECTION ANSWER
     28 . IN NS	K.ROOT-SERVERS.NET.
     29 SECTION ADDITIONAL
     30 K.ROOT-SERVERS.NET. IN A 193.0.14.129
     31 ENTRY_END
     32 
     33 ENTRY_BEGIN
     34 MATCH opcode subdomain
     35 ADJUST copy_id copy_query
     36 REPLY QR NOERROR
     37 SECTION QUESTION
     38 com. IN NS
     39 SECTION AUTHORITY
     40 com. IN NS a.gtld-servers.net.
     41 SECTION ADDITIONAL
     42 a.gtld-servers.net. IN A 192.5.6.30
     43 ENTRY_END
     44 RANGE_END
     45 
     46 ; a.gtld-servers.net.
     47 RANGE_BEGIN 0 200
     48 	ADDRESS 192.5.6.30
     49 ENTRY_BEGIN
     50 MATCH opcode qtype qname
     51 ADJUST copy_id
     52 REPLY QR NOERROR
     53 SECTION QUESTION
     54 com. IN NS
     55 SECTION ANSWER
     56 com. IN NS a.gtld-servers.net.
     57 SECTION ADDITIONAL
     58 a.gtld-servers.net. IN A 192.5.6.30
     59 ENTRY_END
     60 
     61 ENTRY_BEGIN
     62 MATCH opcode subdomain
     63 ADJUST copy_id copy_query
     64 REPLY QR NOERROR
     65 SECTION QUESTION
     66 example.com. IN NS
     67 SECTION AUTHORITY
     68 example.com. IN NS ns.example.com.
     69 SECTION ADDITIONAL
     70 ns.example.com. IN A 1.2.3.4
     71 ENTRY_END
     72 RANGE_END
     73 
     74 ; ns.example.com.
     75 RANGE_BEGIN 0 100
     76 	ADDRESS 1.2.3.4
     77 ENTRY_BEGIN
     78 MATCH opcode qtype qname
     79 ADJUST copy_id
     80 REPLY QR AA NOERROR
     81 SECTION QUESTION
     82 example.com. IN NS
     83 SECTION ANSWER
     84 example.com. IN NS ns.example.com.
     85 SECTION ADDITIONAL
     86 ns.example.com. IN A 1.2.3.4
     87 ENTRY_END
     88 
     89 ENTRY_BEGIN
     90 MATCH opcode qtype qname
     91 ADJUST copy_id
     92 REPLY QR AA NOERROR
     93 SECTION QUESTION
     94 www.example.com. IN A
     95 SECTION ANSWER
     96 www.example.com. IN A	10.20.30.40
     97 SECTION AUTHORITY
     98 example.com. IN NS ns.example.com.
     99 SECTION ADDITIONAL
    100 ns.example.com. IN A 1.2.3.4
    101 ENTRY_END
    102 RANGE_END
    103 
    104 STEP 1 QUERY
    105 ENTRY_BEGIN
    106 REPLY RD
    107 SECTION QUESTION
    108 www.example.com. IN A
    109 ENTRY_END
    110 
    111 ; recursion happens here.
    112 STEP 10 CHECK_ANSWER
    113 ENTRY_BEGIN
    114 MATCH all ttl
    115 REPLY QR RD RA NOERROR
    116 SECTION QUESTION
    117 www.example.com. IN A
    118 SECTION ANSWER
    119 www.example.com. 3600 IN A	10.20.30.40
    120 SECTION AUTHORITY
    121 example.com. 3600 IN NS ns.example.com.
    122 SECTION ADDITIONAL
    123 ns.example.com. 3600 IN A 1.2.3.4
    124 ENTRY_END
    125 
    126 STEP 20 TIME_PASSES ELAPSE 3500
    127 
    128 STEP 30 QUERY
    129 ENTRY_BEGIN
    130 REPLY RD
    131 SECTION QUESTION
    132 www.example.com. IN A
    133 ENTRY_END
    134 
    135 ; the prefetch is started, the older cache reply is returned.
    136 STEP 40 CHECK_ANSWER
    137 ENTRY_BEGIN
    138 MATCH all ttl
    139 REPLY QR RD RA NOERROR
    140 SECTION QUESTION
    141 www.example.com. IN A
    142 SECTION ANSWER
    143 www.example.com. 100 IN A	10.20.30.40
    144 SECTION AUTHORITY
    145 example.com. 100 IN NS ns.example.com.
    146 SECTION ADDITIONAL
    147 ns.example.com. 100 IN A 1.2.3.4
    148 ENTRY_END
    149 
    150 ; check what is in the cache
    151 STEP 42 QUERY
    152 ENTRY_BEGIN
    153 REPLY RD
    154 SECTION QUESTION
    155 www.example.com. IN A
    156 ENTRY_END
    157 
    158 STEP 43 CHECK_ANSWER
    159 ENTRY_BEGIN
    160 MATCH all ttl
    161 REPLY QR RD RA NOERROR
    162 SECTION QUESTION
    163 www.example.com. IN A
    164 SECTION ANSWER
    165 www.example.com. 3600 IN A	10.20.30.40
    166 SECTION AUTHORITY
    167 example.com. 3600 IN NS ns.example.com.
    168 SECTION ADDITIONAL
    169 ns.example.com. 3600 IN A 1.2.3.4
    170 ENTRY_END
    171 
    172 STEP 50 TIME_PASSES ELAPSE 300
    173 
    174 ; now the upstream is offline, the prefetched answer should be in the cache.
    175 STEP 110 QUERY
    176 ENTRY_BEGIN
    177 REPLY RD
    178 SECTION QUESTION
    179 www.example.com. IN A
    180 ENTRY_END
    181 
    182 STEP 120 CHECK_ANSWER
    183 ENTRY_BEGIN
    184 MATCH all ttl
    185 REPLY QR RD RA NOERROR
    186 SECTION QUESTION
    187 www.example.com. IN A
    188 SECTION ANSWER
    189 www.example.com. 3300 IN A	10.20.30.40
    190 SECTION AUTHORITY
    191 example.com. 3300 IN NS ns.example.com.
    192 SECTION ADDITIONAL
    193 ns.example.com. 3300 IN A 1.2.3.4
    194 ENTRY_END
    195 
    196 SCENARIO_END
    197