# tunnel.to > Public tunnels for localhost AI agents, developer apps, webhooks, SSE streams, and WebSocket services. tunnel.to creates public URLs for local services through outbound relay connections. It supports IPv4 and IPv6-capable local upstream targets. IPv6 literals must use URL bracket notation, for example `tunnelto '[::1]:3000'` or `tunnelto 'http://[::1]:3000'`. ## Core Pages - Home: https://tunnel.to/ - Downloads: https://tunnel.to/download - Pricing: https://tunnel.to/pricing - Relay status: https://tunnel.to/relays - Docs: https://tunnel.to/docs - IPv6 support: https://tunnel.to/docs/ipv6 - API registration: https://tunnel.to/docs/api-registration - OpenAPI schema: https://tunnel.to/openapi.json - Sitemap: https://tunnel.to/sitemap.xml ## IPv6 Notes - Client targets: bracketed IPv6 literals are supported. - Relay listeners: use `TUNNELTO_RELAY_ADDR=:8080` or `TUNNELTO_RELAY_ADDR=[::]:8080` for IPv6-capable binds, subject to operating system and proxy behavior. - Public DNS: publish AAAA records for relay hostnames when public IPv6 reachability is required. - Forwarded metadata: IPv6 source addresses are accepted in `X-Forwarded-For`, `X-Real-IP`, rate-limit keys, and blocklist entries. ## Install ```bash brew tap tunnel-to/tunnelto brew trust --formula tunnel-to/tunnelto/tunnelto brew install tunnelto tunnelto 3000 ``` ```bash curl -fsSL https://tunnel.to/install.sh | bash tunnelto '[::1]:3000' ```