Skip to content

netresearch/udp-proxy

Repository files navigation

udp-proxy

A small proxy that proxies UDP packets from one port to another depending on the source IP.

Installation

You can download the binary for your platform from the releases page or alternatively use the Docker image.

Usage

--port <port>     The port to listen on
--forward <source-ip>:<remote-ip>:<remote-port>
                  Forward packets from <source-ip> to <remote-ip>:<remote-port>, you can specify --forward multiple times
--log-level <level>
                  Set the log level (trace, debug, info, warn, error, fatal, panic)

With the binary:

./udp-proxy --port 5000 --forward <source-ip>:<remote-ip>:<remote-port>

Or with Docker:

docker run --rm -p <listen-port>:<listen-port>/udp ghcr.io/netresearch/udp-proxy --port <listen-port> --forward <source-ip>:<remote-ip>:<remote-port>

You can also use the following SystemD service file to run the proxy as a service:

[Unit]
Description=UDP Proxy
Documentation=https://github.com/netresearch/udp-proxy
After=network.target
Requires=network.target

[Service]
Type=simple
ExecStart=/usr/bin/udp-proxy --port 5000 --forward <source-ip>:<remote-ip>:<remote-port>
Restart=always

[Install]
WantedBy=multi-user.target

License

udp-proxy is licensed under the MIT license. See the included LICENSE file for more information.