This is a Varnish 3.0 VMOD for inserting a VCL string into the client.ip internal variable. It parses the IPv4/IPv6 address and sets it to client.ip.


Used in production
Varnish version supported: 
Commercial support: 
Varnish Software


In this statement if req.http.X-Real-IP is empty it cause Varnish to panic and restart.

(ipcast.clientip(req.http.X-Real-IP) != 0)  ==> ipcast.clientip function can't handle an empty param

need to add if (req.http.X-Real-IP) around it for it to work ok.   We ran into this while using the purge module in drupal which is configured to send purge requests directly to the varnish server. So the X-Real-IP is empty.  X-Real-IP is being populated at our load balancers one level up from varnish. That's where we needed to come from.





Will this module be updated to support Varnish 4.x ?