Add UDP proxy support

This commit is contained in:
2026-03-30 21:26:53 -04:00
parent 9f90997bab
commit 7ed709ad3d
6 changed files with 377 additions and 46 deletions

View File

@ -4,7 +4,7 @@
- a web UI for viewing configured TCP proxies
- a Bitcask-backed data store for persisted proxy definitions
- a TCP proxy runner powered by `inet.af/tcpproxy`
- a TCP proxy runner built with Go's standard `net` package
This README is written for working in a GitHub Codespace.
@ -29,7 +29,7 @@ The project is functional enough to:
- start the web app
- load stored proxy definitions from `./infinite.db`
- create new noodles from the UI
- run active TCP proxies
- run active TCP and UDP proxies
- restrict a proxy to a specific source IP
- update expiration values in the database every second while a proxy is active
- close and delete expired noodles automatically
@ -39,7 +39,7 @@ The project is functional enough to:
Current limitations:
- there is no REST API; management is currently through the server-rendered UI
- proxy routing is TCP only in the current code path
- protocols are limited to TCP and UDP
## Running In A Codespace
@ -78,6 +78,7 @@ The main table includes an add row for creating a proxy with:
- `Name`
- `Allow From`: accepts `All` or a specific IP address, with the current client IP suggested
- `Proto`: choose `TCP` or `UDP`
- `Listen Port`
- `Destination Port`
- `Destination Host`