Resolver implementation for querying successive authoritative servers to lookup a record, starting from the root nameservers.
| Author | Jp Calderone todo: robustify it documentation | |
| Class | Resolver | Resolverimplements recursive lookup starting from a specified list of root 
servers. | 
| Function | makePlaceholder | Undocumented | 
| Class | DeferredResolver | Undocumented | 
| Function | bootstrap | Lookup the root nameserver addresses using the given resolver | 
| Class | _DummyController | A do-nothing DNS controller. This is useful when all messages received will be responses to previously issued queries. Anything else received will be ignored. | 
Lookup the root nameserver addresses using the given resolver
Return a Resolver which will eventually become a 
root.Resolver instance that has references to all the root 
servers that we were able to look up.
| Parameters | resolver | The resolver instance which will be used to lookup the root nameserver 
addresses. (type: twisted.internet.interfaces.IResolverSimple) | 
| resolverFactory | An optional callable which returns a resolver instance. It will passed as 
the resolverFactoryargument toResolver.__init__. (type: callable) | |
| Returns | A DeferredResolverwhich will be dynamically replaced withResolverwhen the 
root nameservers have been looked up. | |