NAME
bridge
—
network bridge device
SYNOPSIS
pseudo-device bridge
DESCRIPTION
Thebridge
driver creates a logical link between two or
more IEEE 802 networks that use the same (or “similar enough”)
framing format. For example, it is possible to bridge Ethernet and 802.11
networks together, but it is not possible to bridge Ethernet and Token Ring
together.
To use bridge
, the administrator must
first create the interface and configure the bridge parameters. The bridge
is created using the
ifconfig(8) create
subcommand. The learning
and forwarding behavior and other parameters of a bridge are configured by
the brconfig(8) utility.
A bridge can be used to provide several services, such as a simple 802.11-to-Ethernet bridge for wireless hosts, and traffic isolation.
A bridge works like a switch, forwarding traffic from one interface to another. Multicast and broadcast packets are always forwarded to all interfaces that are part of the bridge. For unicast traffic, the bridge learns which MAC addresses are associated with which interfaces and will forward the traffic selectively.
The bridge
driver implements the IEEE
802.1D Spanning Tree protocol (STP). Spanning Tree is used to detect and
remove loops in a network topology.
Transparent filtering for IP and IPv6 packets can be added with
the kernel configuration option options
BRIDGE_IPF
.
When filtering is enabled, bridged packets will pass through the filter inbound on the originating interface and outbound on the appropriate interfaces. ARP and REVARP packets are forwarded without being filtered and others that are not IP nor IPv6 packets are not forwarded when filtering is enabled.
Note that packets to and from the bridging host will be seen by the filter on the interface with the appropriate address configured as well as on the interface on which the packet arrives or departs.
The bridge
driver will enable passing of
VLAN tagged packets automatically if the underlying interfaces support it.
This is to facilitate XEN network configurations with
xennet(4).
SEE ALSO
HISTORY
The bridge
driver first appeared in
NetBSD 1.6.
AUTHORS
The bridge
driver was originally written
by Jason L. Wright ⟨jason@thought.net⟩
as part of an undergraduate independent study at the University of North
Carolina at Greensboro.
This version of the bridge
driver has been
heavily modified from the original version by Jason R.
Thorpe ⟨thorpej@wasabisystems.com⟩.
BUGS
The bridge
driver currently supports only
Ethernet and Ethernet-like (e.g. 802.11) network devices, with exactly the
same interface MTU size as the bridge device.
The bridge
driver currently does not
support snooping via bpf(4).