labcore-tunnel
v1.0.5
Published
Secure, fast, and multi-protocol reverse tunneling CLI
Readme
labcore-tunnel
A high-performance reverse tunnel CLI tool to securely expose your local applications to the internet. Built entirely in Node.js, it supports dynamic subdomains for HTTP, and raw TCP/UDP tunneling for game servers and databases.
Installation
Install the package globally via npm:
npm install -g labcore-tunnelUsage
Tunneling HTTP (Web Apps, APIs)
Expose a local web server running on port 3000:
labtunnel 3000Request a custom subdomain (https://my-app.tunnel.labcore.es):
labtunnel 3000 -s my-appForward to a specific local IP (e.g. Raspberry Pi on your LAN):
labtunnel 80 --host 192.168.1.50Tunneling TCP (Minecraft, MySQL, SSH)
Expose a local TCP server running on port 25565:
labtunnel 25565 --tcpWith a custom subdomain:
labtunnel 25565 --tcp -s my-serverForward to a specific local IP (e.g. Server on your LAN):
labtunnel 25565 --tcp --host 192.168.1.50Tunneling UDP (Real-time Games, VoIP)
Expose a local UDP server running on port 7777:
labtunnel 7777 --udpWith a custom subdomain:
labtunnel 7777 --udp -s my-gameForward to a specific local IP (e.g. Console on your LAN):
labtunnel 7777 --udp --host 192.168.1.50Programmatic Usage
You can also use labcore-tunnel as an imported module within your own Node.js applications.
For CommonJS (require):
const { createTunnel } = require('labcore-tunnel');For ES Modules (import):
import labcoreTunnel from 'labcore-tunnel';
const { createTunnel } = labcoreTunnel;Usage:
async function start() {
const tunnel = await createTunnel({
port: 3000,
subdomain: 'my-custom-app', // Optional
protocol: 'http', // 'http', 'tcp', or 'udp'
host: 'localhost' // Optional (defaults to localhost)
});
console.log('Tunnel is live at:', tunnel.url);
// When you want to stop the tunnel:
// tunnel.close();
}
start();Features
- Connection multiplexing and robust reconnections.
- Base64 streaming for binary compatibility across platforms.
- Support for complex TCP and UDP routing.
- No registration or auth tokens required.
