Explain the difference between IPv4 and IPv6 header structures and how network address translation (NAT) affects packet routing.