1
0
mirror of https://github.com/CumulusNetworks/ifupdown2.git synced 2024-05-06 15:54:50 +00:00

Add vlan aware bridge examples

Ticket: CM-3346
Reviewed By: pending review
Testing Done: example files are tested
This commit is contained in:
Roopa Prabhu
2014-11-15 23:22:01 -08:00
parent d8e3554dde
commit 7e39bbdfcf
5 changed files with 260 additions and 1 deletions

View File

@@ -0,0 +1,25 @@
#
# vlan-aware bridge simple example
#
# bridge br is a vlan aware bridge with all ports (swp1-52).
# native vlan is by default 1
#
# 'bridge-vids' attribute is used to declare vlans.
# 'bridge-pvid' attribute is used to specify native vlans if other than 1
# 'bridge-access' attribute is used to declare access port
#
#
# ports swp1-swp52 are trunk ports which inherit vlans from the bridge br
# ie vlans 310 700 707 712 850 910
#
# the following is a vlan aware bridge with ports swp1-swp52
# It has stp on
#
auto br
iface br
bridge-vlan-aware yes
bridge-ports glob swp1-52
bridge-stp on
bridge-vids 310 700 707 712 850 910

View File

@@ -0,0 +1,55 @@
#
# vlan-aware bridge access ports and pruned vlan example
#
# bridge br is a vlan aware bridge with all ports (swp1-52).
# native vlan is by default 1
#
# 'bridge-vids' attribute is used to declare vlans.
# 'bridge-pvid' attribute is used to specify native vlans if other than 1
# 'bridge-access' attribute is used to declare access port
#
#
# The following is an access port to vlan 310, no trunking
auto swp1
iface swp1
bridge-access 310
mstpctl-portautoedge yes
mstpctl-bpduguard yes
# The following is a truk port that is "pruned".
# native vlan is 1, but only .1q tags of 707, 712, 850 are
# sent and received
#
auto swp2
iface swp2
bridge-vids 707 712 850
mstpctl-portautoedge yes
mstpctl-bpduguard yes
# The following port is the trunk uplink and inherits all vlans
# from bridge br
auto swp49
iface swp49
mstpctl-portpathcost 10
# The following port is the trunk uplink and inherits all vlans
# from bridge br
auto swp50
iface swp50
mstpctl-portpathcost 0
#
# ports swp3-swp48 are trunk ports which inherit vlans from the bridge br
# ie vlans 310,700,707,712,850,910
#
# the following is a vlan aware bridge with ports swp1-swp52
# It has stp on
#
auto br
iface br
bridge-vlan-aware yes
bridge-ports glob swp1-52
bridge-stp on
bridge-vids 310 700 707 712 850 910

View File

@@ -0,0 +1,92 @@
#
# vlan-aware bridge with bonds example
#
# uplink1, peerlink and downlink are bond interfaces.
# bridge br is a vlan aware bridge with ports uplink1, peerlink
# and downlink (swp2-20).
#
# native vlan is by default 1
#
# 'bridge-vids' attribute is used to declare vlans.
# 'bridge-pvid' attribute is used to specify native vlans if other than 1
# 'bridge-access' attribute is used to declare access port
#
auto lo
iface lo
auto eth0
iface eth0 inet dhcp
# bond interface
auto uplink1
iface uplink1
bond-slaves swp32
bond-mode 802.3ad
bond-miimon 100
bond-use-carrier 1
bond-lacp-rate 1
bond-min-links 1
bond-xmit-hash-policy layer2
bridge-vids 2000-2079
# bond interface
auto peerlink
iface peerlink
bond-slaves swp30 swp31
bond-mode 802.3ad
bond-miimon 100
bond-use-carrier 1
bond-lacp-rate 1
bond-min-links 1
bond-xmit-hash-policy layer3+4
bridge-vids 2000-2079 4094
# bond interface
auto downlink
iface downlink
bond-slaves swp1
bond-mode 802.3ad
bond-miimon 100
bond-use-carrier 1
bond-lacp-rate 1
bond-min-links 1
bond-xmit-hash-policy layer3+4
bridge-vids 2000-2079
#
# Declare vlans for all swp ports
# swp2-20 get vlans from 2004 to 2022.
# The below uses mako templates to generate iface sections
# with vlans for swp ports
#
%for port, vlanid in zip(range(2, 20), range(2004, 2022)) :
auto swp${port}
iface swp${port}
bridge-vids ${vlanid}
%endfor
# svi vlan 4094
auto br.4094
iface br.4094
address 11.100.1.252/24
# l2 attributes for vlan 4094
auto br.4094
vlan br.4094
bridge-igmp-querier-src 172.16.101.1
#
# vlan aware bridge br
#
auto br
iface br
bridge-vlan-aware yes
bridge-ports uplink1 peerlink downlink glob swp2-20
bridge-stp on
# svi peerlink vlan
auto peerlink.4094
iface peerlink.4094
address 192.168.10.1/30
broadcast 192.168.10.3

