A connection between an external host and a host internal to a network
(e.g., VPN or LAN) and located behind a firewall and/or NAT-enabled
device is established and maintained. A dynamic DNS server is updated
with the remote location (RL) information associated with the internal
host. This information includes the dialed number (i.e. the number
assigned to the internal host), the physical address of the internal
host, the private IP address corresponding to the internal host, the
public IP address corresponding to the firewall, and the port on which
voice data is to be communicated. Each time the internal host's location
changes, a new and updated record is sent to the dynamic DNS server. The
call placed by an external host reaches its final destination based on
the record information in the DNS server table. Once the connection
between the external host and the internal host is established, voice
traffic is "cut-through" the firewall on this channel associate with the
port designated by the RL record.