Directed broadcast forwarding can be useful to send wake-on-LAN (WOL) from a different subnet.
By default Linux kernel doesn't forward directed broadcast
packets unless both of /proc/sys/net/ipv4/conf/all/bc_forwarding
and /proc/sys/net/ipv4/conf/$iface/bc_forwarding are set to 1.
I would like to add the following config options for enabling/disabling directed broadcast forwarding:
# Enable directed broadcast forwarding on this interface set interfaces $IFACE ip enable-directed-broadcast # disable directed broadcast forwarding on all interfaces system ip disable-directed-broadcast-forwarding
By default the global option is enabled but per-interface option is disabled.
Users can enable directed broadcast forwarding on specified inbound interfaces or completely disable this feature on all interfaces.
An example setup:
User (1.0.0.100/24) ---- (eth0: 1.0.0.1/24) Router (eth1: 2.0.0.1/24) ---- (2.0.0.200/24) Target Host
# By default, a packet with destination address 2.0.0.255 from 1.0.0.0/24 are not forwarded by the router. # On Router, run set interfaces ethernet eth0 ip enable-directed-broadcast # Now, the router will forward packets with destination address 2.0.0.255 from eth0 to eth1. Target Host will receive a copy of the broadcast packet.