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

756 Commits

Author SHA1 Message Date
Julien Fortin
bfceb63543 ifupdownaddons: mstpctl: treeportprio value is cached. It prevents ifupdown2 from executing mstpctl settreeportprio commands when the running value is the same as the one previously cached
Ticket: CM-11773
Reviewed By: Roopa, Nikhil G
Testing Done: smoke + hand testings :

$ cat /etc/network/interfaces
auto br2
iface br2
      bridge-vlan-aware yes
      bridge-vids 100
      bridge-pvid  1
      bridge-ports swp1 swp4 swp5
      bridge-stp on
$ ifreload -a -v
[...]
info: netlink: set link swp1 up
info: netlink: set link swp4 up
info: netlink: set link swp5 up
info: br2: applying mstp configuration specific to ports
info: br2: processing mstp config for port swp1
info: executing /sbin/mstpctl showportdetail br2 json
info: executing /sbin/mstpctl settreeportprio br2 swp1 0 128
info: br2: processing mstp config for port swp4
info: executing /sbin/mstpctl settreeportprio br2 swp4 0 128
info: br2: processing mstp config for port swp5
info: executing /sbin/mstpctl settreeportprio br2 swp5 0 128
info: netlink: set link br2 up
[...]
$

/sbin/mstpctl settreeportprio br2 swpX 0 128 is executed for every port.
ifupdown2 tries to set this attr to 128 (the default value). This is a
problem at scale. We shouldn't try to set this value if the running value
is already 128.

With the attached patch:

$ ifreload -a
[...]
info: netlink: set link swp1 up
info: netlink: set link swp4 up
info: netlink: set link swp5 up
info: executing /sbin/mstpctl showportdetail br2 json
info: br2: applying mstp configuration specific to ports
info: br2: processing mstp config for port swp1
info: br2: processing mstp config for port swp4
info: br2: processing mstp config for port swp5
info: netlink: set link br2 up
[...]
$

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-08-01 09:49:08 +02:00
Julien Fortin
482b2fab80 attribute syntax check using validvals/validrange and keywords
Ticket: CM-8101
Reviewed By: CCR-4949
Testing Done: smoke tests + ran ifup -a -s on every interface configuration file from GSS cl-supports collection

This commit is introducing ~20 keywords. The value of the different attributes
will be check against raw values and <keywords>:

'<mac>'
'<text>'
'<ipv4>'
'<ipv6>'
'<auto>': "auto"
'<ipaddr>': ipv4/6 with preflix len
'<number>'
'<interface>'
'<ipv4-vrf-text>': equivalent to: <ipv4> "vrf" <text>
'<number-ipv4-list>': example: "100=172.16.100.1 101=172.16.101.1"
'<interface-list>': example: "swp1 swp2 swp3"
'<ipv4/prefixlen>'
'<ipv6/prefixlen>'
'<ipaddr/prefixlen>'
'<number-range-list>': example: "2000 2200-3000"
'<interface-range-list>': example: "swp1=100 swp2=100" ('validrange' : ['0', '65535'])
'<mac-ipaddr/prefixlen-list>'
'<number-interface-list>': example: "4 swp1 swp2"
'<interface-yes-no-list>': example: "swp1=yes swp2=no"
'<interface-yes-no-0-1-list>'
'<interface-yes-no-auto-list>'

It's possible to combine a keyword with a range from validrange. example:
validrange: 10-50
validvals: <intrface-range-list>
value: swp1=21 swp2=42 ...

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-08-01 09:28:16 +02:00
Nikhil
0dd2f0d18a addons: bridge & mstpctl: avoid printing default and port attributes under vlan aware bridge
Ticket: CM-12036
Reviewed By: roopa
Testing Done: used same config from bug

This patch avoids printing port attributes under
vlan-AWARE-bridge on 'ifquer -ra'.

