A node device for providing secure communication services over a data
network, such as the Internet or another public or private packet
switched network, to multiple computers that are coupled through the node
device and multiple other node devices. The node device includes a
network communication interface for coupling the node device to the data
network. The node device includes a data storage containing cryptographic
information including information that is unique to the node device. The
node device also includes a tunneling communication service coupled to
the network interface configured to maintaining an encrypted
communication tunnel with each of multiple other node devices using the
cryptographic information. For example, the encrypted communication
tunnels are implemented using the IPsec or PPTP protocols. The node
device includes a routing database for holding routing data and a router
coupled to the tunneling communication service and to the routing
database. The router can pass communication from one communication tunnel
to another. A centralized server can be used to control the node devices
in a centralized manner, thereby reducing or eliminating on-site
administration of node devices.