A method for traversing a network address translation/firewall device, having a public side and a private side, with bidirectional network traffic, the bidirectional network traffic passing between a device on the private side and a device on the public side;
- the system comprising:
- receiving packets at a network processing system, the network processing system on the public side of the network address translation/firewall device;
- passing control information bound for the private side device through a traversal client, the traversal client having a secure connection with the network processing system;
- creating allocations in the network address translation/firewall device to allow the bidirectional network traffic through the network address translation/firewall device, the allocations created by sending a test packet from the traversal client to the network processing system through the network address translation/firewall device, wherein the traversal client does not reside in the path of the traffic between the private side device and the public side device.