A network client system (105, 200), comprising: a network connection interface for connecting to a network; a network address manager for sending an address request to an address server connected to the network to determine address information for the network client system; a network registration manager for registering the address information of the client system with a matching server connected to the network a network sharing manager for sharing the address information with a second client system connected to the network; and a network mapping maintenance manager for regularly sending messages to a mapping maintenance server connected to the network, wherein the network connection interface is connected to a network address translation device, wherein the address information includes a local network address and a public network address, wherein the local network address corresponds to the network client system and is established by the network address translation device, wherein the public network address corresponds to the network address translation device, wherein said network address translation device establishes said local network address for said network client system by mapping a port number associated with said network client system using port address translation and attaching the port number to said public network address, and wherein, after a predetermined period, the network client system evaluates whether to preserve the port number mapping or allow the port number mapping to time-out based on whether or not the network client system is communicating or attempting to communicate with another client system. a network connection interface for connecting to a network; a network address manager for sending an address request to an address server connected to the network to determine address information for the network client system; a network registration manager for registering the address information of the client system with a matching server connected to the network a network sharing manager for sharing the address information with a second client system connected to the network; and a network mapping maintenance manager for regularly sending messages to a mapping maintenance server connected to the network, wherein the network connection interface is connected to a network address translation device, wherein the address information includes a local network address and a public network address, wherein the local network address corresponds to the network client system and is established by the network address translation device, wherein the public network address corresponds to the network address translation device, wherein said network address translation device establishes said local network address for said network client system by mapping a port number associated with said network client system using port address translation and attaching the port number to said public network address, and wherein, after a predetermined period, the network client system evaluates whether to preserve the port number mapping or allow the port number mapping to time-out based on whether or not the network client system is communicating or attempting to communicate with another client system.