NAT traversal
Network address translator traversal is a computer networking technique of establishing and maintaining Internet Protocol connections across gateways that implement network address translation (NAT). NAT traversal techniques are required for many network applications, such as peer-to-peer file sharing and voice over IP. == Network address translation == Network address translation typically uses private IP addresses on private networks with a single public IP address for the router facing the Internet.