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:
25
docs/examples/vlan_aware_bridges/interfaces.1
Normal file
25
docs/examples/vlan_aware_bridges/interfaces.1
Normal 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
|
55
docs/examples/vlan_aware_bridges/interfaces.2
Normal file
55
docs/examples/vlan_aware_bridges/interfaces.2
Normal 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
|
92
docs/examples/vlan_aware_bridges/interfaces.3
Normal file
92
docs/examples/vlan_aware_bridges/interfaces.3
Normal 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
|
81
docs/examples/vlan_aware_bridges/interfaces.4
Normal file
81
docs/examples/vlan_aware_bridges/interfaces.4
Normal 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
|
8
setup.py
8
setup.py
@@ -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',
|
||||
|
Reference in New Issue
Block a user