Patent ID: 6944167

Claim:
A communication network, comprising: a domain name server configured to maintain a first address data structure having a host name field, a private address field, a public address field, and a lease time field, determine if any public addresses in the public address field of the first address data structure have timed-out and update the first address data structure responsive to determining that at least one of the public addresses in the public address field of the first address data structure has timed-out, receive a query from a requesting host for a public address of a private network host, determine if a public address for the private network host has been assigned as indicated by the first address data structure, and transmit a request for the public address of the private network host if the public address of the private network host has not been assigned; and a network address translator configured to maintain a second address data structure having a host name field, a private address field, a public address field, and a lease time field, receive the request for the public address of the private network host, dynamically assign the public address to the private network host and a time period for the assignment of the public address to the private network host, update the second address data structure based on the public address and time period assignment, transmit a response indicating the public address of the private network host and the time period, determine if any public addresses in the public address field of the second address data structure have timed-out and if at least one of the public addresses in the public address field of the second address data structure has timed-out, then update the second address data structure and transmit a message to the domain name server that the public address of the private network host is no longer valid; the domain name server further configured to receive the response indicating the public address of the private network host and the time period, update the first address data structure based on the public address and time period assignment, and transmit the public address of the private network host to the requesting host.