History log of /openbsd-current/share/man/man4/bridge.4
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.83 31-Mar-2022 naddy

man pages: add missing commas between subordinate and main clauses

jmc@ dislikes a comma before "then" in a conditional, so leave those
untouched.

ok jmc@


# 1.82 11-Nov-2021 jmc

remove switch(4) entry in SEE ALSO;


# 1.81 11-Nov-2021 claudio

Unhook switch.4 and update bridge.4 since some switch(4) specific ioctls
will be removed soon.
OK sthen@ kn@ patrick@


Revision tags: OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.80 27-Aug-2020 kn

Mention tpmr(4) using bridge ioctls


Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
# 1.79 16-Aug-2019 jmc

knock out useless Pp;


# 1.78 16-Aug-2019 dlg

STP works fine on etherip(4), it was gif(4) that lacked a MAC address.

getting etherip(4) to talk to a switch so i could verify this was
pretty fun.

remi@ pointed this bit of the manpage out somewhere, but it didn't
seem right anymore since etherip(4) was split out of gif(4). these
days if we have an interface that can be added to a bridge, we try
to make it look like an actual ethernet interface, which includes
having a mac address. we don't really have interfaces that change
modes and have these edge cases anymore.


# 1.77 10-May-2019 akoshibe

Document port protection support in switch(4). Also add SIOCBRDGSIFPROT to
list of ioctls in bridge(4).

OK ccardenas@ kn@ phessler@


Revision tags: OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.76 24-Oct-2017 jsg

remove defines for ioctls the kernel doesn't recognise
ok mpi@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.75 04-Sep-2016 jmc

tweak previous;


# 1.74 04-Sep-2016 yasuoka

Add switch(4) man page and update the bridge(4) man page about the
modification for switch(4).

ok goda


Revision tags: OPENBSD_6_0_BASE
# 1.73 07-Jun-2016 sthen

etherip(4) was introduced in 5.9 as a clean alternative to gif(4)'s layer-2
mode that was enabled when it was added to a bridge(4). Update the manual
pages to direct people towards using etherip(4) for this purpose.
Reads fine to jmc@, ok mpi@.

This code will be removed from gif(4) in the future. Switching should be
as simple as renaming the config file (hostname.gifX -> hostname.etheripX),
changing the interface name in hostname.bridgeX, and updating firewall
rules etc. to match - I've tested this with etherip+bridge+isakmpd+ospf
tunnels.


Revision tags: OPENBSD_5_9_BASE
# 1.72 14-Sep-2015 schwarze

convert .Fd #include to .In


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.71 21-Jan-2014 schwarze

obvious .Pa fixes; found with mandocdb(8)


Revision tags: OPENBSD_5_4_BASE
# 1.70 16-Jul-2013 schwarze

use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE
# 1.69 11-Dec-2009 jmc

blocknonip fix; from Holger Mikolon
ok deraadt


# 1.68 22-Nov-2009 deraadt

Move information describing the bridge and brconfig behaviour into
the relevant manual pages. Functionality is described in the (4)
pages, controlling the functionality in ifconfig(8), and the hostname.if
gains the old bridgename.if(5) functionality.
ok claudio jmc


# 1.67 09-Nov-2009 deraadt

vether(4) is a virtual ethernet device driver which can be used
so that a bridge-etherip-tunnel host can join into the bridge itself.
It is ridiculous that this capability was missing from our network
stack portfolio, considering we have bgp and ospf daemons...
discussed at length with claudio


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.66 03-Oct-2007 sthen

Clarifications about the interaction of bridge and PF.
From Geoff Steckel with a few changes

"please commit it (if no one objects)" jmc, "yes" henning


Revision tags: OPENBSD_4_2_BASE
# 1.65 31-May-2007 jmc

convert to new .Dd format;


Revision tags: OPENBSD_4_1_BASE
# 1.64 26-Oct-2006 jmc

no need to cause every reference to pf to be an Xr; on the other
hand, referencing `PF' is not so helpful either;

mutated from a diff from okan demirmen;


# 1.63 23-Oct-2006 jmc

remove trailing space;


# 1.62 22-Oct-2006 mcbride

'keep state' is now the default.

ok jmc


Revision tags: OPENBSD_4_0_BASE
# 1.61 12-Jul-2006 jmc

add includes; from peter philipp (pr #5177)
ok mickey


# 1.60 26-May-2006 deraadt

let us not talk about ipsecadm and vpn anymore; ok reyk


# 1.59 09-May-2006 jmc

no need to specify a "count" argument: ifconfig(8) handles these
"on demand";

from jan niemann;
ok deraadt


Revision tags: OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.58 11-Aug-2004 jaredy

sync to reality, document missing ioctls
mdoc fixes
normalize ioctl listing
slightly reorganize some parts
grammar, punctuation, and rewording fixes
remove crud introduced in rev 1.17 and never removed

Note: this update does *not* include the controversial stuff discussed
on h@; it contains what is in the header file.

help and ok (previously) jmc


# 1.57 04-May-2004 cedric

uppercase + whitespace fix from jmc@.


# 1.56 04-May-2004 cedric

Talk about return-rst improvements. noticed+ok deraadt@


Revision tags: OPENBSD_3_5_BASE
# 1.55 08-Dec-2003 markus

mention ifconfig create; sync synopsis like (Op Ar count). with jmc, deraadt


# 1.54 09-Nov-2003 jmc

remove .Pp's before lists and displays;


Revision tags: OPENBSD_3_4_BASE
# 1.53 09-Jul-2003 jmc

- fix lists/displays
- quote .Cd's
- add/remove .Pp's as necessary
- fix some .Re/.Rs's
- simplify macros


# 1.52 25-Jun-2003 henning

sync struct ifbrlreq with reality


# 1.51 11-Jun-2003 pb

document that is is unsupported to use return-rst/icmp or synproxy
on bridging firewalls

henning@ ok, spelling fixes from jmc@


# 1.50 06-Jun-2003 jmc

- section reorder
- some macro fixes
- kill whitespace at EOL


# 1.49 02-Jun-2003 jason

Nuke clause 3 & 4.


# 1.48 05-May-2003 jmc

corrections from Leandro Costa.

- corrections to tradenames
- updated URLs
- general typos

thanks Leandro!


Revision tags: OPENBSD_3_3_BASE
# 1.47 26-Feb-2003 jmc

various typos;


# 1.46 25-Feb-2003 jason

document SIOCBRDGARL; pointed out by jmc


Revision tags: OPENBSD_3_2_BASE
# 1.45 18-Sep-2002 deraadt

no photurisd


# 1.44 30-Jun-2002 miod

Do not end an enumerations of Xr with a dot, and do not let a dot hide
inside an enumeration as well.


# 1.43 30-Jun-2002 deraadt

Xr cleanup; seb@todesplanet.de


# 1.42 15-Jun-2002 angelos

Document transparent IPsec.


# 1.41 28-May-2002 jasoni

document when the bridge will fragment ip packets..
- ok jason@, dhartmei@


# 1.40 28-Apr-2002 deraadt

ip6 corrections; pb@sysfive.com


Revision tags: OPENBSD_3_1_BASE
# 1.39 15-Dec-2001 jason

add support for creating span ports so that one can snoop a bridge
from another interface/machine/network.


# 1.38 05-Dec-2001 hugh

Make nroff happy with .Sq rather than literal quotes.


Revision tags: OPENBSD_3_0_BASE
# 1.37 07-Oct-2001 dhartmei

Document bridge/pf interaction more appropriately. Ok Jason Wright.


# 1.36 05-Oct-2001 mpech

Powered by @mantoya:
o) start new sentence on a new line;
o) minor mdoc fixes;
millert@ ok

Tip of the day: www.mpechismazohist.com


# 1.35 03-Aug-2001 mpech

o) We don't like .Pp before/after .Sh;
o) .Nm always has argument in .Sh SYNOPSIS;
o) We always closes .Bl and .Bd tags;

millert@ ok


# 1.34 18-Jul-2001 kjell

Clarify the wording of the input-rules-only restriction. ok jason@


# 1.33 01-Jul-2001 angelos

IPF->PF Xr reference; openbsd@davidkrause.com


# 1.32 26-Jun-2001 angelos

PF-related text/references (jsyn@nthought.com)


# 1.31 23-Jun-2001 angelos

Remove loop detection bug, even though we may not be quite finished
with it yet. We should be done in the next few days.


# 1.30 30-May-2001 millert

comment out references to ipf to be replaced in the future with whatever packet filter we end up using


Revision tags: OPENBSD_2_9_BASE
# 1.29 30-Dec-2000 angelos

Update for use of gif.


# 1.28 21-Dec-2000 aaron

Various repairs.


# 1.27 10-Nov-2000 todd

.Sh AUTHOR -> AUTHORS, ok aaron@


Revision tags: OPENBSD_2_8_BASE
# 1.26 19-Oct-2000 hin

Remove merge conflict marker accidentaly left in this file.


# 1.25 18-Oct-2000 aaron

ethernet -> Ethernet


# 1.24 13-Oct-2000 aaron

Purely mdoc fixes.


# 1.23 03-Aug-2000 jason

fix conflict remnant; jakob@crt.se


Revision tags: OPENBSD_2_7_BASE
# 1.22 02-May-2000 jason

mention enc interfaces, too


# 1.21 03-Apr-2000 aaron

Remove trailing whitespace.


# 1.20 11-Feb-2000 jason

Use .An and Aq constructs


# 1.19 05-Feb-2000 deraadt

typo


# 1.18 02-Feb-2000 jason

only ipf input rules are used


# 1.17 25-Jan-2000 jason

add ethernet MAC filtering capability
also includes split of bridgeintr() with some optimizations for quicker
frame handling


# 1.16 10-Jan-2000 angelos

Document the blocknonip flag.


# 1.15 01-Jan-2000 deraadt

Xr bridgename.if(5)


# 1.14 06-Dec-1999 deraadt

there is no IP(4) manpage...


Revision tags: OPENBSD_2_6_BASE
# 1.13 23-Sep-1999 alex

Typo fixes.


# 1.12 03-Sep-1999 jason

Don't delete the cache on down/up transitions unless it's empty. Instead
flush the dynamics. Required other handling of the cache table to accomodate.
Modify SIOCBRDGFLUSH to handle flushall and flush dynamic requests.


# 1.11 09-Jul-1999 aaron

- remove all trailing whitespace
* except when it is escaped with a `\' at the end of the line
- fix remaining .Nm usage as well
- this is from a patch I received from kwesterback@home.com, who has been
working on some scripts for fixing formatting errors in mdoc'd man pages