This patch also avoids printing following attributes
on 'ifquer -ra' if not defined:
mstpctl-maxhops
mstpctl-portpathcost
mstpctl-treeportcost

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-29 15:33:14 -07:00
Roopa Prabhu
1b284018d5 addons: addressvirtual: enslave macvlans on vrf slaves to the vrf master
Ticket: CM-11803
Reviewed By: dsa, scotte, wkok, nikhil, julien
Testing Done: tested config of address-virtual lines on vrf slaves

This patch does the following:
- addressvirtual: enslaves macvlans created on vrf slaves
to the vrf master
- vrf: when looking for stale slaves on vrf master, skip
macvlan devices. This code does basic checking right now
and can be improved to include more cases.

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-26 14:43:47 -07:00
Nikhil
1efda6c232 addons: bridge: Fix KeyError when 'bridge-pvid' is not in the set 'bridge-vid'
Ticket: CM-11998
Reviewed By: roopa
Testing Done: used same config given in bug descreption

When we try to unconditionally remove 'pvid' from 'vids' set,
we run into KeyError if 'vids' set doesn't contain 'pvid'

Example configuration:
auto swp9
iface swp9
   mstpctl-portautoedge no

auto frontnet
iface frontnet
   bridge-vlan-aware yes
   bridge-ports swp9
   bridge-vids 10
   bridge-stp on

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-26 10:33:46 -07:00
Nikhil
bb70f92385 addons: mstpctl: handle vlan aware bridge port config under port
Ticket: CM-8629
Reviewed By: roopa, julien
Testing Done: used same config given in bug description

This patch avoids vlan aware bridge over-writing it's port's
config with default values

Example configuration:

auto swp9
iface swp9
   mstpctl-portautoedge no

auto frontnet
iface frontnet
   bridge-vlan-aware yes
   bridge-ports swp9
   bridge-vids 10
   bridge-stp on

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-26 10:33:46 -07:00
Nikhil
0232d1bbfd addons: address: add both v4 and v6 gateways instead of just one.
Ticket: CM-8596, CM-5118
Reviewed By: roopa, julien
Testing Done: used same config mentioned in bug

Previously, only first configured gateway is set as default route.
This patch sets all the configured gateways as default routes.

This patch also removes default route on ifup
after removing 'gateway' from the interface

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-26 10:33:46 -07:00
Julien Fortin
b653111a27 addons: vxlan: localtunnelip check before netlink call, prevent from overwriting the anycast ip
Ticket: CM-11867
Reviewed By: Roopa, Balki, Nikhil G
Testing Done: tests/l2/clag_vxlan_aa_test.py

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-21 01:58:09 +01:00
Nikhil
c0d3d93b9c addons: bridge: fix 'ifquery -c' 'bridge vid error' on vlan aware bridge port
Ticket: CM-11811
Reviewed By: roopa, julien
Testing Done: used same configuration from ticket

For a VLAN aware bridge, if 'bridge-pvid' is not configured,
auto bridge
iface bridge
    bridge-ports swp7 swp8
    bridge-vids 1-200
    bridge-vlan-aware yes

'1' is would be running pvid and [2-200] would be running vids.
While doing _query_check() we compare configred versus running
vids excluding running 'pvid'. Configured vids here is [1-200]
and running is [2-200], but instead of excluding running 'pvid'
we used to exclued configured 'pvid' which is None in this case.
Comparison used to fail because of this.

This patch excludes running 'pvid' instead of configured 'pvid'
during _query_check()

This patch also fixes 'ifquery -c' error for bridge-pvid if
configured under a port of vlan aware bridge

This patch also avoids printing 'bridge-pvid' on 'ifquery -c'
if bridge-pvid is not configured under vlan aware bridge port

sample configuration:
auto swp4
iface swp4

auto swp7
iface swp7
    bridge-pvid 2

auto swp8
iface swp8
    bridge-pvid 2

