Handling NoNameservers exception
In the shutdown system test multiple queries are sent to a resolver instance, in the meantime we terminate the same resolver process for which the queries were sent to, either via rndc stop or a SIGTERM signal, that means the resolver may not be able to answer all those queries, since it has initiated the shutdown process.
The dnspython library raises a dns.resolver.NoNameservers exception when a resolver object fails to receive an answer from the specified list of nameservers (resolver.nameservers list), we need to handle this exception as this is something that may happen since we asked the resolver to terminate, as a result it may not answer clients even if an answer is available, as the operation will be canceled.
(cherry picked from commit b19cd2d8)
Closes #2282 (closed)