Ok, so there could be a cost/benefit debate with this commit, but since I have
the patch we might as well commit it...


# 1.10 25-Jun-1999 jason

longer explanation of what a bridge is and why you'd use this one


# 1.9 17-May-1999 jason

Typos; Suzanne M. Lea <smlea@uncg.edu>


Revision tags: OPENBSD_2_5_BASE
# 1.8 31-Mar-1999 jason

finish documenting ioctls and errors


# 1.7 19-Mar-1999 jason

Add flag to allow some interfaces to not see packets with unknown destination.


# 1.6 19-Mar-1999 jason

Add the ability to mark an interface as "non-learning"


# 1.5 12-Mar-1999 jason

big overhaul:
o SNAP encapsulated IP filtering
o static address cache entries
o address deletion from cache
o dynamic & full cache flush
o filter packets based on each interface, not on the bridge as a whole
o KNF nits
o allow addition of ~IFF_UP interfaces
o man page & user level fixes to match the above


# 1.4 05-Mar-1999 jason

Make address cache expiration actually work and provide a knob
for adjusting the timeout.


# 1.3 01-Mar-1999 jason

reflect new ioctl interfaces
move sections around to match mdoc.template


# 1.2 27-Feb-1999 deraadt

spacing


# 1.1 26-Feb-1999 jason

Ethernet bridge/IP firewall driver.


# 1.82 11-Nov-2021 jmc

remove switch(4) entry in SEE ALSO;


# 1.81 11-Nov-2021 claudio

Unhook switch.4 and update bridge.4 since some switch(4) specific ioctls
will be removed soon.
OK sthen@ kn@ patrick@


Revision tags: OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.80 27-Aug-2020 kn

Mention tpmr(4) using bridge ioctls


Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
# 1.79 16-Aug-2019 jmc

knock out useless Pp;


# 1.78 16-Aug-2019 dlg

STP works fine on etherip(4), it was gif(4) that lacked a MAC address.

getting etherip(4) to talk to a switch so i could verify this was
pretty fun.

remi@ pointed this bit of the manpage out somewhere, but it didn't
seem right anymore since etherip(4) was split out of gif(4). these
days if we have an interface that can be added to a bridge, we try
to make it look like an actual ethernet interface, which includes
having a mac address. we don't really have interfaces that change
modes and have these edge cases anymore.


# 1.77 10-May-2019 akoshibe

Document port protection support in switch(4). Also add SIOCBRDGSIFPROT to
list of ioctls in bridge(4).

OK ccardenas@ kn@ phessler@


Revision tags: OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.76 24-Oct-2017 jsg

remove defines for ioctls the kernel doesn't recognise
ok mpi@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.75 04-Sep-2016 jmc

tweak previous;


# 1.74 04-Sep-2016 yasuoka

Add switch(4) man page and update the bridge(4) man page about the
modification for switch(4).

ok goda


Revision tags: OPENBSD_6_0_BASE
# 1.73 07-Jun-2016 sthen

etherip(4) was introduced in 5.9 as a clean alternative to gif(4)'s layer-2
mode that was enabled when it was added to a bridge(4). Update the manual
pages to direct people towards using etherip(4) for this purpose.
Reads fine to jmc@, ok mpi@.

This code will be removed from gif(4) in the future. Switching should be
as simple as renaming the config file (hostname.gifX -> hostname.etheripX),
changing the interface name in hostname.bridgeX, and updating firewall
rules etc. to match - I've tested this with etherip+bridge+isakmpd+ospf
tunnels.


Revision tags: OPENBSD_5_9_BASE
# 1.72 14-Sep-2015 schwarze

convert .Fd #include to .In


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.71 21-Jan-2014 schwarze

obvious .Pa fixes; found with mandocdb(8)


Revision tags: OPENBSD_5_4_BASE
# 1.70 16-Jul-2013 schwarze

use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE
# 1.69 11-Dec-2009 jmc

blocknonip fix; from Holger Mikolon
ok deraadt


# 1.68 22-Nov-2009 deraadt

Move information describing the bridge and brconfig behaviour into
the relevant manual pages. Functionality is described in the (4)
pages, controlling the functionality in ifconfig(8), and the hostname.if
gains the old bridgename.if(5) functionality.
ok claudio jmc


# 1.67 09-Nov-2009 deraadt

vether(4) is a virtual ethernet device driver which can be used
so that a bridge-etherip-tunnel host can join into the bridge itself.
It is ridiculous that this capability was missing from our network
stack portfolio, considering we have bgp and ospf daemons...
discussed at length with claudio


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.66 03-Oct-2007 sthen

Clarifications about the interaction of bridge and PF.
From Geoff Steckel with a few changes

"please commit it (if no one objects)" jmc, "yes" henning


Revision tags: OPENBSD_4_2_BASE
# 1.65 31-May-2007 jmc

convert to new .Dd format;


Revision tags: OPENBSD_4_1_BASE
# 1.64 26-Oct-2006 jmc

no need to cause every reference to pf to be an Xr; on the other
hand, referencing `PF' is not so helpful either;

mutated from a diff from okan demirmen;


# 1.63 23-Oct-2006 jmc

remove trailing space;


# 1.62 22-Oct-2006 mcbride

'keep state' is now the default.

ok jmc


Revision tags: OPENBSD_4_0_BASE
# 1.61 12-Jul-2006 jmc

add includes; from peter philipp (pr #5177)
ok mickey


# 1.60 26-May-2006 deraadt

let us not talk about ipsecadm and vpn anymore; ok reyk


# 1.59 09-May-2006 jmc

no need to specify a "count" argument: ifconfig(8) handles these
"on demand";

from jan niemann;
ok deraadt


Revision tags: OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.58 11-Aug-2004 jaredy

sync to reality, document missing ioctls
mdoc fixes
normalize ioctl listing
slightly reorganize some parts
grammar, punctuation, and rewording fixes
remove crud introduced in rev 1.17 and never removed

Note: this update does *not* include the controversial stuff discussed
on h@; it contains what is in the header file.

help and ok (previously) jmc


# 1.57 04-May-2004 cedric

uppercase + whitespace fix from jmc@.


# 1.56 04-May-2004 cedric

Talk about return-rst improvements. noticed+ok deraadt@


Revision tags: OPENBSD_3_5_BASE
# 1.55 08-Dec-2003 markus

mention ifconfig create; sync synopsis like (Op Ar count). with jmc, deraadt


# 1.54 09-Nov-2003 jmc

remove .Pp's before lists and displays;


Revision tags: OPENBSD_3_4_BASE
# 1.53 09-Jul-2003 jmc

- fix lists/displays
- quote .Cd's
- add/remove .Pp's as necessary
- fix some .Re/.Rs's
- simplify macros


# 1.52 25-Jun-2003 henning

sync struct ifbrlreq with reality


# 1.51 11-Jun-2003 pb

document that is is unsupported to use return-rst/icmp or synproxy
on bridging firewalls

henning@ ok, spelling fixes from jmc@


# 1.50 06-Jun-2003 jmc

- section reorder
- some macro fixes
- kill whitespace at EOL


# 1.49 02-Jun-2003 jason

Nuke clause 3 & 4.


# 1.48 05-May-2003 jmc

corrections from Leandro Costa.

- corrections to tradenames
- updated URLs
- general typos

thanks Leandro!


Revision tags: OPENBSD_3_3_BASE
# 1.47 26-Feb-2003 jmc

various typos;


# 1.46 25-Feb-2003 jason

document SIOCBRDGARL; pointed out by jmc


Revision tags: OPENBSD_3_2_BASE
# 1.45 18-Sep-2002 deraadt

no photurisd


# 1.44 30-Jun-2002 miod

Do not end an enumerations of Xr with a dot, and do not let a dot hide
inside an enumeration as well.


# 1.43 30-Jun-2002 deraadt

Xr cleanup; seb@todesplanet.de


# 1.42 15-Jun-2002 angelos

Document transparent IPsec.


# 1.41 28-May-2002 jasoni

document when the bridge will fragment ip packets..
- ok jason@, dhartmei@


# 1.40 28-Apr-2002 deraadt

ip6 corrections; pb@sysfive.com


Revision tags: OPENBSD_3_1_BASE
# 1.39 15-Dec-2001 jason

add support for creating span ports so that one can snoop a bridge
from another interface/machine/network.


# 1.38 05-Dec-2001 hugh

Make nroff happy with .Sq rather than literal quotes.


Revision tags: OPENBSD_3_0_BASE
# 1.37 07-Oct-2001 dhartmei

Document bridge/pf interaction more appropriately. Ok Jason Wright.


# 1.36 05-Oct-2001 mpech

Powered by @mantoya:
o) start new sentence on a new line;
o) minor mdoc fixes;
millert@ ok

Tip of the day: www.mpechismazohist.com


# 1.35 03-Aug-2001 mpech

o) We don't like .Pp before/after .Sh;
o) .Nm always has argument in .Sh SYNOPSIS;
o) We always closes .Bl and .Bd tags;

millert@ ok


# 1.34 18-Jul-2001 kjell

Clarify the wording of the input-rules-only restriction. ok jason@


# 1.33 01-Jul-2001 angelos

IPF->PF Xr reference; openbsd@davidkrause.com


# 1.32 26-Jun-2001 angelos

PF-related text/references (jsyn@nthought.com)


# 1.31 23-Jun-2001 angelos

Remove loop detection bug, even though we may not be quite finished
with it yet. We should be done in the next few days.


# 1.30 30-May-2001 millert

comment out references to ipf to be replaced in the future with whatever packet filter we end up using


Revision tags: OPENBSD_2_9_BASE
# 1.29 30-Dec-2000 angelos

Update for use of gif.


# 1.28 21-Dec-2000 aaron

Various repairs.


# 1.27 10-Nov-2000 todd

.Sh AUTHOR -> AUTHORS, ok aaron@


Revision tags: OPENBSD_2_8_BASE
# 1.26 19-Oct-2000 hin

Remove merge conflict marker accidentaly left in this file.


# 1.25 18-Oct-2000 aaron

ethernet -> Ethernet


# 1.24 13-Oct-2000 aaron

Purely mdoc fixes.


# 1.23 03-Aug-2000 jason

fix conflict remnant; jakob@crt.se


Revision tags: OPENBSD_2_7_BASE
# 1.22 02-May-2000 jason

mention enc interfaces, too


# 1.21 03-Apr-2000 aaron

Remove trailing whitespace.


# 1.20 11-Feb-2000 jason

Use .An and Aq constructs


# 1.19 05-Feb-2000 deraadt

typo


# 1.18 02-Feb-2000 jason

only ipf input rules are used


# 1.17 25-Jan-2000 jason

add ethernet MAC filtering capability
also includes split of bridgeintr() with some optimizations for quicker
frame handling


# 1.16 10-Jan-2000 angelos

Document the blocknonip flag.


# 1.15 01-Jan-2000 deraadt

Xr bridgename.if(5)


# 1.14 06-Dec-1999 deraadt

there is no IP(4) manpage...


Revision tags: OPENBSD_2_6_BASE
# 1.13 23-Sep-1999 alex

Typo fixes.


# 1.12 03-Sep-1999 jason

Don't delete the cache on down/up transitions unless it's empty. Instead
flush the dynamics. Required other handling of the cache table to accomodate.
Modify SIOCBRDGFLUSH to handle flushall and flush dynamic requests.


# 1.11 09-Jul-1999 aaron

- remove all trailing whitespace
* except when it is escaped with a `\' at the end of the line
- fix remaining .Nm usage as well
- this is from a patch I received from kwesterback@home.com, who has been
working on some scripts for fixing formatting errors in mdoc'd man pages

