STRING, read-only.

Available inall subroutines.

Client proxy description.

Defaults to ? when an IP address is not known to be a proxy or VPN. Other possible values are:

  • cloud - Enables ubiquitous network access to a shared pool of configurable computing resources.
  • cloud-security - A host accessing the internet via a web security and data protection cloud provider. Example providers with this type of service are Zscaler, Scansafe, and Onavo.
  • dns - A proxy used by overriding the client's DNS value for an endpoint host to that of the proxy instead of the actual DNS value.
  • tor-exit - The gateway nodes where encrypted or anonymous Tor traffic hits the internet.
  • tor-relay - Receives traffic on the Tor network and passes it along. Also referred to as "routers".
  • vpn - Virtual private network that encrypts and routes all traffic through the VPN server, including programs and applications.
  • web-browser - This value will indicate connectivity that is taking place through mobile device web browser software that proxies the user through a centralized location. Examples of browsers are Opera mobile browsers and UCBrowser.


sub vcl_recv {
#FASTLY recv
if (client.geo.proxy_description ~ "^tor-") {
error 600 "using tor";
sub vcl_error {
if (obj.status == 600) {
set obj.status = 451;
return (deliver);

User contributed notes


Do you see an error in this page? Do have an interesting use case, example or edge case people should know about? Share your knowledge and help people who are reading this page! (Comments are moderated; for support, please contact