TechInfoDepot:DD-WRT/brctl command

From TechInfoDepot
Jump to navigationJump to search

BRCTL is used to create a bridge between two interfaces.

Bridges

View

To view the current bridges, use the following command on a SSH/Telnet terminal:

 brctl show

The command will then output a bridge name (Often br0 or br1), bridge ID (Used to uniquely specify the bridge), and the current settings for STP (Spanning Tree Protocol). The output wil be formated similar to this:

 bridge name     bridge id               STP enabled
 br0             8000.001217318d3e       yes

Add

A bridge can be added using the following command, with <name> being replaced with the name of the bridge being replaced.

 brctl addbr <name>

Delete

Where name is the user specified name of the bridge. To delete a bridge, one would use

brctl delbr <name>

Interfaces

Although the preceding commands simply create an instance of a bridge, in order to use them, one must add interfaces to a bridge. The bridge "br0" is standard bridge on DD-WRT.

Show

In order to show the current interfaces that are members of a bridge, we use a command similar to the "show" command:

 brctl showbr br0 (for V23SP2: brctl showstp br0)

This would generate output similar to the following:

 br0
  bridge id              8000.001217318d3e
  designated root        8000.001217318d3e
  root port                 0                    path cost                  0
  max age                  20.00                 bridge max age            20.00
  hello time                2.00                 bridge hello time          2.00
  forward delay             0.00                 bridge forward delay       0.00
  ageing time              42.30                 gc interval                4.00
  hello timer               1.28                 tcn timer                  0.00
  topology change timer     0.00                 gc timer                   2.02
 flags
 
 vlan0 (1)
  port id                8001                    state                   forwarding
  designated root        8000.001217318d3e       path cost                100
  designated bridge      8000.001217318d3e       message age timer          0.00
  designated port        8001                    forward delay timer        0.00
  designated cost           0                    hold timer                 0.00
  flags
 
 eth1 (2)
  port id                8002                    state                   forwarding
  designated root        8000.001217318d3e       path cost                100
  designated bridge      8000.001217318d3e       message age timer          0.00
  designated port        8002                    forward delay timer        0.00
  designated cost           0                    hold timer                 0.00
  flags

Here we can see that the bridge contains two members, eth1 and vlan0.

Add

To add a interface to a bridge, the command syntax is

 brctl addif <brname> <ifname>

Where <brname> is the existing bridge name, and ifname is the interface you want to add.

Remove

To remove a interface from a bridge, the syntax is very similar

brctl delif <brname> <ifname>

Other Features

There are a few other features that brctl offers, but they are beyond the scope of this page. In order to get a better understanding of them, you should read the brctl Manual Page.

One KEY thing to note is that the brctl commands slightly differ from the man page. Especially the "show" command. The documentation that i suggested recommends "brctl show <brname>" but in DD-WRT the proper syntax is "brctl showbr <brname>". If you have any doubts, simply type "brctl" and a list of available commands will be displayed.

External Links

http://www.tinc-vpn.org/examples/bridging
http://linuxcommand.org/man_pages/brctl8.html