BRIDGE(4) | Device Drivers Manual | BRIDGE(4)

# NAME

`bridge` —
network bridge device

# SYNOPSIS

`pseudo-device bridge`

# DESCRIPTION

The `bridge` 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

l2tp(4), options(4), xennet(4), brconfig(8), ipf(8)

# 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).

August 14, 2018 | NetBSD 9.3