IPv6 NPTv6 (Network Prefix Translation)

Hello Nitay

As far as I can see there is no way to see the actual translations of the specific IP addresses. But there is a reason for this. NAT66 does not keep track of each individual translation like NAT for IPv4 does. It simply translates the prefixes. In this sense, it is stateless as far as the specific addresses are concerned, that’s why you can’t see a record of the translations. The only way to see and verify specific translations is to do a wireshark capture and see what addresses appear in the IPv6 header.

ALG does exist for NAT66 in much the same way as it does for IPv4 NAT. This is emphasized in RFC 6296 describing IPv6 to IPv6 Network Prefix Translation where it states that:

NPTv6 may interfere with the use of application
protocols that transmit IP addresses in the application-specific
portion of the IP datagram. These applications currently require
Application Layer Gateways (ALGs) to work correctly through NAPT44
devices, and similar ALGs may be required for these applications to
work through NPTv6 Translators.

However, from my research, I find that most Cisco devices that support NAT66 don’t simultaneously support ALG. For example, this Cisco documentation on NPTv6 states that:

Application Level Gateways (ALG) is not supported by NPTv6 support on ASR1k/CSR1k/ISR4k feature. Payload address or port translation is not supported.

I have been unable to find documentation indicating a Cisco device supporting ALG on NAT66 translations.

I hope this has been helpful!

Laz

2 Likes