Back to blogs

Tailscale Exit Node

Himanshu Rai·4 min read
Published 6/19/2026

A Tailscale Exit Node allows a device in your Tailscale network to act as a gateway for internet traffic from other devices.

Normally, Tailscale only routes traffic destined for devices inside the tailnet. When an Exit Node is enabled, a client can choose to send all internet traffic through a selected Tailscale device.

This effectively turns that device into a private VPN server.


How Tailscale Normally Works

Without an Exit Node:

Phone
  │
  ├── Internet traffic ──► ISP ──► Internet
  │
  └── Tailscale traffic ─► VPS (100.x.x.x)

Only traffic destined for devices in the tailnet uses Tailscale.

Examples:

  • SSH to a VPS
  • Access a private database
  • Reach internal web applications

Regular internet traffic continues to use the local ISP.


How an Exit Node Works

With an Exit Node enabled:

Phone
  │
  ▼
Tailscale Tunnel
  │
  ▼
Exit Node (VPS)
  │
  ▼
Internet

All internet traffic is routed through the selected Tailscale device.

Websites and services see the public IP address of the Exit Node rather than the client device.


Common Use Cases

Accessing Region-Restricted Services

India Phone
    │
    ▼
Germany VPS (Exit Node)
    │
    ▼
Service

Traffic appears to originate from Germany.

Bypassing Local Network Restrictions

If a local ISP blocks or throttles a service:

Phone ──X──► Service

Using an Exit Node:

Phone
  │
  ▼
Tailscale
  │
  ▼
VPS
  │
  ▼
Service

The service is reached through the VPS network.

Secure Public Wi-Fi Usage

Coffee Shop Wi-Fi
       │
       ▼
Encrypted Tailscale Tunnel
       │
       ▼
Exit Node
       │
       ▼
Internet

All traffic remains encrypted between the client and Exit Node.


Example: Telegram Access

Suppose:

  • Telegram access is unreliable on a local network.
  • A VPS in Hetzner has unrestricted internet access.
  • Both the phone and VPS are connected to Tailscale.

Without an Exit Node:

Phone ──► ISP ──► Telegram

With an Exit Node:

Phone
  │
  ▼
Tailscale
  │
  ▼
Hetzner VPS
  │
  ▼
Telegram

Telegram sees the VPS IP address instead of the local network IP.


Enabling an Exit Node

On the VPS

Advertise the node as an Exit Node:

sudo tailscale set --advertise-exit-node

Verify:

tailscale status

The device should appear as an available Exit Node.


Approving the Exit Node

  1. Open the Tailscale Admin Console.
  2. Navigate to Machines.
  3. Select the VPS.
  4. Approve the advertised Exit Node capability.

Using an Exit Node

Android

  1. Open Tailscale.
  2. Connect to the tailnet.
  3. Open settings/menu.
  4. Select Use Exit Node.
  5. Choose the VPS.

iPhone

  1. Open Tailscale.
  2. Connect to the tailnet.
  3. Select Exit Node.
  4. Choose the VPS.

Linux

sudo tailscale up --exit-node=<TAILSCALE_IP>

Example:

sudo tailscale up --exit-node=100.x.x.x

Disable:

sudo tailscale up --exit-node=

Verifying Traffic Routing

Check the public IP before enabling the Exit Node:

curl ifconfig.me

Enable the Exit Node and check again:

curl ifconfig.me

The returned IP should now be the public IP of the VPS.


Performance Considerations

Advantages

  • Private VPN without exposing services publicly.
  • End-to-end encrypted traffic.
  • Access to services through another network location.
  • Simple setup compared to traditional VPN solutions.

Disadvantages

  • Increased latency.
  • Additional bandwidth consumption on the Exit Node.
  • All internet traffic depends on the Exit Node's availability.
  • VPS network costs may increase.

Exit Node vs Direct Tailscale Access

Direct Tailscale Access

Phone ──► VPS (100.x.x.x)

Use when:

  • Accessing internal services.
  • SSH access.
  • Private web applications.
  • Databases.

Exit Node

Phone ──► VPS ──► Internet

Use when:

  • Routing all internet traffic through the VPS.
  • Accessing services from another geographic region.
  • Working around local network restrictions.
  • Securing traffic on untrusted networks.

Example Setup

Current VPS:

Tailscale IP: 100.x.x.x
Public IP:    Hetzner VPS

Enable Exit Node:

sudo tailscale set --advertise-exit-node

Connect from phone:

Phone
  │
  ▼
Tailscale
  │
  ▼
100.x.x.x
  │
  ▼
Internet

All internet traffic from the phone now exits through the Hetzner VPS.