Patent ID: 7676579

Claim:
A method of communicating between a first client system and a second client system, comprising: discovering first address information for a first client system connected to a first network address translation device by sending a first address request from the first client system to an address server in communication with the first network address translation device; establishing a mapping between the first client system and a first network address by registering said first address information to a matching server, said first network address including an address number and a port number associated with said first client system attached to said first network address translation device, said port number mapped to said first client system using port address translation; sharing the first address information with a second client system; screening incoming data to the first client system, authorizing second address information to be received by the first client system; receiving authorized second address information, at the first client system, for the second client system, wherein the only second address information that is authorized and received is second address data that originates from a second client system that 1) selected first client system to communicate with, and 2) shared the second address information with a matching server, and 3) received a test message from the first client system after the matching server sent the first client system the second address information of the second client system; and establishing communication between the first client system and the second client system using the second address information.