does Varnish (between nginx frontend and apache backend) need separate instances/listeners for IPv4/6 dual-stack use?

d1+varnish at d1+varnish at
Tue May 17 19:09:45 CEST 2011

my current varnish-using web stack, running on 64-bit linux, is,

        multiple listeners on IPv4:80, IPv4:443
        proxypass to varnish-cache on
        listener on
        filter/pass to 'faux-CDN' on Apache2
            'img' ->
            'css' ->
            'js'  ->
            '...' ->
    apache2/mod_php,mod_deflate +
        listeners/vhosts on{0,1,2,3}

all works as planned.

i'm now adding IPv6 listeners on assigned AAAA records @ each nginx
server for hybrid, dual-stack IPv4+IPv6 operation,

-       multiple listeners on IPv4:80, IPv4:443
+-      multiple listeners on IPv4/IPv6:80, IPv4/IPv6:443

i.e., at nginx.conf

  server {
     listen [::]:80;

my question is -- what to do with Varnish config, and, ultimately, *its*
apache backend(s)?

is it sufficient to keep one varnish instance listening only on IPv4 to
both of nginx's ingress AddressFamilies, passed via a single/common
or, do i need separate Varnish instances/listeners, one for each
AddressFamilty -- effectively setting up a parallel path for IPv4 or
IPv6 traffic?
and, in any case, should Varnish-config then get Apache backends
config'd for each IPv4/6 AddressFamily?


More information about the varnish-misc mailing list