View File

@@ -0,0 +1,81 @@
#
# vlan-aware bridge with clag example
#
#
# bridge 'br' is a vlan aware bridge with ports:
# 'peer-bond spine-bond glob host-bond-0[1-2]'
#
# All ports inherit 'vlans 10 20-23' from the 'bridge-vids' attribute
# under the bridge
#
# native vlan is by default 1
#
# 'bridge-vids' attribute is used to declare vlans.
# 'bridge-pvid' attribute is used to specify native vlans if other than 1
# 'bridge-access' attribute is used to declare access port
#
#
# spine bond
#
auto spine-bond
iface spine-bond
bond-slaves glob swp19-22
bond-mode 802.3ad
bond-miimon 100
bond-use-carrier 1
bond-lacp-rate 1
bond-min-links 1
bond-xmit-hash-policy layer3+4
# mlag bond and peer interface
#
auto peer-bond
iface peer-bond
bond-slaves glob swp23-24
bond-mode 802.3ad
bond-miimon 100
bond-use-carrier 1
bond-lacp-rate 1
bond-min-links 1
bond-xmit-hash-policy layer3+4
# sub-interface for clagd communication
#
auto peer-bond.4094
iface peer-bond.4094
address 169.254.0.1/31
clagd-peer-ip 11.0.5.2
clagd-sys-mac 00:00:00:aa:bb:01
clagd-args --vm
# host ports
#
auto host-bond-01
iface host-bond-01
bond-slaves swp1
bond-mode 802.3ad
bond-miimon 100
bond-use-carrier 1
bond-lacp-rate 1
bond-min-links 1
bond-xmit-hash-policy layer3+4
auto host-bond-02
iface host-bond-02
bond-slaves swp2
bond-mode 802.3ad
bond-miimon 100
bond-use-carrier 1
bond-lacp-rate 1
bond-min-links 1
bond-xmit-hash-policy layer3+4
# the bridge
#
auto br
iface br
bridge-vlan-aware yes
bridge-ports peer-bond spine-bond glob host-bond-0[1-2]
bridge-stp on
bridge-vids 10 20-23

View File

@@ -25,7 +25,13 @@ setup(name='ifupdown2',
('/usr/share/doc/python-ifupdown2/examples/',
['docs/examples/interfaces',
'docs/examples/interfaces_bridge_template_func',
'docs/examples/interfaces_with_template']),
'docs/examples/interfaces_with_template',
'docs/examples/interfaces_bridge_igmp_mstp']),
('/usr/share/doc/python-ifupdown2/examples/vlan_aware_bridges',
['docs/examples/vlan_aware_bridges/interfaces.1',
'docs/examples/vlan_aware_bridges/interfaces.2',
'docs/examples/vlan_aware_bridges/interfaces.3',
'docs/examples/vlan_aware_bridges/interfaces.4']),
('/etc/bash_completion.d/', ['completion/ifup']),
('/usr/share/ifupdownaddons/', ['addons/bridge.py',
'addons/ifenslave.py', 'addons/vlan.py',