Skip to main content

Understanding Reverse Tunnels

A Reverse tunnel is a method to establish a secure connection to a remote machine by opening an outbound connection from that machine instead of an inbound one. This is the opposite of a conventional forward tunnel, where the connection is opened towards the remote machine. By using reverse tunnels, resources behind NAT routers and firewalls can be reached without the need for complex network configurations.

How IO Tunnels Work

io.net uses Cloudflare Tunnel to reach the services running on your cluster.
  1. When a cluster is deployed, io.net creates a tunnel for its head node.
  2. A connector runs on the head node itself and opens an outbound connection to Cloudflare’s network. No inbound port is opened, so no firewall or NAT changes are required on the device.
  3. Each service that is exposed on the head node, such as the cluster’s monitoring dashboard, is mapped to the tunnel and gets its own HTTPS address.
  4. A request to that address reaches Cloudflare’s network first and is then routed to the service over the connection the head node has already opened.

Benefits of Reverse Tunnels

  1. Simplified Access: Services on the cluster can be reached without worrying about network restrictions, port forwarding, or VPNs.
  2. Enhanced Security: Nothing is exposed on an inbound port, and traffic is encrypted in transit between Cloudflare’s network and the head node.
  3. Scalability: Each cluster has its own tunnel, so io.net can manage multiple clusters simultaneously without any shared network configuration.
  4. Flexibility: Reverse tunnels work across various platforms, ensuring compatibility with different operating systems and environments.