1. A method for providing access to an Internet resource comprising: maintaining a first nameserver that is registered to be an authoritative nameserver and that includes a cache of DNS resolutions to DNS queries; receiving from a resource provider, a set of policy codes at the first nameserver, the policy codes indicating how the first nameserver responds to queries and conditions; accepting at the first nameserver directions to blacklist DNS queries; receiving at the first nameserver a first DNS query; executing at the first nameserver a policy code to determine how to respond to the first DNS query; determining, based on the policy code, that a parameter of the first DNS query is on the blacklist; responding to the first DNS query by throwing a blacklist error message; receiving at the first nameserver a second DNS query comprising a domain name, from a web client; forming a cache key by augmenting the domain name with an identity of the web client; and accessing the cache with the cache key to check for a valid cache resolution.