Unfortunately, there is a lot of bad information in the vast majority of these answers and comments. It is so sad to see the blind leading the blind on this in such a prolific way.
NAT is not going anywhere and people that tell you "Oh, that NAT, what a terrible thing it is"..."Oh that NAT, it was nothing but a work around"...ad nasueum
If they start using language like that, move on to a real professional network architect for advice, not a weekend networking armchair warrior.
Do you need to load balance traffic to internal servers from the Internet? Well guess what, with IPv6 you can't do it the way you have been doing it....unless you use NAT!
Yes, it is true. Some will say, oh you just use DSR/Direct server return load balancing. But they forget to tell you that you have to give up
1) Cookie insertion
2) Application acceleration
3) Port address translation
So if you want to run your internal servers on port 8080 but your external on port 80...Oh, so sad, no can do with IPv6....unless you are using good ole NAT! Not even with DSR.
Then add to that the "boasting" that people say "Oh, yeah all the IPv6 NAT proposals have failed...thank goodness" (and the empire dies to the sound of applause)
You know what that means? NAT is going to be terrible, if it even works at all with IPv6, because all the IPv6 zealots are in denial about the need for NAT/PAT intrinsically and the people doing it are doing it reluctantly. So sad, so poorly managed
So what do you do now that the truth has set you free and you can rise above the throngs of lemmings trying to use scare tactics to force your compliance?
You buy or continue to use a Loadbalancer or Firewall that acts as the public/private broder of your network. Public side interfaces host the same VIPs you already have but with a complimenting IPv6 address if you need it. Everything north of the Loadbalancer/Firewall layer is also dual stack IPv4/IPv6. On the inside interfaces of the Loadbalancer/Firewall they are all IPv4 and your entire internal network is IPv4 and it stays that way as long as you like. It is only your business. The Loadbalancer does NAT/PAT between outside and inside...because it already is and needs to for full featured load balancing and because now it also solves your external IPv6 problem.
Oh and to the sarcastic person who asked "What single security purpose does NAT serve"
Security is about Availability at the most fundamental level. Think about it, before you dismiss it.
Load balancers provide that Availability/Security and you HAVE to use NAT/PAT to do it properly regardless of the version of IP you are using.
Citation regarding DSR fail: https://devcentral.f5.com/articles/the-disadvantages-of-dsr-direct-server-return
k thnx