IPv6 support for guests in Linux Vserver is supported through experimental patches.
Bruno Premont has written a patch for vserver, and you can find the latest version here: http://homepage.internet.lu/brunop/vserver/
The steps for getting it working are:
You should get no errors or rejected hunks.
Check the menuconfig, and build your kernel and modules as normal. Reboot, and boot into the new kernel.
When your machine has rebooted, and your vservers are running sucessfully, you need to assign your v6 address to the guest.
Then, duck into your vserver ( vserver name enter ), and see your v6 address there.
If you don't see the IPv6 address, you might need to do the following:
Put http://vserver.13thfloor.at/Experimental/SYSCALL/syscall_shiny10.h in the same directory as chbind6.c, and add -D__NR_vserver=<syscall number for your architecture> to the gcc command above. To get the syscall number, check the syscall# line in vserver-info's output. (x86 is 273 currently - best to check though).
Currently, if you want to auto-assign IPv6 addresses, you will need to patch your util-vserver. Check out http://daniel.hozac.com/vserver/util-vserver-0.30.210-ipv6.patch (It requires that you have chbind6 in your $PATH though.)