IPv6 has been under discussion from a very long time and now it is discussed more with respect to actual implementation. The key to success relies with the fact how well IPv6 can co-exist with IPv4 in today’s production networks. We have understood that there is no magic to change everything from v4 to v6 in an overnight stint thus we need to have technologies which enables smooth transition and translation ensuring different pieces can work together.

There are various transitioning and translation technologies which have been developed to ensure that IPv4 clients can talk to IPv6 resources and IPv6 clients can talk to IPv4 resources. You also need to ensure that transitioning takes place on the access network path immaterial of what is being used. From beginning our focus was more on how can we enable IPv6 clients to talk to IPv4 resources as we expected clients to adopt IPv6 faster than actual data center resources. But recently we have seen several use cases where legacy IPv4 clients need to talk to the IPv6 resources. Stateless NAT46 translation feature in NetScaler addresses these use cases.

NAT46 is developed keeping the IPv4 to IPv6 stateless translation in mind which means that NetScaler does not maintains or remembers any session information but just focuses on the translation based on mapping. We have reused the INAT structure here for defining 1:1 mapping in between the IPv4 and IPv6 addresses. The INAT defines an IPv4 address on behalf of every IPv6 resource in the network. NetScaler listens on the IPv4 address and translates client requests to mapped IPv6 address as defined in INAT rule. On the way back, responses from IPv6 resources are again translated back to take the IPv4 address as source while being forwarded to IPv4 clients.

The translation is done with help of IPv6 prefix specifically configured for NAT46 scenario. The prefix is 96 bits long and is used while IPv4 packet is translated into IPv6 for communicating with IPv6 resource. The original IPv4 client IP (32 bits) is concatenated with the prefix and sent to the IPv6 server and on receiving the response NetScaler picks up the IPv4 (32 bits) part from the destination IPv6 address and uses it as destination IPv4 (client) address. Here is a quick flow which will help clarify:

Simple technology enabling internal data centers to move to IPv6 without worrying about the IPv4 clients…

NAT46 feature is available on latest 10.e MR build.