Ok, so there could be a cost/benefit debate with this commit, but since I have
the patch we might as well commit it...


# 1.10 25-Jun-1999 jason

longer explanation of what a bridge is and why you'd use this one


# 1.9 17-May-1999 jason

Typos; Suzanne M. Lea <smlea@uncg.edu>


Revision tags: OPENBSD_2_5_BASE
# 1.8 31-Mar-1999 jason

finish documenting ioctls and errors


# 1.7 19-Mar-1999 jason

Add flag to allow some interfaces to not see packets with unknown destination.


# 1.6 19-Mar-1999 jason

Add the ability to mark an interface as "non-learning"


# 1.5 12-Mar-1999 jason

big overhaul:
o SNAP encapsulated IP filtering
o static address cache entries
o address deletion from cache
o dynamic & full cache flush
o filter packets based on each interface, not on the bridge as a whole
o KNF nits
o allow addition of ~IFF_UP interfaces
o man page & user level fixes to match the above


# 1.4 05-Mar-1999 jason

Make address cache expiration actually work and provide a knob
for adjusting the timeout.


# 1.3 01-Mar-1999 jason

reflect new ioctl interfaces
move sections around to match mdoc.template


# 1.2 27-Feb-1999 deraadt

spacing


# 1.1 26-Feb-1999 jason

Ethernet bridge/IP firewall driver.


# 1.81 11-Nov-2021 claudio

Unhook switch.4 and update bridge.4 since some switch(4) specific ioctls
will be removed soon.
OK sthen@ kn@ patrick@


Revision tags: OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.80 27-Aug-2020 kn

Mention tpmr(4) using bridge ioctls


Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
# 1.79 16-Aug-2019 jmc

knock out useless Pp;


# 1.78 16-Aug-2019 dlg

STP works fine on etherip(4), it was gif(4) that lacked a MAC address.

getting etherip(4) to talk to a switch so i could verify this was
pretty fun.

remi@ pointed this bit of the manpage out somewhere, but it didn't
seem right anymore since etherip(4) was split out of gif(4). these
days if we have an interface that can be added to a bridge, we try
to make it look like an actual ethernet interface, which includes
having a mac address. we don't really have interfaces that change
modes and have these edge cases anymore.


# 1.77 10-May-2019 akoshibe

Document port protection support in switch(4). Also add SIOCBRDGSIFPROT to
list of ioctls in bridge(4).

OK ccardenas@ kn@ phessler@


Revision tags: OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.76 24-Oct-2017 jsg

remove defines for ioctls the kernel doesn't recognise
ok mpi@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.75 04-Sep-2016 jmc

tweak previous;


# 1.74 04-Sep-2016 yasuoka

Add switch(4) man page and update the bridge(4) man page about the
modification for switch(4).

ok goda


Revision tags: OPENBSD_6_0_BASE
# 1.73 07-Jun-2016 sthen

etherip(4) was introduced in 5.9 as a clean alternative to gif(4)'s layer-2
mode that was enabled when it was added to a bridge(4). Update the manual
pages to direct people towards using etherip(4) for this purpose.
Reads fine to jmc@, ok mpi@.

This code will be removed from gif(4) in the future. Switching should be
as simple as renaming the config file (hostname.gifX -> hostname.etheripX),
changing the interface name in hostname.bridgeX, and updating firewall
rules etc. to match - I've tested this with etherip+bridge+isakmpd+ospf
tunnels.


Revision tags: OPENBSD_5_9_BASE
# 1.72 14-Sep-2015 schwarze

convert .Fd #include to .In


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.71 21-Jan-2014 schwarze

obvious .Pa fixes; found with mandocdb(8)


Revision tags: OPENBSD_5_4_BASE
# 1.70 16-Jul-2013 schwarze

use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE
# 1.69 11-Dec-2009 jmc

blocknonip fix; from Holger Mikolon
ok deraadt


# 1.68 22-Nov-2009 deraadt

Move information describing the bridge and brconfig behaviour into
the relevant manual pages. Functionality is described in the (4)
pages, controlling the functionality in ifconfig(8), and the hostname.if
gains the old bridgename.if(5) functionality.
ok claudio jmc


# 1.67 09-Nov-2009 deraadt

vether(4) is a virtual ethernet device driver which can be used
so that a bridge-etherip-tunnel host can join into the bridge itself.
It is ridiculous that this capability was missing from our network
stack portfolio, considering we have bgp and ospf daemons...
discussed at length with claudio


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.66 03-Oct-2007 sthen

Clarifications about the interaction of bridge and PF.
From Geoff Steckel with a few changes

"please commit it (if no one objects)" jmc, "yes" henning


Revision tags: OPENBSD_4_2_BASE
# 1.65 31-May-2007 jmc

convert to new .Dd format;


Revision tags: OPENBSD_4_1_BASE
# 1.64 26-Oct-2006 jmc

