This repository has been archived on 2024-02-04. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
2022-12-19 12:39:18 -07:00
cmd Initial commit 2022-12-19 12:24:20 -07:00
internal Initial commit 2022-12-19 12:24:20 -07:00
.gitignore Initial commit 2022-12-19 12:24:20 -07:00
go.mod Initial commit 2022-12-19 12:24:20 -07:00
go.sum Initial commit 2022-12-19 12:24:20 -07:00
LICENSE Initial commit 2022-12-19 12:24:20 -07:00
main.go Initial commit 2022-12-19 12:24:20 -07:00
README.md Add README.md 2022-12-19 12:39:18 -07:00

dlnaprox

This program is a DLNA proxy. It proxies UDP multicast packets to and from the specified networks. These two networks are knowns as the inner and the outer network. The basic assumption is that the inner network can send normal IP requests to the outer network, but not visa versa. For example, a Docker container on a bridged docker network can only be accessed through forwarded ports. However, if it sends a request to an address on the same network as the host system, by default, the other host is reachable. This program forwards multicast broadcasts to 239.255.255.250:1900 to the other network. Since the spec says that responses to the broadcast should sent to port that originated it. So we keep a map of sockets so we can correctly proxy these responses.

Usage

dlnaprox -i 172.17.0.0/16 -o 192.168.0.0/24