While NAT would work well for typical client server communications since it's always the client that initiates the conversation and normally client doesn't need to maintain the connection for a long time, installation of NAT would cause major problem for peer-to-peer communication, such as VoIP. These problems will be explained in more detail below.