no need to cause every reference to pf to be an Xr; on the other
hand, referencing `PF' is not so helpful either;

mutated from a diff from okan demirmen;


# 1.63 23-Oct-2006 jmc

remove trailing space;


# 1.62 22-Oct-2006 mcbride

'keep state' is now the default.

ok jmc


Revision tags: OPENBSD_4_0_BASE
# 1.61 12-Jul-2006 jmc

add includes; from peter philipp (pr #5177)
ok mickey


# 1.60 26-May-2006 deraadt

let us not talk about ipsecadm and vpn anymore; ok reyk


# 1.59 09-May-2006 jmc

no need to specify a "count" argument: ifconfig(8) handles these
"on demand";

from jan niemann;
ok deraadt


Revision tags: OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.58 11-Aug-2004 jaredy

sync to reality, document missing ioctls
mdoc fixes
normalize ioctl listing
slightly reorganize some parts
grammar, punctuation, and rewording fixes
remove crud introduced in rev 1.17 and never removed

Note: this update does *not* include the controversial stuff discussed
on h@; it contains what is in the header file.

help and ok (previously) jmc


# 1.57 04-May-2004 cedric

uppercase + whitespace fix from jmc@.


# 1.56 04-May-2004 cedric

Talk about return-rst improvements. noticed+ok deraadt@


Revision tags: OPENBSD_3_5_BASE
# 1.55 08-Dec-2003 markus

mention ifconfig create; sync synopsis like (Op Ar count). with jmc, deraadt


# 1.54 09-Nov-2003 jmc

remove .Pp's before lists and displays;


Revision tags: OPENBSD_3_4_BASE
# 1.53 09-Jul-2003 jmc

- fix lists/displays
- quote .Cd's
- add/remove .Pp's as necessary
- fix some .Re/.Rs's
- simplify macros


# 1.52 25-Jun-2003 henning

sync struct ifbrlreq with reality


# 1.51 11-Jun-2003 pb

document that is is unsupported to use return-rst/icmp or synproxy
on bridging firewalls

henning@ ok, spelling fixes from jmc@


# 1.50 06-Jun-2003 jmc

- section reorder
- some macro fixes
- kill whitespace at EOL


# 1.49 02-Jun-2003 jason

Nuke clause 3 & 4.


# 1.48 05-May-2003 jmc

corrections from Leandro Costa.

- corrections to tradenames
- updated URLs
- general typos

thanks Leandro!


Revision tags: OPENBSD_3_3_BASE
# 1.47 26-Feb-2003 jmc

various typos;


# 1.46 25-Feb-2003 jason

document SIOCBRDGARL; pointed out by jmc


Revision tags: OPENBSD_3_2_BASE
# 1.45 18-Sep-2002 deraadt

no photurisd


# 1.44 30-Jun-2002 miod

Do not end an enumerations of Xr with a dot, and do not let a dot hide
inside an enumeration as well.


# 1.43 30-Jun-2002 deraadt

Xr cleanup; seb@todesplanet.de


# 1.42 15-Jun-2002 angelos

Document transparent IPsec.


# 1.41 28-May-2002 jasoni

document when the bridge will fragment ip packets..
- ok jason@, dhartmei@


# 1.40 28-Apr-2002 deraadt

ip6 corrections; pb@sysfive.com


Revision tags: OPENBSD_3_1_BASE
# 1.39 15-Dec-2001 jason

add support for creating span ports so that one can snoop a bridge
from another interface/machine/network.


# 1.38 05-Dec-2001 hugh

Make nroff happy with .Sq rather than literal quotes.


Revision tags: OPENBSD_3_0_BASE
# 1.37 07-Oct-2001 dhartmei

Document bridge/pf interaction more appropriately. Ok Jason Wright.


# 1.36 05-Oct-2001 mpech

Powered by @mantoya:
o) start new sentence on a new line;
o) minor mdoc fixes;
millert@ ok

Tip of the day: www.mpechismazohist.com


# 1.35 03-Aug-2001 mpech

o) We don't like .Pp before/after .Sh;
o) .Nm always has argument in .Sh SYNOPSIS;
o) We always closes .Bl and .Bd tags;

millert@ ok


# 1.34 18-Jul-2001 kjell

Clarify the wording of the input-rules-only restriction. ok jason@


# 1.33 01-Jul-2001 angelos

IPF->PF Xr reference; openbsd@davidkrause.com


# 1.32 26-Jun-2001 angelos

PF-related text/references (jsyn@nthought.com)


# 1.31 23-Jun-2001 angelos

Remove loop detection bug, even though we may not be quite finished
with it yet. We should be done in the next few days.


# 1.30 30-May-2001 millert

comment out references to ipf to be replaced in the future with whatever packet filter we end up using


Revision tags: OPENBSD_2_9_BASE
# 1.29 30-Dec-2000 angelos

Update for use of gif.


# 1.28 21-Dec-2000 aaron

Various repairs.


# 1.27 10-Nov-2000 todd

.Sh AUTHOR -> AUTHORS, ok aaron@


Revision tags: OPENBSD_2_8_BASE
# 1.26 19-Oct-2000 hin

Remove merge conflict marker accidentaly left in this file.


# 1.25 18-Oct-2000 aaron

ethernet -> Ethernet


# 1.24 13-Oct-2000 aaron

Purely mdoc fixes.


# 1.23 03-Aug-2000 jason

fix conflict remnant; jakob@crt.se


Revision tags: OPENBSD_2_7_BASE
# 1.22 02-May-2000 jason

mention enc interfaces, too


# 1.21 03-Apr-2000 aaron

Remove trailing whitespace.


# 1.20 11-Feb-2000 jason

Use .An and Aq constructs


# 1.19 05-Feb-2000 deraadt

typo


# 1.18 02-Feb-2000 jason

only ipf input rules are used


# 1.17 25-Jan-2000 jason

add ethernet MAC filtering capability
also includes split of bridgeintr() with some optimizations for quicker
frame handling


# 1.16 10-Jan-2000 angelos

Document the blocknonip flag.


# 1.15 01-Jan-2000 deraadt

Xr bridgename.if(5)


# 1.14 06-Dec-1999 deraadt

there is no IP(4) manpage...


Revision tags: OPENBSD_2_6_BASE
# 1.13 23-Sep-1999 alex

Typo fixes.


# 1.12 03-Sep-1999 jason

Don't delete the cache on down/up transitions unless it's empty. Instead
flush the dynamics. Required other handling of the cache table to accomodate.
Modify SIOCBRDGFLUSH to handle flushall and flush dynamic requests.


# 1.11 09-Jul-1999 aaron

- remove all trailing whitespace
* except when it is escaped with a `\' at the end of the line
- fix remaining .Nm usage as well
- this is from a patch I received from kwesterback@home.com, who has been
working on some scripts for fixing formatting errors in mdoc'd man pages

Ok, so there could be a cost/benefit debate with this commit, but since I have
the patch we might as well commit it...


# 1.10 25-Jun-1999 jason

longer explanation of what a bridge is and why you'd use this one


# 1.9 17-May-1999 jason

Typos; Suzanne M. Lea <smlea@uncg.edu>


Revision tags: OPENBSD_2_5_BASE
# 1.8 31-Mar-1999 jason

finish documenting ioctls and errors


# 1.7 19-Mar-1999 jason

Add flag to allow some interfaces to not see packets with unknown destination.


# 1.6 19-Mar-1999 jason

Add the ability to mark an interface as "non-learning"


# 1.5 12-Mar-1999 jason

big overhaul:
o SNAP encapsulated IP filtering
o static address cache entries
o address deletion from cache
o dynamic & full cache flush
o filter packets based on each interface, not on the bridge as a whole
o KNF nits
o allow addition of ~IFF_UP interfaces
o man page & user level fixes to match the above


# 1.4 05-Mar-1999 jason

Make address cache expiration actually work and provide a knob
for adjusting the timeout.


# 1.3 01-Mar-1999 jason

reflect new ioctl interfaces
move sections around to match mdoc.template


# 1.2 27-Feb-1999 deraadt

spacing


# 1.1 26-Feb-1999 jason

Ethernet bridge/IP firewall driver.


# 1.80 27-Aug-2020 kn

Mention tpmr(4) using bridge ioctls


Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
# 1.79 16-Aug-2019 jmc

knock out useless Pp;


# 1.78 16-Aug-2019 dlg

STP works fine on etherip(4), it was gif(4) that lacked a MAC address.

getting etherip(4) to talk to a switch so i could verify this was
pretty fun.

remi@ pointed this bit of the manpage out somewhere, but it didn't
seem right anymore since etherip(4) was split out of gif(4). these
days if we have an interface that can be added to a bridge, we try
to make it look like an actual ethernet interface, which includes
having a mac address. we don't really have interfaces that change
modes and have these edge cases anymore.


# 1.77 10-May-2019 akoshibe

Document port protection support in switch(4). Also add SIOCBRDGSIFPROT to
list of ioctls in bridge(4).

OK ccardenas@ kn@ phessler@


Revision tags: OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.76 24-Oct-2017 jsg

remove defines for ioctls the kernel doesn't recognise
ok mpi@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.75 04-Sep-2016 jmc

tweak previous;


# 1.74 04-Sep-2016 yasuoka

Add switch(4) man page and update the bridge(4) man page about the
modification for switch(4).

ok goda


Revision tags: OPENBSD_6_0_BASE
# 1.73 07-Jun-2016 sthen

etherip(4) was introduced in 5.9 as a clean alternative to gif(4)'s layer-2
mode that was enabled when it was added to a bridge(4). Update the manual
pages to direct people towards using etherip(4) for this purpose.
Reads fine to jmc@, ok mpi@.

This code will be removed from gif(4) in the future. Switching should be
as simple as renaming the config file (hostname.gifX -> hostname.etheripX),
changing the interface name in hostname.bridgeX, and updating firewall
rules etc. to match - I've tested this with etherip+bridge+isakmpd+ospf
tunnels.


Revision tags: OPENBSD_5_9_BASE
# 1.72 14-Sep-2015 schwarze

convert .Fd #include to .In


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.71 21-Jan-2014 schwarze

obvious .Pa fixes; found with mandocdb(8)


Revision tags: OPENBSD_5_4_BASE
# 1.70 16-Jul-2013 schwarze

use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE
# 1.69 11-Dec-2009 jmc

blocknonip fix; from Holger Mikolon
ok deraadt


# 1.68 22-Nov-2009 deraadt

Move information describing the bridge and brconfig behaviour into
the relevant manual pages. Functionality is described in the (4)
pages, controlling the functionality in ifconfig(8), and the hostname.if
gains the old bridgename.if(5) functionality.
ok claudio jmc


# 1.67 09-Nov-2009 deraadt

vether(4) is a virtual ethernet device driver which can be used
so that a bridge-etherip-tunnel host can join into the bridge itself.
It is ridiculous that this capability was missing from our network
stack portfolio, considering we have bgp and ospf daemons...
discussed at length with claudio


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.66 03-Oct-2007 sthen

Clarifications about the interaction of bridge and PF.
From Geoff Steckel with a few changes

"please commit it (if no one objects)" jmc, "yes" henning


Revision tags: OPENBSD_4_2_BASE
# 1.65 31-May-2007 jmc

convert to new .Dd format;


Revision tags: OPENBSD_4_1_BASE
# 1.64 26-Oct-2006 jmc

