BRIDGE(3)BRIDGE(3)NAMEbridge - Ethernet bridge and IPv4 tunnel
SYNOPSIS
bind -a #Bb /net
/net/bridgeb/ctl
/net/bridgeb/cache
/net/bridgeb/log
/net/bridgeb/stats
/net/bridgeb/n
/net/bridgeb/n/ctl
/net/bridgeb/n/local
/net/bridgeb/n/status
DESCRIPTION
The bridge device bridges (copies) packets amongst Ethernet interfaces.
The number b in the bind is optional and selects a particular bridge
(default 0).
The /net/bridge0 directory contains ctl, cache, log, and stats files,
and numbered subdirectories for each physical interface.
Opening the ctl file reserves an interface. The file descriptor
returned from the open(2) will point to the control file, ctl, of the
newly allocated interface. Reading ctl returns a text string repre‐
senting the number of the interface. Writing ctl alters aspects of the
interface. The possible ctl messages are:
bind ether name ownhash path
Treat the device mounted at path (e.g., as an Ethernet medium
and associate it with this bridge (forward its packets to the
other interfaces associated with this bridge). Ownhash is an
`owner hash'.
bind tunnel name ownhash path path2
Treat the device mounted at path as a network tunnel (of IPv4 in
IPv4), the device mounted at path2 as an Ethernet medium and as‐
sociate them with this bridge (forward its packets to the other
interfaces associated with this bridge). Read packets from the
path interface and write them to the path2 interface. Such tun‐
nels have an MTU of 1400 bytes.
unbind type address [ownhash]
Disassociate the interface associated with address from this
bridge. Type must be or
cacheflush
Clear the cache of (destination MAC address, port) tuples.
delay delay0 delayn
Set the delay0 and delayn parameters. delay0 is the constant
microsecond delay per packet and delayn is the microsecond delay
per byte.
set option
Set bridge option. The only known option is which limits the
TCP Maximum Segment Size of TCP packets passing through to 1300
bytes.
clear option
Clear bridge option.
Reading stats returns statistics about the bridge.
Reading the log file returns data from the bridge's log and will block
at end of file awaiting new data.
Reading the cache file prints the cache of (destination MAC address,
port) tuples, one entry per line. The format is: the destination MAC
(e.g., Ethernet) address in hex, port number, count of packets from
this address, count of packets to this address, expiry time in seconds
since the epoch, and for expired entries or for valid entries.
In a connection subdirectory, ctl and local don't do anything, but sta‐
tus returns a one-line status summary.
EXAMPLES
Set up a network bridge between two Ethernets and
bind -a '#B' /net
bind -a '#l1' /net
echo 'bind ether outer 0 /net/ether0' >/net/bridge0/ctl
echo 'bind ether inner 0 /net/ether1' >/net/bridge0/ctl
SEE ALSOip(3)SOURCE
/sys/src/9/port/devbridge.c
BUGS
Understands but won't tunnel nor fragment IPv6.
BRIDGE(3)