opnsense-src/share
Lexi Winter cd5b92eb56 bridge: allow IP addresses on members to be disabled
add a new sysctl, net.link.bridge.member_ifaddrs, which defaults to 1.

if it is set to 1, bridge behaviour is unchanged.

if it is set to 0:

- an interface which has AF_INET6 or AF_INET addresses assigned cannot
  be added to a bridge.
- an interface in a bridge cannot have an AF_INET6 or AF_INET address
  assigned to it.
- the bridge will no longer consider the lladdrs on bridge members to be
  local addresses, i.e. frames sent to member lladdrs will not be
  processed by the host.

update bridge.4 to document this behaviour, as well as the existing
recommendation that IP addresses should not be configured on bridge
members anyway, even if it currently partially works.

in testing, setting this to 0 on a bridge with 50 member interfaces
improved throughput by 22% (4.61Gb/s -> 5.67Gb/s) across two member
epairs due to eliding the bridge member list walk in GRAB_OUR_PACKETS.

Reviewed by:	kp, des
Approved by:	des (mentor)
Differential Revision:	https://reviews.freebsd.org/D49995

(cherry picked from commit 0a1294f6c610948d7447ae276df74a6d5269b62e)
2025-07-09 10:05:41 +02:00
..
colldef Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
colldef_unicode Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
ctypedef ctypedef: Remove || true from localedef command to reveal error sooner 2024-10-21 12:24:17 +08:00
dict Remove $FreeBSD$: one-line bare tag 2023-08-16 11:55:20 -06:00
doc iwlwififw: remove Intel iwlwifi firmware from src.git 2025-04-18 14:36:03 +00:00
dtrace ipfw.d: Add required dependency declarations 2024-12-23 16:51:33 +00:00
examples release: use "runtime" instead of "minimal" for OCI image name 2025-04-30 07:55:41 +00:00
i18n Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
keys Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
man bridge: allow IP addresses on members to be disabled 2025-07-09 10:05:41 +02:00
misc bsd-family-tree: add OpenBSD 7.7 release 2025-05-01 12:34:30 -04:00
mk sys.mk: Improve ports compatibility hack guard 2025-05-01 21:14:24 +01:00
monetdef Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
monetdef_unicode Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
msgdef msgdef: fix NO and SI locales 2023-11-28 14:12:11 +07:00
msgdef_unicode Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
numericdef Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
numericdef_unicode Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
security Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
sendmail Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
skel Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
snmp Remove $FreeBSD$: two-line lua tag 2023-08-16 11:55:30 -06:00
syscons Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
tabset Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
termcap termcap: add entry for Alacritty 2025-04-30 10:03:27 +02:00
tests Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
timedef timedef: remove redundancy in Catalan date_fmt definitions 2024-11-21 22:52:06 -06:00
vt keymaps: add map for some Lenovo laptops found in Brazillian market 2025-04-22 08:10:47 -03:00
zoneinfo zoneinfo: don't install version 2025-05-24 11:33:02 +06:00
Makefile Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
Makefile.inc Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00