no need to cause every reference to pf to be an Xr; on the other
hand, referencing `PF' is not so helpful either;

mutated from a diff from okan demirmen;


# 1.63 23-Oct-2006 jmc

remove trailing space;


# 1.62 22-Oct-2006 mcbride

'keep state' is now the default.

ok jmc


Revision tags: OPENBSD_4_0_BASE
# 1.61 12-Jul-2006 jmc

add includes; from peter philipp (pr #5177)
ok mickey


# 1.60 26-May-2006 deraadt

let us not talk about ipsecadm and vpn anymore; ok reyk


# 1.59 09-May-2006 jmc

no need to specify a "count" argument: ifconfig(8) handles these
"on demand";

from jan niemann;
ok deraadt


Revision tags: OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.58 11-Aug-2004 jaredy

sync to reality, document missing ioctls
mdoc fixes
normalize ioctl listing
slightly reorganize some parts
grammar, punctuation, and rewording fixes
remove crud introduced in rev 1.17 and never removed

Note: this update does *not* include the controversial stuff discussed
on h@; it contains what is in the header file.

help and ok (previously) jmc


# 1.57 04-May-2004 cedric

uppercase + whitespace fix from jmc@.


# 1.56 04-May-2004 cedric

Talk about return-rst improvements. noticed+ok deraadt@


Revision tags: OPENBSD_3_5_BASE
# 1.55 08-Dec-2003 markus

mention ifconfig create; sync synopsis like (Op Ar count). with jmc, deraadt


# 1.54 09-Nov-2003 jmc

remove .Pp's before lists and displays;


Revision tags: OPENBSD_3_4_BASE
# 1.53 09-Jul-2003 jmc

- fix lists/displays
- quote .Cd's
- add/remove .Pp's as necessary
- fix some .Re/.Rs's
- simplify macros


# 1.52 25-Jun-2003 henning

sync struct ifbrlreq with reality


# 1.51 11-Jun-2003 pb

document that is is unsupported to use return-rst/icmp or synproxy
on bridging firewalls

henning@ ok, spelling fixes from jmc@


# 1.50 06-Jun-2003 jmc

- section reorder
- some macro fixes
- kill whitespace at EOL


# 1.49 02-Jun-2003 jason

Nuke clause 3 & 4.


# 1.48 05-May-2003 jmc

corrections from Leandro Costa.

- corrections to tradenames
- updated URLs
- general typos

thanks Leandro!


Revision tags: OPENBSD_3_3_BASE
# 1.47 26-Feb-2003 jmc

various typos;


# 1.46 25-Feb-2003 jason

document SIOCBRDGARL; pointed out by jmc


Revision tags: OPENBSD_3_2_BASE
# 1.45 18-Sep-2002 deraadt

no photurisd


# 1.44 30-Jun-2002 miod

Do not end an enumerations of Xr with a dot, and do not let a dot hide
inside an enumeration as well.


# 1.43 30-Jun-2002 deraadt

Xr cleanup; seb@todesplanet.de


# 1.42 15-Jun-2002 angelos

Document transparent IPsec.


# 1.41 28-May-2002 jasoni

document when the bridge will fragment ip packets..
- ok jason@, dhartmei@


# 1.40 28-Apr-2002 deraadt

ip6 corrections; pb@sysfive.com


Revision tags: OPENBSD_3_1_BASE
# 1.39 15-Dec-2001 jason

add support for creating span ports so that one can snoop a bridge
from another interface/machine/network.


# 1.38 05-Dec-2001 hugh

Make nroff happy with .Sq rather than literal quotes.


Revision tags: OPENBSD_3_0_BASE
# 1.37 07-Oct-2001 dhartmei

Document bridge/pf interaction more appropriately. Ok Jason Wright.


# 1.36 05-Oct-2001 mpech

Powered by @mantoya:
o) start new sentence on a new line;
o) minor mdoc fixes;
millert@ ok

Tip of the day: www.mpechismazohist.com


# 1.35 03-Aug-2001 mpech

o) We don't like .Pp before/after .Sh;
o) .Nm always has argument in .Sh SYNOPSIS;
o) We always closes .Bl and .Bd tags;

millert@ ok


# 1.34 18-Jul-2001 kjell

Clarify the wording of the input-rules-only restriction. ok jason@


# 1.33 01-Jul-2001 angelos

IPF->PF Xr reference; openbsd@davidkrause.com


# 1.32 26-Jun-2001 angelos

PF-related text/references (jsyn@nthought.com)


# 1.31 23-Jun-2001 angelos

Remove loop detection bug, even though we may not be quite finished
with it yet. We should be done in the next few days.


# 1.30 30-May-2001 millert

comment out references to ipf to be replaced in the future with whatever packet filter we end up using


Revision tags: OPENBSD_2_9_BASE
# 1.29 30-Dec-2000 angelos

Update for use of gif.


# 1.28 21-Dec-2000 aaron

Various repairs.


# 1.27 10-Nov-2000 todd

.Sh AUTHOR -> AUTHORS, ok aaron@


Revision tags: OPENBSD_2_8_BASE
# 1.26 19-Oct-2000 hin

Remove merge conflict marker accidentaly left in this file.


# 1.25 18-Oct-2000 aaron

ethernet -> Ethernet


# 1.24 13-Oct-2000 aaron

Purely mdoc fixes.


# 1.23 03-Aug-2000 jason

fix conflict remnant; jakob@crt.se


Revision tags: OPENBSD_2_7_BASE
# 1.22 02-May-2000 jason

mention enc interfaces, too


# 1.21 03-Apr-2000 aaron

Remove trailing whitespace.


# 1.20 11-Feb-2000 jason

Use .An and Aq constructs


# 1.19 05-Feb-2000 deraadt

typo


# 1.18 02-Feb-2000 jason

only ipf input rules are used


# 1.17 25-Jan-2000 jason

add ethernet MAC filtering capability
also includes split of bridgeintr() with some optimizations for quicker
frame handling


# 1.16 10-Jan-2000 angelos

Document the blocknonip flag.


# 1.15 01-Jan-2000 deraadt

Xr bridgename.if(5)


# 1.14 06-Dec-1999 deraadt

there is no IP(4) manpage...


Revision tags: OPENBSD_2_6_BASE
# 1.13 23-Sep-1999 alex

Typo fixes.


# 1.12 03-Sep-1999 jason

Don't delete the cache on down/up transitions unless it's empty. Instead
flush the dynamics. Required other handling of the cache table to accomodate.
Modify SIOCBRDGFLUSH to handle flushall and flush dynamic requests.


# 1.11 09-Jul-1999 aaron

- remove all trailing whitespace
* except when it is escaped with a `\' at the end of the line
- fix remaining .Nm usage as well
- this is from a patch I received from kwesterback@home.com, who has been
working on some scripts for fixing formatting errors in mdoc'd man pages

Ok, so there could be a cost/benefit debate with this commit, but since I have
the patch we might as well commit it...


# 1.10 25-Jun-1999 jason

longer explanation of what a bridge is and why you'd use this one


# 1.9 17-May-1999 jason

Typos; Suzanne M. Lea <smlea@uncg.edu>


Revision tags: OPENBSD_2_5_BASE
# 1.8 31-Mar-1999 jason

finish documenting ioctls and errors


# 1.7 19-Mar-1999 jason

Add flag to allow some interfaces to not see packets with unknown destination.


# 1.6 19-Mar-1999 jason

Add the ability to mark an interface as "non-learning"


# 1.5 12-Mar-1999 jason

big overhaul:
o SNAP encapsulated IP filtering
o static address cache entries
o address deletion from cache
o dynamic & full cache flush
o filter packets based on each interface, not on the bridge as a whole
o KNF nits
o allow addition of ~IFF_UP interfaces
o man page & user level fixes to match the above


# 1.4 05-Mar-1999 jason

Make address cache expiration actually work and provide a knob
for adjusting the timeout.


# 1.3 01-Mar-1999 jason

reflect new ioctl interfaces
move sections around to match mdoc.template


# 1.2 27-Feb-1999 deraadt

spacing


# 1.1 26-Feb-1999 jason

Ethernet bridge/IP firewall driver.


# 1.79 16-Aug-2019 jmc

knock out useless Pp;


# 1.78 16-Aug-2019 dlg

STP works fine on etherip(4), it was gif(4) that lacked a MAC address.

getting etherip(4) to talk to a switch so i could verify this was
pretty fun.

remi@ pointed this bit of the manpage out somewhere, but it didn't
seem right anymore since etherip(4) was split out of gif(4). these
days if we have an interface that can be added to a bridge, we try
to make it look like an actual ethernet interface, which includes
having a mac address. we don't really have interfaces that change
modes and have these edge cases anymore.


# 1.77 10-May-2019 akoshibe

Document port protection support in switch(4). Also add SIOCBRDGSIFPROT to
list of ioctls in bridge(4).

OK ccardenas@ kn@ phessler@


Revision tags: OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.76 24-Oct-2017 jsg

remove defines for ioctls the kernel doesn't recognise
ok mpi@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.75 04-Sep-2016 jmc

tweak previous;


# 1.74 04-Sep-2016 yasuoka

Add switch(4) man page and update the bridge(4) man page about the
modification for switch(4).

ok goda


Revision tags: OPENBSD_6_0_BASE
# 1.73 07-Jun-2016 sthen

etherip(4) was introduced in 5.9 as a clean alternative to gif(4)'s layer-2
mode that was enabled when it was added to a bridge(4). Update the manual
pages to direct people towards using etherip(4) for this purpose.
Reads fine to jmc@, ok mpi@.

This code will be removed from gif(4) in the future. Switching should be
as simple as renaming the config file (hostname.gifX -> hostname.etheripX),
changing the interface name in hostname.bridgeX, and updating firewall
rules etc. to match - I've tested this with etherip+bridge+isakmpd+ospf
tunnels.


Revision tags: OPENBSD_5_9_BASE
# 1.72 14-Sep-2015 schwarze

convert .Fd #include to .In


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.71 21-Jan-2014 schwarze

obvious .Pa fixes; found with mandocdb(8)


Revision tags: OPENBSD_5_4_BASE
# 1.70 16-Jul-2013 schwarze

use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE
# 1.69 11-Dec-2009 jmc

blocknonip fix; from Holger Mikolon
ok deraadt


# 1.68 22-Nov-2009 deraadt

Move information describing the bridge and brconfig behaviour into
the relevant manual pages. Functionality is described in the (4)
pages, controlling the functionality in ifconfig(8), and the hostname.if
gains the old bridgename.if(5) functionality.
ok claudio jmc


# 1.67 09-Nov-2009 deraadt

vether(4) is a virtual ethernet device driver which can be used
so that a bridge-etherip-tunnel host can join into the bridge itself.
It is ridiculous that this capability was missing from our network
stack portfolio, considering we have bgp and ospf daemons...
discussed at length with claudio


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.66 03-Oct-2007 sthen

Clarifications about the interaction of bridge and PF.
From Geoff Steckel with a few changes

