1; config options 2server: 3 target-fetch-policy: "0 0 0 0 0" 4 qname-minimisation: "no" 5 6stub-zone: 7 name: "." 8 stub-addr: 193.0.14.129 # K.ROOT-SERVERS.NET. 9CONFIG_END 10 11SCENARIO_BEGIN Test resolution with dependency cycle 12; query for ns.example.com, needs ns.example.net, needs ns.example.com. 13 14; K.ROOT-SERVERS.NET. 15RANGE_BEGIN 0 100 16 ADDRESS 193.0.14.129 17ENTRY_BEGIN 18MATCH opcode qtype qname 19ADJUST copy_id 20REPLY QR NOERROR 21SECTION QUESTION 22. IN NS 23SECTION ANSWER 24. IN NS K.ROOT-SERVERS.NET. 25SECTION ADDITIONAL 26K.ROOT-SERVERS.NET. IN A 193.0.14.129 27ENTRY_END 28 29ENTRY_BEGIN 30MATCH opcode qtype qname 31ADJUST copy_id 32REPLY QR NOERROR 33SECTION QUESTION 34ns.example.com. IN A 35SECTION AUTHORITY 36com. IN NS a.gtld-servers.net. 37SECTION ADDITIONAL 38a.gtld-servers.net. IN A 192.5.6.30 39ENTRY_END 40 41ENTRY_BEGIN 42MATCH opcode qtype qname 43ADJUST copy_id 44REPLY QR NOERROR 45SECTION QUESTION 46ns.example.com. IN AAAA 47SECTION AUTHORITY 48com. IN NS a.gtld-servers.net. 49SECTION ADDITIONAL 50a.gtld-servers.net. IN A 192.5.6.30 51ENTRY_END 52 53ENTRY_BEGIN 54MATCH opcode qtype qname 55ADJUST copy_id 56REPLY QR NOERROR 57SECTION QUESTION 58ns.example.net. IN A 59SECTION AUTHORITY 60net. IN NS e.gtld-servers.net. 61SECTION ADDITIONAL 62e.gtld-servers.net. IN A 192.12.94.30 63ENTRY_END 64 65ENTRY_BEGIN 66MATCH opcode qtype qname 67ADJUST copy_id 68REPLY QR NOERROR 69SECTION QUESTION 70ns.example.net. IN AAAA 71SECTION AUTHORITY 72net. IN NS e.gtld-servers.net. 73SECTION ADDITIONAL 74e.gtld-servers.net. IN A 192.12.94.30 75ENTRY_END 76RANGE_END 77 78; a.gtld-servers.net. 79RANGE_BEGIN 0 100 80 ADDRESS 192.5.6.30 81ENTRY_BEGIN 82MATCH opcode qtype qname 83ADJUST copy_id 84REPLY QR NOERROR 85SECTION QUESTION 86com. IN NS 87SECTION ANSWER 88com. IN NS a.gtld-servers.net. 89SECTION ADDITIONAL 90a.gtld-servers.net. IN A 192.5.6.30 91ENTRY_END 92 93ENTRY_BEGIN 94MATCH opcode qtype qname 95ADJUST copy_id 96REPLY QR NOERROR 97SECTION QUESTION 98ns.example.com. IN A 99SECTION AUTHORITY 100example.com. IN NS ns.example.net. 101SECTION ADDITIONAL 102; note this will be scrubbed off 103ns.example.net. IN A 1.2.3.1 104ENTRY_END 105 106ENTRY_BEGIN 107MATCH opcode qtype qname 108ADJUST copy_id 109REPLY QR NOERROR 110SECTION QUESTION 111ns.example.com. IN AAAA 112SECTION AUTHORITY 113example.com. IN NS ns.example.net. 114SECTION ADDITIONAL 115; note this will be scrubbed off 116ns.example.net. IN A 1.2.3.1 117ENTRY_END 118RANGE_END 119 120; e.gtld-servers.net. 121RANGE_BEGIN 0 100 122 ADDRESS 192.12.94.30 123ENTRY_BEGIN 124MATCH opcode qtype qname 125ADJUST copy_id 126REPLY QR NOERROR 127SECTION QUESTION 128net. IN NS 129SECTION ANSWER 130net. IN NS e.gtld-servers.net. 131SECTION ADDITIONAL 132e.gtld-servers.net. IN A 192.12.94.30 133ENTRY_END 134 135ENTRY_BEGIN 136MATCH opcode qtype qname 137ADJUST copy_id 138REPLY QR NOERROR 139SECTION QUESTION 140ns.example.net. IN A 141SECTION AUTHORITY 142example.net. IN NS ns.example.com. 143SECTION ADDITIONAL 144; note this will be scrubbed off 145ns.example.com. IN A 1.2.3.2 146ENTRY_END 147 148ENTRY_BEGIN 149MATCH opcode qtype qname 150ADJUST copy_id 151REPLY QR NOERROR 152SECTION QUESTION 153ns.example.net. IN AAAA 154SECTION AUTHORITY 155example.net. IN NS ns.example.com. 156SECTION ADDITIONAL 157; note this will be scrubbed off 158ns.example.com. IN A 1.2.3.2 159ENTRY_END 160RANGE_END 161 162STEP 1 QUERY 163ENTRY_BEGIN 164REPLY RD 165SECTION QUESTION 166ns.example.com. IN A 167ENTRY_END 168 169; recursion happens here. 170; cycle detected and it fails. 171STEP 20 CHECK_ANSWER 172ENTRY_BEGIN 173MATCH all 174REPLY QR RD RA SERVFAIL 175SECTION QUESTION 176ns.example.com. IN A 177ENTRY_END 178 179SCENARIO_END 180