auto bridge
iface bridge
    bridge-ports swp4 swp7 swp8
    bridge-vids 1-200
    bridge-pvid 20
    bridge-vlan-aware yes

sample output:
root@dell-s3000-02:~# ifquery -c -a
auto swp4
iface swp4                                                      [pass]
    bridge-pvid 20                                              [pass]

auto swp7
iface swp7                                                      [pass]
    bridge-pvid 2                                               [pass]

auto swp8
iface swp8                                                      [pass]
    bridge-pvid 2                                               [pass]

auto bridge
iface bridge                                                    [pass]
    bridge-vlan-aware yes                                       [pass]
    bridge-ports swp8 swp7 swp4                                 [pass]
    bridge-pvid 20
    bridge-vids 1-200                                               []

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-20 11:38:54 -07:00
Nikhil
20fd3a0624 addons: dhcp: stop IPv6 dhclient on ifdown and add delay before starting dhclient
Ticket: CM-11043
Reviewed By: roopa
Testing Done: used the config mentioned in bug

This patch adds a delay before starting IPv6 dhclient to
make sure the configured interface/link in up.

Also, ifdown on a IPv6 interface, this patch makes sure
that the link in up before dhcp release. Dhcp release is
done using a default lease file.

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-18 15:40:23 -07:00
Nikhil
cb8b16acbf addons: bridge: fix 'ifquery -c' 'bridge vid error' on vlan aware bridge port
Ticket: CM-11811
Reviewed By: roopa, julien
Testing Done: used same configuration from ticket

For a VLAN aware bridge, if 'bridge-pvid' is not configured,
auto bridge
iface bridge
    bridge-ports swp7 swp8
    bridge-vids 1-200
    bridge-vlan-aware yes

'1' is would be running pvid and [2-200] would be running vids.
While doing _query_check() we compare configred versus running
vids excluding running 'pvid'. Configured vids here is [1-200]
and running is [2-200], but instead of excluding running 'pvid'
we used to exclued configured 'pvid' which is None in this case.
Comparison used to fail because of this.

This patch excludes running 'pvid' instead of configured 'pvid'
during _query_check()

This patch also fixes 'ifquery -c' error for bridge-pvid if
configured under a port of vlan aware bridge

sample configuration:
auto swp4
iface swp4

auto swp7
iface swp7
    bridge-pvid 2

auto swp8
iface swp8
    bridge-pvid 2

auto bridge
iface bridge
    bridge-ports swp4 swp7 swp8
    bridge-vids 1-200
    bridge-pvid 20
    bridge-vlan-aware yes

sample output:
root@dell-s3000-02:~# ifquery -c -a
auto swp4
iface swp4                                                      [pass]
    bridge-pvid 20                                              [pass]

auto swp7
iface swp7                                                      [pass]
    bridge-pvid 2                                               [pass]

auto swp8
iface swp8                                                      [pass]
    bridge-pvid 2                                               [pass]

auto bridge
iface bridge                                                    [pass]
    bridge-vlan-aware yes                                       [pass]
    bridge-ports swp8 swp7 swp4                                 [pass]
    bridge-pvid 20
    bridge-vids 1-200                                               []

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-18 15:40:23 -07:00
Julien Fortin
8c20f6c69e Revert "Revert "addons: bond: reverting validvals "<mac>" change""
This reverts commit b19c6c100a.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-18 21:00:29 +01:00
Julien Fortin
b223658968 Revert "fixes #14 addons: usercmds: adding environment variables passed by the ifupdown2 to user scripts"
This reverts commit 779efca3e2.
2016-07-18 11:30:12 +01:00
Julien Fortin
81d9736d03 nlmanager: changing log level to debug for RXed messages
Ticket: CM-11857
Reviewed By: Daniel, Roopa
Testing Done:

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-18 10:45:45 +01:00
Roopa Prabhu
5dfc8d7422 Revert "addons: usercmds: adding environment variables passed by the ifupdown2 to user scripts"
This reverts commit cfc51ed18b.