"please commit it (if no one objects)" jmc, "yes" henning


Revision tags: OPENBSD_4_2_BASE
# 1.65 31-May-2007 jmc

convert to new .Dd format;


Revision tags: OPENBSD_4_1_BASE
# 1.64 26-Oct-2006 jmc

no need to cause every reference to pf to be an Xr; on the other
hand, referencing `PF' is not so helpful either;

mutated from a diff from okan demirmen;


# 1.63 23-Oct-2006 jmc

remove trailing space;


# 1.62 22-Oct-2006 mcbride

'keep state' is now the default.

ok jmc


Revision tags: OPENBSD_4_0_BASE
# 1.61 12-Jul-2006 jmc

add includes; from peter philipp (pr #5177)
ok mickey


# 1.60 26-May-2006 deraadt

let us not talk about ipsecadm and vpn anymore; ok reyk


# 1.59 09-May-2006 jmc

no need to specify a "count" argument: ifconfig(8) handles these
"on demand";

from jan niemann;
ok deraadt


Revision tags: OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.58 11-Aug-2004 jaredy

sync to reality, document missing ioctls
mdoc fixes
normalize ioctl listing
slightly reorganize some parts
grammar, punctuation, and rewording fixes
remove crud introduced in rev 1.17 and never removed

Note: this update does *not* include the controversial stuff discussed
on h@; it contains what is in the header file.

help and ok (previously) jmc


# 1.57 04-May-2004 cedric

uppercase + whitespace fix from jmc@.


# 1.56 04-May-2004 cedric

Talk about return-rst improvements. noticed+ok deraadt@


Revision tags: OPENBSD_3_5_BASE
# 1.55 08-Dec-2003 markus

mention ifconfig create; sync synopsis like (Op Ar count). with jmc, deraadt


# 1.54 09-Nov-2003 jmc

remove .Pp's before lists and displays;


Revision tags: OPENBSD_3_4_BASE
# 1.53 09-Jul-2003 jmc

- fix lists/displays
- quote .Cd's
- add/remove .Pp's as necessary
- fix some .Re/.Rs's
- simplify macros


# 1.52 25-Jun-2003 henning

sync struct ifbrlreq with reality


# 1.51 11-Jun-2003 pb

document that is is unsupported to use return-rst/icmp or synproxy
on bridging firewalls

henning@ ok, spelling fixes from jmc@


# 1.50 06-Jun-2003 jmc

- section reorder
- some macro fixes
- kill whitespace at EOL


# 1.49 02-Jun-2003 jason

Nuke clause 3 & 4.


# 1.48 05-May-2003 jmc

corrections from Leandro Costa.

- corrections to tradenames
- updated URLs
- general typos

thanks Leandro!


Revision tags: OPENBSD_3_3_BASE
# 1.47 26-Feb-2003 jmc

various typos;


# 1.46 25-Feb-2003 jason

document SIOCBRDGARL; pointed out by jmc


Revision tags: OPENBSD_3_2_BASE
# 1.45 18-Sep-2002 deraadt

no photurisd


# 1.44 30-Jun-2002 miod

Do not end an enumerations of Xr with a dot, and do not let a dot hide
inside an enumeration as well.


# 1.43 30-Jun-2002 deraadt

Xr cleanup; seb@todesplanet.de


# 1.42 15-Jun-2002 angelos

Document transparent IPsec.


# 1.41 28-May-2002 jasoni

document when the bridge will fragment ip packets..
- ok jason@, dhartmei@


# 1.40 28-Apr-2002 deraadt

ip6 corrections; pb@sysfive.com


Revision tags: OPENBSD_3_1_BASE
# 1.39 15-Dec-2001 jason

add support for creating span ports so that one can snoop a bridge
from another interface/machine/network.


# 1.38 05-Dec-2001 hugh

Make nroff happy with .Sq rather than literal quotes.


Revision tags: OPENBSD_3_0_BASE
# 1.37 07-Oct-2001 dhartmei

Document bridge/pf interaction more appropriately. Ok Jason Wright.


# 1.36 05-Oct-2001 mpech

Powered by @mantoya:
o) start new sentence on a new line;
o) minor mdoc fixes;
millert@ ok

Tip of the day: www.mpechismazohist.com


# 1.35 03-Aug-2001 mpech

o) We don't like .Pp before/after .Sh;
o) .Nm always has argument in .Sh SYNOPSIS;
o) We always closes .Bl and .Bd tags;

millert@ ok


# 1.34 18-Jul-2001 kjell

Clarify the wording of the input-rules-only restriction. ok jason@


# 1.33 01-Jul-2001 angelos

IPF->PF Xr reference; openbsd@davidkrause.com


# 1.32 26-Jun-2001 angelos

PF-related text/references (jsyn@nthought.com)


# 1.31 23-Jun-2001 angelos

Remove loop detection bug, even though we may not be quite finished
with it yet. We should be done in the next few days.


# 1.30 30-May-2001 millert

comment out references to ipf to be replaced in the future with whatever packet filter we end up using


Revision tags: OPENBSD_2_9_BASE
# 1.29 30-Dec-2000 angelos

Update for use of gif.


# 1.28 21-Dec-2000 aaron

Various repairs.


# 1.27 10-Nov-2000 todd

.Sh AUTHOR -> AUTHORS, ok aaron@


Revision tags: OPENBSD_2_8_BASE
# 1.26 19-Oct-2000 hin

Remove merge conflict marker accidentaly left in this file.


# 1.25 18-Oct-2000 aaron

ethernet -> Ethernet


# 1.24 13-Oct-2000 aaron

Purely mdoc fixes.


# 1.23 03-Aug-2000 jason

fix conflict remnant; jakob@crt.se


Revision tags: OPENBSD_2_7_BASE
# 1.22 02-May-2000 jason

mention enc interfaces, too


# 1.21 03-Apr-2000 aaron

Remove trailing whitespace.


# 1.20 11-Feb-2000 jason

Use .An and Aq constructs


# 1.19 05-Feb-2000 deraadt

typo


# 1.18 02-Feb-2000 jason

only ipf input rules are used


# 1.17 25-Jan-2000 jason

add ethernet MAC filtering capability
also includes split of bridgeintr() with some optimizations for quicker
frame handling


# 1.16 10-Jan-2000 angelos

Document the blocknonip flag.


# 1.15 01-Jan-2000 deraadt

Xr bridgename.if(5)


# 1.14 06-Dec-1999 deraadt

there is no IP(4) manpage...


Revision tags: OPENBSD_2_6_BASE
# 1.13 23-Sep-1999 alex

Typo fixes.


# 1.12 03-Sep-1999 jason

Don't delete the cache on down/up transitions unless it's empty. Instead
flush the dynamics. Required other handling of the cache table to accomodate.
Modify SIOCBRDGFLUSH to handle flushall and flush dynamic requests.


# 1.11 09-Jul-1999 aaron

- remove all trailing whitespace
* except when it is escaped with a `\' at the end of the line
- fix remaining .Nm usage as well
- this is from a patch I received from kwesterback@home.com, who has been
working on some scripts for fixing formatting errors in mdoc'd man pages

Ok, so there could be a cost/benefit debate with this commit, but since I have
the patch we might as well commit it...


# 1.10 25-Jun-1999 jason

longer explanation of what a bridge is and why you'd use this one


# 1.9 17-May-1999 jason

Typos; Suzanne M. Lea <smlea@uncg.edu>


Revision tags: OPENBSD_2_5_BASE
# 1.8 31-Mar-1999 jason

finish documenting ioctls and errors


# 1.7 19-Mar-1999 jason

Add flag to allow some interfaces to not see packets with unknown destination.


# 1.6 19-Mar-1999 jason

Add the ability to mark an interface as "non-learning"


# 1.5 12-Mar-1999 jason

big overhaul:
o SNAP encapsulated IP filtering
o static address cache entries
o address deletion from cache
o dynamic & full cache flush
o filter packets based on each interface, not on the bridge as a whole
o KNF nits
o allow addition of ~IFF_UP interfaces
o man page & user level fixes to match the above


# 1.4 05-Mar-1999 jason

Make address cache expiration actually work and provide a knob
for adjusting the timeout.


# 1.3 01-Mar-1999 jason

reflect new ioctl interfaces
move sections around to match mdoc.template


# 1.2 27-Feb-1999 deraadt

spacing


# 1.1 26-Feb-1999 jason

Ethernet bridge/IP firewall driver.


# 1.77 10-May-2019 akoshibe

Document port protection support in switch(4). Also add SIOCBRDGSIFPROT to
list of ioctls in bridge(4).

OK ccardenas@ kn@ phessler@


Revision tags: OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.76 24-Oct-2017 jsg

remove defines for ioctls the kernel doesn't recognise
ok mpi@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.75 04-Sep-2016 jmc

tweak previous;


# 1.74 04-Sep-2016 yasuoka

Add switch(4) man page and update the bridge(4) man page about the
modification for switch(4).

ok goda


Revision tags: OPENBSD_6_0_BASE
# 1.73 07-Jun-2016 sthen

etherip(4) was introduced in 5.9 as a clean alternative to gif(4)'s layer-2
mode that was enabled when it was added to a bridge(4). Update the manual
pages to direct people towards using etherip(4) for this purpose.
Reads fine to jmc@, ok mpi@.

This code will be removed from gif(4) in the future. Switching should be
as simple as renaming the config file (hostname.gifX -> hostname.etheripX),
changing the interface name in hostname.bridgeX, and updating firewall
rules etc. to match - I've tested this with etherip+bridge+isakmpd+ospf
tunnels.


Revision tags: OPENBSD_5_9_BASE
# 1.72 14-Sep-2015 schwarze

convert .Fd #include to .In


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.71 21-Jan-2014 schwarze

obvious .Pa fixes; found with mandocdb(8)


Revision tags: OPENBSD_5_4_BASE
# 1.70 16-Jul-2013 schwarze

