bcr 0.2.0
bcr is a modern, performance-optimized broadcast relay for Linux — a hardened Rust
replacement for pptpd's bcrelay. It forwards UDP broadcast/multicast traffic
between interfaces with allowlist filtering, optional NAT, and privilege dropping.
Highlights
- Debian packages for
amd64andarm64, including a systemd unit, a
bcr(8)man page, an example config, and maintainer scripts. Lintian-clean,
native versioning. - Safe by default: drops to an unprivileged user (
nobody) after opening
its raw sockets, deny-by-default config, strict config parsing. - Dependency cleanup toward Debian inclusion: removed the unused
socket2
dependency and widened thenixrequirement (>=0.30, <0.32) so distros can
build against what they ship (e.g. Debian'snix0.30.1).
Install
Download the .deb matching your architecture, then:
sudo apt install ./bcr_0.2.0_amd64.deb # or ./bcr_0.2.0_arm64.deb
sudoedit /etc/default/bcr # set BCR_INPUT / BCR_OUTPUT interfaces
sudo systemctl enable --now bcrThe service ships disabled and starts once interfaces are configured. See
man 8 bcr for the full reference.
Changes since v0.1.0
- Debian packaging:
.deb(amd64 + arm64), systemd unit, man page, maintainer scripts - Example
bcr.confandpackaging/build-deb.shcross-build script - Regularized versioning; bumped to 0.2.0
- Removed the unused
socket2dependency - Widened the
nixversion range for distro compatibility - Man page and package description fixes