this commit seems to have broken usercmds. reverting it until it is
fixed.

Closes: CM-11856
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-17 22:04:01 -07:00
Roopa Prabhu
6df72b4582 addons: bridge: batch bridge commands
Ticket: CM-11274
Reviewed By: julien, nikhil, wkok
Testing Done: tested with vxlan scale config

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-16 16:36:14 -07:00
Roopa Prabhu
508f6e90ad ifupdownaddons: iproute2: add bridge_commit_batch api to batch bridge
commands

Ticket: CM-11274
Testing Done: julien, wkok, nikhil

It uses and goes with the the other batch variables and apis.
This one just calls the 'bridge -batch' command instead
of the 'ip -batch' command.

This can be used to batch bridge commands.

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-16 16:36:14 -07:00
Roopa Prabhu
d07b5a9fbb addons: ethtool: ignore logical interfaces with link_kind
Ticket: CM-11517
Reviewed By: julien, nikhil, jtoppins
Testing Done: ethtool sanity test

ethtool module should really care only about
physical interfaces. so, this patch makes ethtool
module ignore all logical interfaces, ie interfaces
with link_kind set.

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-16 16:22:49 -07:00
Julien Fortin
779efca3e2 fixes #14 addons: usercmds: adding environment variables passed by the ifupdown2 to user scripts
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-15 17:06:05 +01:00
Julien Fortin
cfc51ed18b addons: usercmds: adding environment variables passed by the ifupdown2 to user scripts
Ticket: None
Reviewed By: Roopa
Testing Done: with a dummy script I printed the value passed by ifupdown
After the changes I did the same with ifupdown2 and checksd if the values
matched correctly.