use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE
# 1.69 11-Dec-2009 jmc

blocknonip fix; from Holger Mikolon
ok deraadt


# 1.68 22-Nov-2009 deraadt

Move information describing the bridge and brconfig behaviour into
the relevant manual pages. Functionality is described in the (4)
pages, controlling the functionality in ifconfig(8), and the hostname.if
gains the old bridgename.if(5) functionality.
ok claudio jmc


# 1.67 09-Nov-2009 deraadt

vether(4) is a virtual ethernet device driver which can be used
so that a bridge-etherip-tunnel host can join into the bridge itself.
It is ridiculous that this capability was missing from our network
stack portfolio, considering we have bgp and ospf daemons...
discussed at length with claudio


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.66 03-Oct-2007 sthen

Clarifications about the interaction of bridge and PF.
From Geoff Steckel with a few changes

"please commit it (if no one objects)" jmc, "yes" henning


Revision tags: OPENBSD_4_2_BASE
# 1.65 31-May-2007 jmc

convert to new .Dd format;


Revision tags: OPENBSD_4_1_BASE
# 1.64 26-Oct-2006 jmc

no need to cause every reference to pf to be an Xr; on the other
hand, referencing `PF' is not so helpful either;

mutated from a diff from okan demirmen;


# 1.63 23-Oct-2006 jmc

remove trailing space;


# 1.62 22-Oct-2006 mcbride

'keep state' is now the default.

ok jmc


Revision tags: OPENBSD_4_0_BASE
# 1.61 12-Jul-2006 jmc

add includes; from peter philipp (pr #5177)
ok mickey


# 1.60 26-May-2006 deraadt

let us not talk about ipsecadm and vpn anymore; ok reyk


# 1.59 09-May-2006 jmc

no need to specify a "count" argument: ifconfig(8) handles these
"on demand";

from jan niemann;
ok deraadt


Revision tags: OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.58 11-Aug-2004 jaredy

sync to reality, document missing ioctls
mdoc fixes
normalize ioctl listing
slightly reorganize some parts
grammar, punctuation, and rewording fixes
remove crud introduced in rev 1.17 and never removed

Note: this update does *not* include the controversial stuff discussed
on h@; it contains what is in the header file.

help and ok (previously) jmc


# 1.57 04-May-2004 cedric

uppercase + whitespace fix from jmc@.


# 1.56 04-May-2004 cedric

Talk about return-rst improvements. noticed+ok deraadt@


Revision tags: OPENBSD_3_5_BASE
# 1.55 08-Dec-2003 markus

mention ifconfig create; sync synopsis like (Op Ar count). with jmc, deraadt


# 1.54 09-Nov-2003 jmc

remove .Pp's before lists and displays;


Revision tags: OPENBSD_3_4_BASE
# 1.53 09-Jul-2003 jmc

- fix lists/displays
- quote .Cd's
- add/remove .Pp's as necessary
- fix some .Re/.Rs's
- simplify macros


# 1.52 25-Jun-2003 henning

sync struct ifbrlreq with reality


# 1.51 11-Jun-2003 pb

document that is is unsupported to use return-rst/icmp or synproxy
on bridging firewalls

henning@ ok, spelling fixes from jmc@


# 1.50 06-Jun-2003 jmc

- section reorder
- some macro fixes
- kill whitespace at EOL


# 1.49 02-Jun-2003 jason

Nuke clause 3 & 4.


# 1.48 05-May-2003 jmc

corrections from Leandro Costa.

- corrections to tradenames
- updated URLs
- general typos

thanks Leandro!


Revision tags: OPENBSD_3_3_BASE
# 1.47 26-Feb-2003 jmc

various typos;


# 1.46 25-Feb-2003 jason

document SIOCBRDGARL; pointed out by jmc


Revision tags: OPENBSD_3_2_BASE
# 1.45 18-Sep-2002 deraadt

no photurisd


# 1.44 30-Jun-2002 miod

Do not end an enumerations of Xr with a dot, and do not let a dot hide
inside an enumeration as well.


# 1.43 30-Jun-2002 deraadt

Xr cleanup; seb@todesplanet.de


# 1.42 15-Jun-2002 angelos

Document transparent IPsec.


# 1.41 28-May-2002 jasoni

document when the bridge will fragment ip packets..
- ok jason@, dhartmei@


# 1.40 28-Apr-2002 deraadt

ip6 corrections; pb@sysfive.com


Revision tags: OPENBSD_3_1_BASE
# 1.39 15-Dec-2001 jason

add support for creating span ports so that one can snoop a bridge
from another interface/machine/network.


# 1.38 05-Dec-2001 hugh

Make nroff happy with .Sq rather than literal quotes.


Revision tags: OPENBSD_3_0_BASE
# 1.37 07-Oct-2001 dhartmei

Document bridge/pf interaction more appropriately. Ok Jason Wright.


# 1.36 05-Oct-2001 mpech

Powered by @mantoya:
o) start new sentence on a new line;
o) minor mdoc fixes;
millert@ ok

Tip of the day: www.mpechismazohist.com


# 1.35 03-Aug-2001 mpech

o) We don't like .Pp before/after .Sh;
o) .Nm always has argument in .Sh SYNOPSIS;
o) We always closes .Bl and .Bd tags;

millert@ ok


# 1.34 18-Jul-2001 kjell

Clarify the wording of the input-rules-only restriction. ok jason@


# 1.33 01-Jul-2001 angelos

IPF->PF Xr reference; openbsd@davidkrause.com


# 1.32 26-Jun-2001 angelos

PF-related text/references (jsyn@nthought.com)


# 1.31 23-Jun-2001 angelos

Remove loop detection bug, even though we may not be quite finished
with it yet. We should be done in the next few days.


# 1.30 30-May-2001 millert

comment out references to ipf to be replaced in the future with whatever packet filter we end up using


Revision tags: OPENBSD_2_9_BASE
# 1.29 30-Dec-2000 angelos

Update for use of gif.


# 1.28 21-Dec-2000 aaron

Various repairs.


# 1.27 10-Nov-2000 todd

.Sh AUTHOR -> AUTHORS, ok aaron@


Revision tags: OPENBSD_2_8_BASE
# 1.26 19-Oct-2000 hin

Remove merge conflict marker accidentaly left in this file.


# 1.25 18-Oct-2000 aaron

ethernet -> Ethernet


# 1.24 13-Oct-2000 aaron

Purely mdoc fixes.


# 1.23 03-Aug-2000 jason

fix conflict remnant; jakob@crt.se


Revision tags: OPENBSD_2_7_BASE
# 1.22 02-May-2000 jason

mention enc interfaces, too


# 1.21 03-Apr-2000 aaron

Remove trailing whitespace.


# 1.20 11-Feb-2000 jason

Use .An and Aq constructs


# 1.19 05-Feb-2000 deraadt

typo


# 1.18 02-Feb-2000 jason

only ipf input rules are used


# 1.17 25-Jan-2000 jason

add ethernet MAC filtering capability
also includes split of bridgeintr() with some optimizations for quicker
frame handling


# 1.16 10-Jan-2000 angelos

Document the blocknonip flag.


# 1.15 01-Jan-2000 deraadt

Xr bridgename.if(5)


# 1.14 06-Dec-1999 deraadt

there is no IP(4) manpage...


Revision tags: OPENBSD_2_6_BASE
# 1.13 23-Sep-1999 alex

Typo fixes.


# 1.12 03-Sep-1999 jason

Don't delete the cache on down/up transitions unless it's empty. Instead
flush the dynamics. Required other handling of the cache table to accomodate.
Modify SIOCBRDGFLUSH to handle flushall and flush dynamic requests.


# 1.11 09-Jul-1999 aaron

- remove all trailing whitespace
* except when it is escaped with a `\' at the end of the line
- fix remaining .Nm usage as well
- this is from a patch I received from kwesterback@home.com, who has been
working on some scripts for fixing formatting errors in mdoc'd man pages

Ok, so there could be a cost/benefit debate with this commit, but since I have
the patch we might as well commit it...


# 1.10 25-Jun-1999 jason

longer explanation of what a bridge is and why you'd use this one


# 1.9 17-May-1999 jason

Typos; Suzanne M. Lea <smlea@uncg.edu>


Revision tags: OPENBSD_2_5_BASE
# 1.8 31-Mar-1999 jason

finish documenting ioctls and errors


# 1.7 19-Mar-1999 jason

Add flag to allow some interfaces to not see packets with unknown destination.


# 1.6 19-Mar-1999 jason

Add the ability to mark an interface as "non-learning"


# 1.5 12-Mar-1999 jason

big overhaul:
o SNAP encapsulated IP filtering
o static address cache entries
o address deletion from cache
o dynamic & full cache flush
o filter packets based on each interface, not on the bridge as a whole
o KNF nits
o allow addition of ~IFF_UP interfaces
o man page & user level fixes to match the above


# 1.4 05-Mar-1999 jason

Make address cache expiration actually work and provide a knob
for adjusting the timeout.


# 1.3 01-Mar-1999 jason

reflect new ioctl interfaces
move sections around to match mdoc.template


# 1.2 27-Feb-1999 deraadt

spacing


# 1.1 26-Feb-1999 jason

Ethernet bridge/IP firewall driver.


# 1.76 24-Oct-2017 jsg

remove defines for ioctls the kernel doesn't recognise
ok mpi@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.75 04-Sep-2016 jmc

tweak previous;


# 1.74 04-Sep-2016 yasuoka

Add switch(4) man page and update the bridge(4) man page about the
modification for switch(4).

ok goda


Revision tags: OPENBSD_6_0_BASE
# 1.73 07-Jun-2016 sthen

etherip(4) was introduced in 5.9 as a clean alternative to gif(4)'s layer-2
mode that was enabled when it was added to a bridge(4). Update the manual
pages to direct people towards using etherip(4) for this purpose.
Reads fine to jmc@, ok mpi@.

