Bug 194000 - Enhance if_bridge to forward pkts between spans marked private with the same group number
Summary: Enhance if_bridge to forward pkts between spans marked private with the same ...
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: CURRENT
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-net (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-28 17:32 UTC by neal
Modified: 2024-12-24 19:46 UTC (History)
0 users

See Also:


Attachments
Patch to add ifgroupnum to private bridge member (6.59 KB, patch)
2014-09-28 17:32 UTC, neal
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description neal 2014-09-28 17:32:35 UTC
Created attachment 147763 [details]
Patch to add ifgroupnum to private bridge member

Allow bridge span members, marked as private, to forward packets to members of the same group number.

This is most useful in a configuration as follows;

Private network consisting of sk0 and wlan0, Guest nework on wlan1

ifconfig bridge0 addm sk0 addm wlan0 addm wlan1 private sk0 private wlan0 private wlan0 ifgroupnum sk0 1 ifgroupnum wlan0 1 192.168.1.1/24

With a single dhcpd scope running on bridge0

This allows sk0 and wlan0 to forward traffic to/from each other, but not to/from wlan1

Add support for implementing arbitrary bridge span member configuration parameters in rc.conf, including the new ifgroupnum parameter

--- example rc.conf ---
cloned_interfaces="bridge0"
autobridge_interfaces="bridge0"
autobridge_bridge0="sk0 wlan0 wlan1"
bridge0_sk0="private ifgroupnum=1"
bridge0_wlan0="private ifgroupnum=1"
bridge0_wlan1="private"

wlans_ath0="wlan0 wlan1"

ifconfig_sk0="up"
ifconfig_ath0="up"
ifconfig_bridge0="192.168.1.1/24"
--- end ---

This patch touches;
 sys/net/if_bridgevar.h
 sys/net/if_bridge.c
 sbin/ifconfig/ifbridge.c
 sbin/ifconfig/ifconfig.8
 etc/rc.d/bridge

This patch was developed and tested on 10.0-Release.
It cleanly applies to 11.0-Current, and builds, and appears to function.