]> git.proxmox.com Git - mirror_iproute2.git/blame - man/man8/bridge.8
bridge: make mcast_flood description consistent
[mirror_iproute2.git] / man / man8 / bridge.8
CommitLineData
d04bc300
SH
1.TH BRIDGE 8 "1 August 2012" "iproute2" "Linux"
2.SH NAME
3bridge \- show / manipulate bridge addresses and devices
4.SH SYNOPSIS
5
6.ad l
7.in +8
8.ti -8
9.B bridge
10.RI "[ " OPTIONS " ] " OBJECT " { " COMMAND " | "
11.BR help " }"
12.sp
13
14.ti -8
15.IR OBJECT " := { "
54e9c3a3 16.BR link " | " fdb " | " mdb " | " vlan " | " monitor " }"
d04bc300
SH
17.sp
18
19.ti -8
20.IR OPTIONS " := { "
21\fB\-V\fR[\fIersion\fR] |
527910c8 22\fB\-s\fR[\fItatistics\fR] |
db726379
RP
23\fB\-n\fR[\fIetns\fR] name |
24\fB\-b\fR[\fIatch\fR] filename |
3a1ca9a5 25\fB\-c\fR[\folor\fR] |
01842eb5 26\fB\-p\fR[\fIretty\fR] |
05758f5c
PS
27\fB\-j\fR[\fIson\fR] |
28\fB\-o\fR[\fIneline\fr] }
aa2f1335
VY
29
30.ti -8
31.BR "bridge link set"
fc31817d 32.B dev
aa2f1335
VY
33.IR DEV
34.IR " [ "
fc31817d 35.B cost
aa2f1335 36.IR COST " ] [ "
fc31817d
PS
37.B priority
38.IR PRIO " ] [ "
39.B state
d13d52d0 40.IR STATE " ] [ "
aa2f1335
VY
41.BR guard " { " on " | " off " } ] [ "
42.BR hairpin " { " on " | " off " } ] [ "
43.BR fastleave " { " on " | " off " } ] [ "
44.BR root_block " { " on " | " off " } ] [ "
f0f4ab60 45.BR learning " { " on " | " off " } ] [ "
674bb438 46.BR learning_sync " { " on " | " off " } ] [ "
f0f4ab60 47.BR flood " { " on " | " off " } ] [ "
22a98f51 48.BR hwmode " { " vepa " | " veb " } ] [ "
9208b4e7 49.BR mcast_flood " { " on " | " off " } ] [ "
8cfde5c9
RP
50.BR neigh_suppress " { " on " | " off " } ] [ "
51.BR vlan_tunnel " { " on " | " off " } ] [ "
05001bcf 52.BR isolated " { " on " | " off " } ] [ "
d13d52d0
NA
53.B backup_port
54.IR DEVICE " ] ["
55.BR nobackup_port " ] [ "
9208b4e7 56.BR self " ] [ " master " ]"
aa2f1335
VY
57
58.ti -8
59.BR "bridge link" " [ " show " ] [ "
fc31817d 60.B dev
aa2f1335 61.IR DEV " ]"
d04bc300
SH
62
63.ti -8
6e2e2cf0 64.BR "bridge fdb" " { " add " | " append " | " del " | " replace " } "
d04bc300 65.I LLADDR
fc31817d 66.B dev
d04bc300 67.IR DEV " { "
c6d0cfb5 68.BR local " | " static " | " dynamic " } [ "
c3ded6e4 69.BR self " ] [ " master " ] [ " router " ] [ " use " ] [ " extern_learn " ] [ " sticky " ] [ "
fc31817d 70.B dst
7578ae88
TR
71.IR IPADDR " ] [ "
72.B vni
73.IR VNI " ] ["
74.B port
75.IR PORT " ] ["
76.B via
77.IR DEVICE " ]"
d04bc300
SH
78
79.ti -8
80.BR "bridge fdb" " [ " show " ] [ "
fc31817d 81.B dev
7f10090b
NA
82.IR DEV " ] [ "
83.B br
84.IR BRDEV " ] [ "
85.B brport
86.IR DEV " ] [ "
87.B vlan
88.IR VID " ] [ "
89.B state
90.IR STATE " ]"
d04bc300 91
54e9c3a3
PP
92.ti -8
93.BR "bridge mdb" " { " add " | " del " } "
fc31817d 94.B dev
54e9c3a3
PP
95.IR DEV
96.B port
97.IR PORT
98.B grp
99.IR GROUP " [ "
6aac8617
NA
100.BR permanent " | " temp " ] [ "
101.B vid
102.IR VID " ] "
54e9c3a3
PP
103
104.ti -8
105.BR "bridge mdb show " [ "
fc31817d 106.B dev
54e9c3a3
PP
107.IR DEV " ]"
108
ab938710
VY
109.ti -8
110.BR "bridge vlan" " { " add " | " del " } "
fc31817d 111.B dev
ab938710 112.IR DEV
fc31817d 113.B vid
ab938710 114.IR VID " [ "
8652eeb3
RP
115.BR tunnel_info
116.IR TUNNEL_ID " ] [ "
fc31817d
PS
117.BR pvid " ] [ " untagged " ] [ "
118.BR self " ] [ " master " ] "
ab938710
VY
119
120.ti -8
8652eeb3 121.BR "bridge vlan" " [ " show " | " tunnelshow " ] [ "
fc31817d 122.B dev
ab938710
VY
123.IR DEV " ]"
124
d04bc300 125.ti -8
54e9c3a3 126.BR "bridge monitor" " [ " all " | " neigh " | " link " | " mdb " ]"
d04bc300
SH
127
128.SH OPTIONS
129
130.TP
131.BR "\-V" , " -Version"
132print the version of the
133.B bridge
134utility and exit.
135
136.TP
137.BR "\-s" , " \-stats", " \-statistics"
a89d5329 138output more information. If this option
49572501 139is given multiple times, the amount of information increases.
d04bc300
SH
140As a rule, the information is statistics or some time values.
141
ba037267
NA
142.TP
143.BR "\-d" , " \-details"
144print detailed information about MDB router ports.
145
527910c8
VK
146.TP
147.BR "\-n" , " \-net" , " \-netns " <NETNS>
148switches
149.B bridge
150to the specified network namespace
151.IR NETNS .
152Actually it just simplifies executing of:
153
154.B ip netns exec
155.IR NETNS
156.B bridge
157.RI "[ " OPTIONS " ] " OBJECT " { " COMMAND " | "
158.BR help " }"
159
160to
161
162.B bridge
163.RI "-n[etns] " NETNS " [ " OPTIONS " ] " OBJECT " { " COMMAND " | "
164.BR help " }"
165
9de8c6d9
WK
166.TP
167.BR "\-b", " \-batch " <FILENAME>
168Read commands from provided file or standard input and invoke them.
169First failure will cause termination of bridge command.
170
171.TP
172.BR "\-force"
173Don't terminate bridge command on errors in batch mode.
174If there were any errors during execution of the commands, the application
175return code will be non zero.
d04bc300 176
db726379 177.TP
ff1ab8ed
PS
178.BR \-c [ color ][ = { always | auto | never }
179Configure color output. If parameter is omitted or
180.BR always ,
181color output is enabled regardless of stdout state. If parameter is
182.BR auto ,
183stdout is checked to be a terminal before enabling color output. If parameter is
184.BR never ,
185color output is disabled. If specified multiple times, the last one takes
186precedence. This flag is ignored if
187.B \-json
188is also given.
db726379 189
01842eb5 190.TP
3a1ca9a5
SH
191.BR "\-j", " \-json"
192Output results in JavaScript Object Notation (JSON).
193
194.TP
195.BR "\-p", " \-pretty"
01842eb5
SH
196When combined with -j generate a pretty JSON output.
197
05758f5c
PS
198.TP
199.BR "\-o", " \-oneline"
200output each record on a single line, replacing line feeds
201with the
202.B '\e'
203character. This is convenient when you want to count records
204with
205.BR wc (1)
206or to
207.BR grep (1)
208the output.
209
01842eb5 210
d04bc300
SH
211.SH BRIDGE - COMMAND SYNTAX
212
213.SS
214.I OBJECT
215
aa2f1335
VY
216.TP
217.B link
218- Bridge port.
219
d04bc300 220.TP
5699275b 221.B fdb
d04bc300
SH
222- Forwarding Database entry.
223
54e9c3a3
PP
224.TP
225.B mdb
226- Multicast group database entry.
227
ab938710
VY
228.TP
229.B vlan
230- VLAN filter list.
231
d04bc300
SH
232.SS
233.I COMMAND
234
235Specifies the action to perform on the object.
236The set of possible actions depends on the object type.
237As a rule, it is possible to
238.BR "add" , " delete"
239and
240.B show
241(or
242.B list
243) objects, but some objects do not allow all of these operations
a89d5329 244or have some additional commands. The
d04bc300 245.B help
a89d5329 246command is available for all objects. It prints
d04bc300
SH
247out a list of available commands and argument syntax conventions.
248.sp
249If no command is given, some default command is assumed.
250Usually it is
251.B list
252or, if the objects of this class cannot be listed,
253.BR "help" .
254
aa2f1335
VY
255.SH bridge link - bridge port
256
257.B link
258objects correspond to the port devices of the bridge.
259
260.P
261The corresponding commands set and display port status and bridge specific
262attributes.
263
264.SS bridge link set - set bridge specific attributes on a port
265
266.TP
267.BI dev " NAME "
268interface name of the bridge port
269
270.TP
271.BI cost " COST "
272the STP path cost of the specified port.
273
274.TP
275.BI priority " PRIO "
a89d5329
276the STP port priority. The priority value is an unsigned 8-bit quantity
277(number between 0 and 255). This metric is used in the designated port an
aa2f1335
VY
278droot port selectio algorithms.
279
280.TP
281.BI state " STATE "
a89d5329
282the operation state of the port. This is primarily used by user space STP/RSTP
283implementation. One may enter a lowercased port state name, or one of the
284numbers below. Negative inputs are ignored, and unrecognized names return an
6b8c871d 285error.
aa2f1335
VY
286
287.B 0
a89d5329 288- port is DISABLED. Make this port completely inactive.
aa2f1335
VY
289.sp
290
291.B 1
7fab22ab 292- STP LISTENING state. Only valid if STP is enabled on the bridge. In this
3aa8f8cb 293state the port listens for STP BPDUs and drops all other traffic frames.
aa2f1335
VY
294.sp
295
296.B 2
a89d5329 297- STP LEARNING state. Only valid if STP is enabled on the bridge. In this
aa2f1335 298state the port will accept traffic only for the purpose of updating MAC
ac0817ef 299address tables.
aa2f1335
VY
300.sp
301
302.B 3
a89d5329 303- STP FORWARDING state. Port is fully active.
aa2f1335
VY
304.sp
305
306.B 4
a89d5329
307- STP BLOCKING state. Only valid if STP is enabled on the bridge. This state
308is used during the STP election process. In this state, port will only process
aa2f1335
VY
309STP BPDUs.
310.sp
311
312.TP
313.BR "guard on " or " guard off "
400b5404 314Controls whether STP BPDUs will be processed by the bridge port. By default,
a89d5329 315the flag is turned off allowed BPDU processing. Turning this flag on will
aa2f1335
VY
316cause the port to stop processing STP BPDUs.
317
318.TP
319.BR "hairpin on " or " hairpin off "
320Controls whether traffic may be send back out of the port on which it was
a89d5329 321received. By default, this flag is turned off and the bridge will not forward
aa2f1335
VY
322traffic back out of the receiving port.
323
324.TP
325.BR "fastleave on " or " fastleave off "
326This flag allows the bridge to immediately stop multicast traffic on a port
a89d5329
327that receives IGMP Leave message. It is only used with IGMP snooping is
328enabled on the bridge. By default the flag is off.
aa2f1335
VY
329
330.TP
331.BR "root_block on " or " root_block off "
a89d5329
332Controls whether a given port is allowed to become root port or not. Only used
333when STP is enabled on the bridge. By default the flag is off.
aa2f1335 334
f0f4ab60
VY
335.TP
336.BR "learning on " or " learning off "
337Controls whether a given port will learn MAC addresses from received traffic or
a89d5329
338not. If learning if off, the bridge will end up flooding any traffic for which
339it has no FDB entry. By default this flag is on.
f0f4ab60 340
674bb438
SF
341.TP
342.BR "learning_sync on " or " learning_sync off "
343Controls whether a given port will sync MAC addresses learned on device port to
344bridge FDB.
345
f0f4ab60 346.TP
02723cf2 347.BR "flood on " or " flood off "
a89d5329 348Controls whether a given port will flood unicast traffic for which there is no FDB entry. By default this flag is on.
f0f4ab60 349
aa2f1335
VY
350.TP
351.BI hwmode
352Some network interface cards support HW bridge functionality and they may be
a89d5329 353configured in different modes. Currently support modes are:
aa2f1335
VY
354
355.B vepa
356- Data sent between HW ports is sent on the wire to the external
357switch.
358
359.B veb
360- bridging happens in hardware.
361
9208b4e7
NA
362.TP
363.BR "mcast_flood on " or " mcast_flood off "
02723cf2 364Controls whether a given port will flood multicast traffic for which there is no MDB entry. By default this flag is on.
9208b4e7 365
41973a47
RP
366.TP
367.BR "neigh_suppress on " or " neigh_suppress off "
368Controls whether neigh discovery (arp and nd) proxy and suppression is enabled on the port. By default this flag is off.
369
8cfde5c9
RP
370.TP
371.BR "vlan_tunnel on " or " vlan_tunnel off "
372Controls whether vlan to tunnel mapping is enabled on the port. By default this flag is off.
373
05001bcf
NA
374.TP
375.BR "isolated on " or " isolated off "
376Controls whether a given port will be isolated, which means it will be able to communicate with non-isolated ports only.
377By default this flag is off.
378
d13d52d0
NA
379.TP
380.BI backup_port " DEVICE"
381If the port loses carrier all traffic will be redirected to the configured backup port
382
383.TP
384.BR nobackup_port
385Removes the currently configured backup port
386
22a98f51
RP
387.TP
388.BI self
389link setting is configured on specified physical device
390
391.TP
392.BI master
393link setting is configured on the software bridge (default)
394
25bc3d3d
SA
395.TP
396.BR "\-t" , " \-timestamp"
397display current time when using monitor option.
22a98f51 398
aa2f1335
VY
399.SS bridge link show - list bridge port configuration.
400
401This command displays the current bridge port configuration and flags.
402
d04bc300
SH
403.SH bridge fdb - forwarding database management
404
405.B fdb
fc31817d 406objects contain known Ethernet addresses on a link.
d04bc300
SH
407
408.P
409The corresponding commands display fdb entries, add new entries,
7578ae88 410append entries,
d04bc300
SH
411and delete old ones.
412
d611682a 413.SS bridge fdb add - add a new fdb entry
d04bc300 414
d611682a 415This command creates a new fdb entry.
d04bc300
SH
416
417.TP
7578ae88 418.BI "LLADDR"
d04bc300
SH
419the Ethernet MAC address.
420
421.TP
7578ae88 422.BI dev " DEV"
d04bc300
SH
423the interface to which this address is associated.
424
c6d0cfb5
RP
425.B local
426- is a local permanent fdb entry
427.sp
428
429.B static
430- is a static (no arp) fdb entry
431.sp
432
433.B dynamic
434- is a dynamic reachable age-able fdb entry
435.sp
436
d611682a 437.B self
cd8df30b
RP
438- the address is associated with the port drivers fdb. Usually hardware.
439.sp
440
441.B master
442- the address is associated with master devices fdb. Usually software (default).
d611682a
JF
443.sp
444
7578ae88
TR
445.B router
446- the destination address is associated with a router.
447Valid if the referenced device is a VXLAN type device and has
448route shortcircuit enabled.
449.sp
450
cd8df30b
RP
451.B use
452- the address is in use. User space can use this option to
453indicate to the kernel that the fdb entry is in use.
454.sp
455
b4f84bf8
RP
456.B extern_learn
457- this entry was learned externally. This option can be used to
458indicate to the kernel that an entry was hardware or user-space
459controller learnt dynamic entry. Kernel will not age such an entry.
460.sp
461
c3ded6e4
NA
462.B sticky
463- this entry will not change its port due to learning.
464.sp
465
d04bc300 466.in -8
7578ae88
TR
467The next command line parameters apply only
468when the specified device
469.I DEV
470is of type VXLAN.
471.TP
472.BI dst " IPADDR"
473the IP address of the destination
474VXLAN tunnel endpoint where the Ethernet MAC ADDRESS resides.
475
476.TP
477.BI vni " VNI"
478the VXLAN VNI Network Identifier (or VXLAN Segment ID)
479to use to connect to the remote VXLAN tunnel endpoint.
480If omitted the value specified at vxlan device creation
481will be used.
482
483.TP
484.BI port " PORT"
485the UDP destination PORT number to use to connect to the
486remote VXLAN tunnel endpoint.
487If omitted the default value is used.
488
489.TP
490.BI via " DEVICE"
491device name of the outgoing interface for the
492VXLAN device driver to reach the
5699275b 493remote VXLAN tunnel endpoint.
7578ae88
TR
494
495.SS bridge fdb append - append a forwarding database entry
496This command adds a new fdb entry with an already known
497.IR LLADDR .
498Valid only for multicast link layer addresses.
499The command adds support for broadcast and multicast
500Ethernet MAC addresses.
501The Ethernet MAC address is added multiple times into
502the forwarding database and the vxlan device driver
503sends a copy of the data packet to each entry found.
504
505.PP
506The arguments are the same as with
fc31817d 507.BR "bridge fdb add" .
d04bc300
SH
508
509.SS bridge fdb delete - delete a forwarding database entry
510This command removes an existing fdb entry.
511
512.PP
513The arguments are the same as with
fc31817d 514.BR "bridge fdb add" .
d04bc300 515
6e2e2cf0
PS
516.SS bridge fdb replace - replace a forwarding database entry
517If no matching entry is found, a new one will be created instead.
518
519.PP
520The arguments are the same as with
fc31817d 521.BR "bridge fdb add" .
6e2e2cf0 522
d04bc300
SH
523.SS bridge fdb show - list forwarding entries.
524
49572501 525This command displays the current forwarding table.
d04bc300
SH
526
527.PP
528With the
529.B -statistics
a89d5329 530option, the command becomes verbose. It prints out the last updated
d04bc300
SH
531and last used time for each entry.
532
54e9c3a3
PP
533.SH bridge mdb - multicast group database management
534
535.B mdb
536objects contain known IP multicast group addresses on a link.
537
538.P
539The corresponding commands display mdb entries, add new entries,
540and delete old ones.
541
542.SS bridge mdb add - add a new multicast group database entry
543
544This command creates a new mdb entry.
545
546.TP
547.BI dev " DEV"
548the interface where this group address is associated.
549
550.TP
551.BI port " PORT"
552the port whose link is known to have members of this multicast group.
553
554.TP
555.BI grp " GROUP"
556the IP multicast group address whose members reside on the link connected to
557the port.
558
559.B permanent
560- the mdb entry is permanent
561.sp
562
563.B temp
564- the mdb entry is temporary (default)
565.sp
566
6aac8617
NA
567.TP
568.BI vid " VID"
569the VLAN ID which is known to have members of this multicast group.
570
54e9c3a3
PP
571.in -8
572.SS bridge mdb delete - delete a multicast group database entry
573This command removes an existing mdb entry.
574
575.PP
576The arguments are the same as with
577.BR "bridge mdb add" .
578
579.SS bridge mdb show - list multicast group database entries
580
581This command displays the current multicast group membership table. The table
582is populated by IGMP and MLD snooping in the bridge driver automatically. It
583can be altered by
584.B bridge mdb add
585and
586.B bridge mdb del
587commands manually too.
588
589.TP
590.BI dev " DEV"
591the interface only whose entries should be listed. Default is to list all
592bridge interfaces.
593
594.PP
595With the
596.B -details
a89d5329 597option, the command becomes verbose. It prints out the ports known to have
54e9c3a3
PP
598a connected router.
599
05d4f64d
NA
600.PP
601With the
602.B -statistics
ba037267 603option, the command displays timer values for mdb and router port entries.
05d4f64d 604
ab938710
VY
605.SH bridge vlan - VLAN filter list
606
607.B vlan
608objects contain known VLAN IDs for a link.
609
610.P
611The corresponding commands display vlan filter entries, add new entries,
612and delete old ones.
613
614.SS bridge vlan add - add a new vlan filter entry
615
616This command creates a new vlan filter entry.
617
618.TP
619.BI dev " NAME"
620the interface with which this vlan is associated.
621
622.TP
623.BI vid " VID"
624the VLAN ID that identifies the vlan.
625
8652eeb3
RP
626.TP
627.BI tunnel_info " TUNNEL_ID"
628the TUNNEL ID that maps to this vlan. The tunnel id is set in dst_metadata for
629every packet that belongs to this vlan (applicable to bridge ports with vlan_tunnel
630flag set).
631
ab938710
VY
632.TP
633.BI pvid
634the vlan specified is to be considered a PVID at ingress.
635Any untagged frames will be assigned to this VLAN.
636
637.TP
638.BI untagged
639the vlan specified is to be treated as untagged on egress.
640
641.TP
642.BI self
a89d5329 643the vlan is configured on the specified physical device. Required if the
ab938710
VY
644device is the bridge device.
645
646.TP
647.BI master
6274b0b7 648the vlan is configured on the software bridge (default).
ab938710 649
296cee6f
VD
650.SS bridge vlan delete - delete a vlan filter entry
651This command removes an existing vlan filter entry.
ab938710
VY
652
653.PP
654The arguments are the same as with
655.BR "bridge vlan add".
656The
657.BR "pvid " and " untagged"
658flags are ignored.
659
660.SS bridge vlan show - list vlan configuration.
661
662This command displays the current VLAN filter table.
663
7abf5de6
NA
664.PP
665With the
666.B -statistics
667option, the command displays per-vlan traffic statistics.
668
8652eeb3
RP
669.SS bridge vlan tunnelshow - list vlan tunnel mapping.
670
671This command displays the current vlan tunnel info mapping.
672
d04bc300
SH
673.SH bridge monitor - state monitoring
674
675The
676.B bridge
fc31817d 677utility can monitor the state of devices and addresses
a89d5329 678continuously. This option has a slightly different format.
d04bc300
SH
679Namely, the
680.B monitor
681command is the first in the command line and then the object list follows:
682
683.BR "bridge monitor" " [ " all " |"
49572501 684.IR OBJECT-LIST " ]"
d04bc300
SH
685
686.I OBJECT-LIST
687is the list of object types that we want to monitor.
688It may contain
fc31817d 689.BR link ", " fdb ", and " mdb "."
d04bc300
SH
690If no
691.B file
692argument is given,
693.B bridge
694opens RTNETLINK, listens on it and dumps state changes in the format
695described in previous sections.
696
697.P
698If a file name is given, it does not listen on RTNETLINK,
699but opens the file containing RTNETLINK messages saved in binary format
efb16971 700and dumps them.
d04bc300
SH
701
702.SH NOTES
703This command uses facilities added in Linux 3.0.
704
705Although the forwarding table is maintained on a per-bridge device basis
706the bridge device is not part of the syntax. This is a limitation of the
707underlying netlink neighbour message protocol. When displaying the
708forwarding table, entries for all bridges are displayed.
709Add/delete/modify commands determine the underlying bridge device
6274b0b7 710based on the bridge to which the corresponding ethernet device is attached.
d04bc300
SH
711
712
713.SH SEE ALSO
714.BR ip (8)
49572501 715.SH BUGS
d04bc300
SH
716.RB "Please direct bugreports and patches to: " <netdev@vger.kernel.org>
717
718.SH AUTHOR
719Original Manpage by Stephen Hemminger