๐Ÿงญ Overview

What is Tunnlink?

Tunnlink lets you securely expose your local or LAN-based web apps to the internet using a simple, fast tunnel. No complex router configuration, no port forwarding headaches - just instant access to your local development servers from anywhere.

Perfect for developers, testers, and anyone who needs to quickly share their local web applications with teammates, clients, or testing services.

๐Ÿ›  Installation

How to get started

Quick Install (Recommended)

Install Tunnlink with a single command:

curl -s https://tunl.sh/install | bash

Manual Download

Download the appropriate installer for your platform from our releases page.

Requirements

  • Windows 10+, macOS 10.14+, or Linux (Ubuntu 18.04+)
  • Internet connection
  • No additional dependencies required

โš™๏ธ Usage

How to run it

Start a tunnel to expose your local server:

tunl start --port 3000

Command Options

  • --port โ†’ Port to expose (required)
  • --subdomain โ†’ Custom subdomain (optional)
  • --local-only โ†’ Restrict to LAN access only
  • --debug โ†’ Enable verbose output
  • --password โ†’ Add password protection

Examples

# Basic tunnel tunl start --port 8080 # Custom subdomain tunl start --port 3000 --subdomain myapp # Password protected tunl start --port 5000 --password mypassword # Debug mode tunl start --port 3000 --debug

๐Ÿงฉ Features

๐Ÿ”’ End-to-end Encryption

All tunnels use HTTPS with automatic SSL certificates for secure connections.

๐Ÿง  Smart Subdomain Allocation

Automatic subdomain generation or use your own custom subdomain.

๐Ÿ“‰ Usage Stats

Monitor traffic, requests, and connection statistics in real-time.

๐ŸŒ Custom Domains

Bring your own domain for professional tunnel URLs.

๐Ÿšง Rate Limiting

Built-in protection against abuse with configurable limits.

๐Ÿ” Password Protection

Secure your tunnels with optional password authentication.

๐Ÿงช Examples

Running a Local Dev Server

# Start your development server npm run dev # In another terminal, expose it tunl start --port 3000

Sharing a LAN Service

# Expose your local file server tunl start --port 8080 --subdomain myfiles

Testing Webhook Endpoints

# Expose your webhook handler for Stripe/GitHub tunl start --port 4000 --subdomain webhooks

๐Ÿงฐ Troubleshooting

โŒ Port not exposed?

Make sure your firewall allows the specified port and your local server is running.

โŒ Tunnel not found?

Check your internet connection and DNS settings. Try restarting the tunnel.

โŒ SSL errors?

Some corporate firewalls block Let's Encrypt. Contact your network administrator.

โŒ Connection refused?

Ensure your local application is bound to 0.0.0.0 instead of localhost for external access.

๐Ÿงผ FAQ

Does Tunnlink support HTTPS?

Yes! All tunnels automatically use HTTPS with valid SSL certificates.

Is there a free plan?

Yes, Tunnlink offers a free tier with basic tunneling features. Premium plans include custom domains and advanced features.

Is this open-source?

Yes! Tunnlink is open-source under the GPLv3 license. You can view and contribute to the code on GitHub.

Can I host it myself?

Absolutely! Self-hosting instructions are available in our GitHub repository.

๐Ÿ“œ License & Legal

Tunnlink is licensed under the GPLv3 License.

Privacy: We don't collect or store any personal data. Tunnel traffic passes through our servers but is not logged or monitored.

๐Ÿค Contributing

We welcome contributions from the community! Here's how you can help:

  • Fork the repository on GitHub
  • Open issues for bugs or feature requests
  • Submit pull requests with improvements
  • Join discussions in our community channels
  • Help improve documentation