This code will be removed from gif(4) in the future. Switching should be
as simple as renaming the config file (hostname.gifX -> hostname.etheripX),
changing the interface name in hostname.bridgeX, and updating firewall
rules etc. to match - I've tested this with etherip+bridge+isakmpd+ospf
tunnels.


Revision tags: OPENBSD_5_9_BASE
# 1.72 14-Sep-2015 schwarze

convert .Fd #include to .In


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.71 21-Jan-2014 schwarze

obvious .Pa fixes; found with mandocdb(8)


Revision tags: OPENBSD_5_4_BASE
# 1.70 16-Jul-2013 schwarze

use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE
# 1.69 11-Dec-2009 jmc

blocknonip fix; from Holger Mikolon
ok deraadt


# 1.68 22-Nov-2009 deraadt

Move information describing the bridge and brconfig behaviour into
the relevant manual pages. Functionality is described in the (4)
pages, controlling the functionality in ifconfig(8), and the hostname.if
gains the old bridgename.if(5) functionality.
ok claudio jmc


# 1.67 09-Nov-2009 deraadt

vether(4) is a virtual ethernet device driver which can be used
so that a bridge-etherip-tunnel host can join into the bridge itself.
It is ridiculous that this capability was missing from our network
stack portfolio, considering we have bgp and ospf daemons...
discussed at length with claudio


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.66 03-Oct-2007 sthen

Clarifications about the interaction of bridge and PF.
From Geoff Steckel with a few changes

"please commit it (if no one objects)" jmc, "yes" henning


Revision tags: OPENBSD_4_2_BASE
# 1.65 31-May-2007 jmc

convert to new .Dd format;


Revision tags: OPENBSD_4_1_BASE
# 1.64 26-Oct-2006 jmc

no need to cause every reference to pf to be an Xr; on the other
hand, referencing `PF' is not so helpful either;

mutated from a diff from okan demirmen;


# 1.63 23-Oct-2006 jmc

remove trailing space;


# 1.62 22-Oct-2006 mcbride

'keep state' is now the default.

ok jmc


Revision tags: OPENBSD_4_0_BASE
# 1.61 12-Jul-2006 jmc

add includes; from peter philipp (pr #5177)
ok mickey


# 1.60 26-May-2006 deraadt

let us not talk about ipsecadm and vpn anymore; ok reyk


# 1.59 09-May-2006 jmc

no need to specify a "count" argument: ifconfig(8) handles these
"on demand";

from jan niemann;
ok deraadt


Revision tags: OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.58 11-Aug-2004 jaredy

sync to reality, document missing ioctls
mdoc fixes
normalize ioctl listing
slightly reorganize some parts
grammar, punctuation, and rewording fixes
remove crud introduced in rev 1.17 and never removed

Note: this update does *not* include the controversial stuff discussed
on h@; it contains what is in the header file.

help and ok (previously) jmc


# 1.57 04-May-2004 cedric

uppercase + whitespace fix from jmc@.


# 1.56 04-May-2004 cedric

Talk about return-rst improvements. noticed+ok deraadt@


Revision tags: OPENBSD_3_5_BASE
# 1.55 08-Dec-2003 markus

mention ifconfig create; sync synopsis like (Op Ar count). with jmc, deraadt


# 1.54 09-Nov-2003 jmc

remove .Pp's before lists and displays;


Revision tags: OPENBSD_3_4_BASE
# 1.53 09-Jul-2003 jmc

- fix lists/displays
- quote .Cd's
- add/remove .Pp's as necessary
- fix some .Re/.Rs's
- simplify macros


# 1.52 25-Jun-2003 henning

sync struct ifbrlreq with reality


# 1.51 11-Jun-2003 pb

document that is is unsupported to use return-rst/icmp or synproxy
on bridging firewalls

henning@ ok, spelling fixes from jmc@


# 1.50 06-Jun-2003 jmc

- section reorder
- some macro fixes
- kill whitespace at EOL


# 1.49 02-Jun-2003 jason

Nuke clause 3 & 4.


# 1.48 05-May-2003 jmc

corrections from Leandro Costa.

- corrections to tradenames
- updated URLs
- general typos

thanks Leandro!


Revision tags: OPENBSD_3_3_BASE
# 1.47 26-Feb-2003 jmc

various typos;


# 1.46 25-Feb-2003 jason

document SIOCBRDGARL; pointed out by jmc


Revision tags: OPENBSD_3_2_BASE
# 1.45 18-Sep-2002 deraadt

no photurisd


# 1.44 30-Jun-2002 miod

Do not end an enumerations of Xr with a dot, and do not let a dot hide
inside an enumeration as well.


# 1.43 30-Jun-2002 deraadt

Xr cleanup; seb@todesplanet.de


# 1.42 15-Jun-2002 angelos

Document transparent IPsec.


# 1.41 28-May-2002 jasoni

document when the bridge will fragment ip packets..
- ok jason@, dhartmei@


# 1.40 28-Apr-2002 deraadt

ip6 corrections; pb@sysfive.com


Revision tags: OPENBSD_3_1_BASE
# 1.39 15-Dec-2001 jason

add support for creating span ports so that one can snoop a bridge
from another interface/machine/network.


# 1.38 05-Dec-2001 hugh

Make nroff happy with .Sq rather than literal quotes.


Revision tags: OPENBSD_3_0_BASE
# 1.37 07-Oct-2001 dhartmei

Document bridge/pf interaction more appropriately. Ok Jason Wright.


# 1.36 05-Oct-2001 mpech

Powered by @mantoya:
o) start new sentence on a new line;
o) minor mdoc fixes;
millert@ ok

Tip of the day: www.mpechismazohist.com


# 1.35 03-Aug-2001 mpech

o) We don't like .Pp before/after .Sh;
o) .Nm always has argument in .Sh SYNOPSIS;
o) We always closes .Bl and .Bd tags;

millert@ ok


# 1.34 18-Jul-2001 kjell

Clarify the wording of the input-rules-only restriction. ok jason@


# 1.33 01-Jul-2001 angelos

IPF->PF Xr reference; openbsd@davidkrause.com


# 1.32 26-Jun-2001 angelos

PF-related text/references (jsyn@nthought.com)


# 1.31 23-Jun-2001 angelos

Remove loop detection bug, even though we may not be quite finished
with it yet. We should be done in the next few days.


# 1.30 30-May-2001 millert

comment out references to ipf to be replaced in the future with whatever packet filter we end up using


Revision tags: OPENBSD_2_9_BASE
# 1.29 30-Dec-2000 angelos

Update for use of gif.


# 1.28 21-Dec-2000 aaron

Various repairs.


# 1.27 10-Nov-2000 todd

.Sh AUTHOR -> AUTHORS, ok aaron@


Revision tags: OPENBSD_2_8_BASE
# 1.26 19-Oct-2000 hin

Remove merge conflict marker accidentaly left in this file.


# 1.25 18-Oct-2000 aaron

ethernet -> Ethernet


# 1.24 13-Oct-2000 aaron

Purely mdoc fixes.


# 1.23 03-Aug-2000 jason

fix conflict remnant; jakob@crt.se


Revision tags: OPENBSD_2_7_BASE
# 1.22 02-May-2000 jason

mention enc interfaces, too


# 1.21 03-Apr-2000 aaron

Remove trailing whitespace.


# 1.20 11-Feb-2000 jason

Use .An and Aq constructs


# 1.19 05-Feb-2000 deraadt

typo


# 1.18 02-Feb-2000 jason

only ipf input rules are used


# 1.17 25-Jan-2000 jason

add ethernet MAC filtering capability
also includes split of bridgeintr() with some optimizations for quicker
frame handling


# 1.16 10-Jan-2000 angelos

Document the blocknonip flag.


# 1.15 01-Jan-2000 deraadt

Xr bridgename.if(5)


# 1.14 06-Dec-1999 deraadt

there is no IP(4) manpage...


Revision tags: OPENBSD_2_6_BASE
# 1.13 23-Sep-1999 alex

Typo fixes.


# 1.12 03-Sep-1999 jason

Don't delete the cache on down/up transitions unless it's empty. Instead
flush the dynamics. Required other handling of the cache table to accomodate.
Modify SIOCBRDGFLUSH to handle flushall and flush dynamic requests.


# 1.11 09-Jul-1999 aaron

- remove all trailing whitespace
* except when it is escaped with a `\' at the end of the line
- fix remaining .Nm usage as well
- this is from a patch I received from kwesterback@home.com, who has been
working on some scripts for fixing formatting errors in mdoc'd man pages

Ok, so there could be a cost/benefit debate with this commit, but since I have
the patch we might as well commit it...


# 1.10 25-Jun-1999 jason

longer explanation of what a bridge is and why you'd use this one


# 1.9 17-May-1999 jason

Typos; Suzanne M. Lea <smlea@uncg.edu>


Revision tags: OPENBSD_2_5_BASE
# 1.8 31-Mar-1999 jason

finish documenting ioctls and errors


# 1.7 19-Mar-1999 jason

Add flag to allow some interfaces to not see packets with unknown destination.


# 1.6 19-Mar-1999 jason

Add the ability to mark an interface as "non-learning"


# 1.5 12-Mar-1999 jason

big overhaul:
o SNAP encapsulated IP filtering
o static address cache entries
o address deletion from cache
o dynamic & full cache flush
o filter packets based on each interface, not on the bridge as a whole
o KNF nits
o allow addition of ~IFF_UP interfaces
o man page & user level fixes to match the above


# 1.4 05-Mar-1999 jason

Make address cache expiration actually work and provide a knob
for adjusting the timeout.


# 1.3 01-Mar-1999 jason

reflect new ioctl interfaces
move sections around to match mdoc.template


# 1.2 27-Feb-1999 deraadt

spacing


# 1.1 26-Feb-1999 jason

Ethernet bridge/IP firewall driver.