This issue was reported on the github repository.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-15 17:00:09 +01:00
Roopa Prabhu
39d3ee6068 ifupdownaddons: bridgeutils: build cache only if bridge-utils installed
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-15 13:16:30 +01:00
Roopa Prabhu
6669f7a991 addon: handle unsupported modules
Example: If /sbin/ethtool is not installed dont run the
ethtool addon module.

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-15 13:16:21 +01:00
Roopa Prabhu
541c2ed7aa ifupdown: disable template execution by default
User will have to enable it by enabling it in
/etc/network/ifupdown2.conf template_enable=1

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-15 13:16:11 +01:00
Roopa Prabhu
a4ae14bb01 config: enable template by default for cumulus
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-15 13:15:03 +01:00
Roopa Prabhu
83e130217d man.rst: fix spelling mistakes as reported by lintian and Piotr
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-15 13:13:39 +01:00
Roopa Prabhu
d2790be054 ifupdown: fixes to make addon scripts work via special config options
ifupdown2 can invoke scripts under /etc/network/if-*.d/*
in the required order with the required environment variables.
This patch includes fixes to execute these scripts.

The following attributes in /etc/network/ifupdown2/ifupdown.conf
can influence the execution behaviour of python-addon modules
and /etc/network/if-*.d/*

<ifupdown.conf>
addon_syntax_check=0

addon_scripts_support=1

addon_python_modules_support=1
</ifupdown.conf>

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-15 13:13:28 +01:00
Julien Fortin
800417aeb2 ifupdown: networkinterfaces: making sure template engine will only be initialized once.
Ticket: None
Reviewed By: Roopa
Testing Done:

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-15 12:18:36 +01:00
Julien Fortin
e272efd9ab ifupdown: networkinterfaces: not importing template engine if no mako keyword found
Ticket: CM-11807
Reviewed By: Roopa, Daniel
Testing Done:

Loading the default template engine (mako) is adding an extra overhead: 100ms
We also import the template engine even if we are dealing with a json input
The overhead is noticable when using NCLU.

With this change we are now important the template engine when a keyword is
found in the configuration file.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-14 20:09:42 +01:00
Roopa Prabhu
60dfcbdf9c ifupdown: fixes to make addon scripts work via special config options
ifupdown2 can invoke scripts under /etc/network/if-*.d/*
in the required order with the required environment variables.
This patch includes fixes to execute these scripts.

The following attributes in /etc/network/ifupdown2/ifupdown.conf
can influence the execution behaviour of python-addon modules
and /etc/network/if-*.d/*

<ifupdown.conf>
addon_syntax_check=0

addon_scripts_support=1

addon_python_modules_support=1
</ifupdown.conf>

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-13 15:39:06 -07:00
Roopa Prabhu
8c26cde05d man.rst: fix spelling mistakes as reported by lintian and Piotr
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-13 15:39:06 -07:00
Roopa Prabhu
f0203a8f2f config: enable template by default for cumulus
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-13 15:39:06 -07:00
Roopa Prabhu
f27710fe96 ifupdown: disable template execution by default
User will have to enable it by enabling it in
/etc/network/ifupdown2.conf template_enable=1

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-13 15:39:06 -07:00
Roopa Prabhu
b54179d2ae addon: handle unsupported modules
Example: If /sbin/ethtool is not installed dont run the
ethtool addon module.

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-13 15:39:06 -07:00
Roopa Prabhu
0aeb3df334 ifupdownaddons: bridgeutils: build cache only if bridge-utils installed
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
2016-07-13 15:39:06 -07:00
Julien Fortin
a28b54359f addons: addressvirtual: allowing address-virtual attr for vrf slave interfaces
Ticket: CM-11745
Reviewed By: Roopa, Nikhil G
Testing Done: configuration provided in the bug

User was attempting to configure a traditional bridge under a VRF with VRR.
When issuing ifreload -a, the configuration failed to apply with an error.

Applying an address-virtual keyword to an interface with upper interfaces
or parent interfaces was not allowed. But now we are allowing the use of
this keyword only for vrf slaves.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-13 23:25:07 +01:00
Julien Fortin
eb377c6ca2 addons may implement syntax_check method to perform specific syntax checks
and validation

Ticket: CM-8101
Reviewed By: Roopa
Testing Done:

The goal of this commit is to provide the addons a new way to perform their
own specific syntax checks. By implementing `syntax_check` method.

The addons will have to make sure the provided ifaceobj is valid.
e.g. vxlan.py:syntax_check(ifaceobj) should check:
self._is_vxlan_device(ifaceobj)

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-12 16:31:29 +01:00
Julien Fortin
6080ea9f9c importing: "nlmanager: changing log level info->debug for TXed messages"
Ticket: CM-11708
Reviewed By: Roopa, Daniel
Testing Done:

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-12 00:39:44 +01:00
Julien Fortin
5fd9723752 importing: "nlmanager: removing IFLA_VXLAN_LINK attribute from packet when creating vxlan"
Ticket:
Reviewed By: Roopa, Daniel
Testing Done:

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-12 00:34:56 +01:00
Julien Fortin
b19c6c100a Revert "addons: bond: reverting validvals "<mac>" change"
This reverts commit 3861c72cf6.
2016-07-11 20:37:41 +01:00
Julien Fortin
ec03145998 addons: vxlan: fixing wrong vxlan-id range
Ticket: None
Reviewed By: Roopa, Daniel
Testing Done: This is not affecting ifupdown2 yet
the validvals attribute is only used by ifedit

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-11 20:36:18 +01:00
Nikhil
c4eac60d6d ifupdownaddons: iproute2: fix 'ifquery -c' fail for 'bridge-pvid' on bridge ports
Ticket: CM-11624
Reviewed By: roopa, julien
Testing Done: using configuration mentioned in the bug

This patch fixes 'ifquery -c' failure for 'bridge-pvid' on
all bridge ports.

The following format of '/sbin/bridge -c vlan show' output was not handled properly
by iproute2

port  vlan ids
swp1   600
       700-710
       711 PVID Egress Untagged
       712-900

iproute2 was parsing the '/sbin/bridge -c vlan show' output with the assumption that
pvid line '711 PVID Egress Untagged' appears before all the vland ids.

Something like this:
port  vlan ids
swp1   711 PVID Egress Untagged
       600
       700-710
       712-900

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-11 09:52:26 -07:00
Nikhil
22945dd634 addons: mstpctl: complete ifquery -r support
Ticket: CM-7841
Reviewed By: roopa, julien
Testing Done: tested all the bridge attributes

added 'ifquery -r' support for 'mstpctl-portpathcost', 'mstpctl-treeportcost', 'mstpctl-portautoedge', 'mstpctl-portbpdufilter', 'mstpctl-portnetwork'

Below is the sample configuration and output

root@dell-s3000-02:~# ifquery -a
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto br0
iface br0
  bridge-vlan-aware yes
  bridge-ports swp42 swp43
  mstpctl-fdelay 14
  mstpctl-txholdcount 5
  mstpctl-forcevers rstp
  mstpctl-maxhops 14
  mstpctl-treeprio 32768
  mstpctl-maxage 19
  mstpctl-hello 3
  mstpctl-ageing 200

auto swp42
iface swp42
  mstpctl-portadminedge yes
  mstpctl-portbpdufilter yes
  mstpctl-portnetwork yes
  mstpctl-portautoedge yes
  mstpctl-treeportprio 127
  mstpctl-portpathcost 10
  mstpctl-portrestrtcn yes
  mstpctl-portrestrrole yes
  mstpctl-bpduguard yes
  mstpctl-treeportcost 100
  mstpctl-portp2p yes

auto swp43
iface swp43
  mstpctl-portadminedge yes
  mstpctl-portbpdufilter yes
  mstpctl-portnetwork yes
  mstpctl-portautoedge yes
  mstpctl-treeportprio 127
  mstpctl-portpathcost 10
  mstpctl-portrestrtcn yes
  mstpctl-portrestrrole yes
  mstpctl-bpduguard yes
  mstpctl-treeportcost 100
  mstpctl-portp2p yes

root@dell-s3000-02:~# ifquery -ra
auto swp42
iface swp42
  mstpctl-portautoedge yes
  mstpctl-portbpdufilter yes
  mstpctl-portpathcost 10
  mstpctl-treeportcost 100
  mstpctl-portnetwork yes
  mstpctl-portadminedge yes
  mstpctl-portp2p yes
  mstpctl-portrestrrole yes
  mstpctl-portrestrtcn yes
  mstpctl-bpduguard yes
  link-speed 0
  link-duplex half
  link-autoneg off

auto swp43
iface swp43
  mstpctl-portautoedge yes
  mstpctl-portbpdufilter yes
  mstpctl-portpathcost 10
  mstpctl-treeportcost 100
  mstpctl-portnetwork yes
  mstpctl-portadminedge yes
  mstpctl-portp2p yes
  mstpctl-portrestrrole yes
  mstpctl-portrestrtcn yes
  mstpctl-bpduguard yes
  link-speed 0
  link-duplex half
  link-autoneg off

auto br0
iface br0
  vxlan-ageing 300
  bridge-vlan-aware yes
  bridge-mcqifaddr 0
  bridge-mcquerier 0
  bridge-mcsnoop 1
  bridge-mcrouter 1
  bridge-stp yes
  bridge-ports swp43 swp42
  mstpctl-portadminedge  swp42=yes swp43=yes
  mstpctl-fdelay 14
  mstpctl-portnetwork  swp42=yes swp43=yes
  mstpctl-txholdcount 5
  mstpctl-maxage 19
  mstpctl-portbpdufilter  swp42=yes swp43=yes
  mstpctl-maxhops 14
  mstpctl-portrestrtcn  swp42=yes swp43=yes
  mstpctl-portpathcost  swp42=10 swp43=10
  mstpctl-portautoedge  swp42=yes swp43=yes
  mstpctl-hello 3
  mstpctl-portrestrrole  swp42=yes swp43=yes
  mstpctl-bpduguard  swp42=yes swp43=yes
  mstpctl-ageing 200
  mstpctl-treeportcost  swp42=100 swp43=100
  mstpctl-portp2p  swp42=yes swp43=yes

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-07-11 09:52:26 -07:00
Julien Fortin
f1bec02e27 nlmanager: nlpacket: vxlan dstport config incorrect
Ticket: CM-11735
Reviewed By: Roopa, Daniel
Testing Done: creating a vxlan with ifupdown then checking the dstport with
ip -d link show $vlxanName

When creating a vxlan nlmanager didn't re-order/byte swap the dstport value
to little endian

46354 instead of 4789

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-10 03:40:25 +01:00
Sam Tannous
45c264cd8d ifupdown2 defaults for link attributes are not applied
Ticket: CM-11718
Reviewed By: CCR-4931
Testing Done: Tested complete regression suite on hardnode in 3.0.

This patch fixes a problem in the ethtool addon module where a single iface stanza was
configured for a link-speed (1G) other then the default (10G). The link-speed config is then
removed or commented out but the link-speed is not restored to its default value (10G) because of
incorrect logic.
2016-07-07 17:16:22 -07:00
Julien Fortin
32a74516d1 addons: moving vxlan creation from iproute2 to netlink (via nlmanager)
Ticket: CM-8035
Reviewed By: CCR-4896
Testing Done: ifupdown smoke, -t vxlan tests

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-05 14:45:08 +02:00
Julien Fortin
182f5a1443 netlink: adding support for netlink vxlan call via nlmanager
Ticket: CM-8035
Reviewed By: CCR-4896
Testing Done: ifupdown smoke, -t vxlan tests

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-05 14:42:54 +02:00
Julien Fortin
3696839d82 python-nlamanger: importing vxlan creation support commit
Ticket: CM-8035
Reviewed By: CCR-4896
Testing Done: ifupdown smoke, -t vxlan tests

julien@hydra-01:~$ time runtests.sh -d cel-redxp-06 -r result_vxlan_all.txt -f . -T vxlan_all.log -l INFO -k $VM_BASE_KERNEL -i $VM_BASE_IMG $TESTS_HOME/tests/ -t vxlan

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-07-05 14:40:19 +02:00
Nikhil
4a41d24b35 addons: bridge: ifquery -c fix for port attributes
Ticket: CM-11195
Reviewed By: roopa, julien
Testing Done: used the configuration mentioned in bug description

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>

running values for bridge-portmcrouter, bridge-portmcfl, and bridge-portprios
were accessed using invalid keys.
2016-06-30 10:17:31 -07:00
Nikhil
0aa91758f4 addons: vrf: remove the FIB rules for vrf devices
Ticket: CM-11392
Reviewed By: roopa, dsa, julien
Testing Done: multiple vrf devices on dell-s3000-02

Now that the l3mdev FIB rule is in the CL3.1 kernel tree,
ifupdown2 no longer needs to manage FIB rules for VRF devices.

Signed-off-by: Nikhil <nikhil@cumulusnetworks.com>
2016-06-27 15:30:49 -07:00
Julien Fortin
26e7207b6b nlmanager: nlpacket: throw an error if the user of nlmanager tries to encode an attribute that we haven't added an encode() method for
+ adding one byte attribute class for protodown operations.

Ticket: CM-11581
Reviewed By: CCR-4721
Testing Done: Smoke + custom interface file with clag bond that requires protodown.

- nlmanager will now throw an exception if a user is trying to use the default
attribute class when in fact he should use a more specific attribute class.

- The protodown implementation needed to use a one byte attribute to set the protodown state

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2016-06-27 00:24:18 +01:00