mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-10 17:41:50 -04:00
Add randomizens system test which ensures that NS are randomly selected. The test relies of the fact that `getaddresses_allowed()` logic won't allow to query more than 3 NS at the top-level. The `example.` zone has 4 NS and the 3 formers are lame. As a result, if the resolved doesn't randomize the NS selection, it will only quiery the 3 formers, which won't give an answer, and fails. With randomization enabled, there is a chance that the resolver queries the fourth NS, and gets the result.
21 lines
832 B
Text
21 lines
832 B
Text
Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
|
|
|
SPDX-License-Identifier: MPL-2.0
|
|
|
|
This Source Code Form is subject to the terms of the Mozilla Public
|
|
License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
file, you can obtain one at https://mozilla.org/MPL/2.0/.
|
|
|
|
See the COPYRIGHT file distributed with this work for additional
|
|
information regarding copyright ownership.
|
|
|
|
ns1 is root
|
|
ns{2-4} are auth server on example. but lame
|
|
ns5 is an auth server on example. and works
|
|
ns6 is a resolver
|
|
|
|
Because `getaddresses_allowed()` logic won't allow to query more than 3 NS at
|
|
the top-level, only ns{2-4} will be tried without randomization, and example.
|
|
couldn't be resolved. However, with randomization, some queries won't start
|
|
picking example. NS from ns2, but ns3, ns4 or ns5. This enable to resolver
|
|
example.
|