https://github.com/reu/tinytun
Blazingly fast(tm) local HTTP tunnelling through HTTP 2. Simple clone of ngrok.
https://github.com/reu/tinytun
http http2 https networking tunneling
Last synced: 5 months ago
JSON representation
Blazingly fast(tm) local HTTP tunnelling through HTTP 2. Simple clone of ngrok.
- Host: GitHub
- URL: https://github.com/reu/tinytun
- Owner: reu
- Created: 2023-02-05T14:26:58.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-12-10T00:38:58.000Z (almost 2 years ago)
- Last Synced: 2025-04-30T20:14:29.356Z (5 months ago)
- Topics: http, http2, https, networking, tunneling
- Language: Rust
- Homepage:
- Size: 155 KB
- Stars: 13
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# tinytun
Generate public URLs for your locally running web servers. Simple clone of ngrok.```mermaid
sequenceDiagramparticipant Local WEB service
participant TinytunClient as Tinytun Client
participant TinytunServer as Tinytun Server
participant User as User outside
of local networkbox transparent Internal Network
participant Local WEB service
participant TinytunClient
endbox transparent External Network
participant TinytunServer
participant User
endTinytunClient->>TinytunServer: Create tunnel via an HTTP request
TinytunServer->>TinytunClient: Tunnel created and the
HTTP connection is "downgraded"
to a simple TCP tunnel
note over TinytunClient,TinytunServer: Tinytun Client starts an HTTP 2 server
over the downgraded connectionpar For each concurrent HTTP request
User->>+TinytunServer: HTTP request
TinytunServer->>TinytunClient: Multiplexes HTTP request
via an HTTP2 stream
TinytunClient->>Local WEB service: HTTP request
Local WEB service->>TinytunClient: HTTP response
TinytunClient->>TinytunServer: HTTP response
TinytunServer->>-User: HTTP response
end
```