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

123 Commits

Author SHA1 Message Date
Julien Fortin
9808982edf addons: bond: add support for es-sys-mac and es-bonds
ES bonds have the same "init state" requirements as CLAG bonds -
1. A bond needs to be designated as an "es-bond" for this purpose.
For clag-bonds we used "clag-id" attr (to designate a bond as a "clag-bond").
For ES bonds we will use "es-sys-mac" attr.

2. Slaves added to an "ES bond" must have protodown-on.
This is again similar to CLAG bonds

3. And vice-versa i.e. when a slave is removed from an "es-bond",
protodown-on must be cleared.

4. When es-sys-mac is first set on a bond, all the bond-slaves must be
placed in "protodown-on" state. This is needed whether FRR is running at that point or not.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-05-13 20:27:21 +02:00
bauen1
95f029fde1 add missing build dependency
Signed-off-by: bauen1 <j2468h@gmail.com>
2020-05-11 20:56:37 +02:00
Julien Fortin
ff68815574 debian: control: bump Standards-Version
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-04-14 19:22:54 +02:00
Julien Fortin
74bac7e553 debian: changelog: update 3.0.0-1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-04-14 19:22:37 +02:00
Julien Fortin
62d960cc1b completion: removing argcomplete support
this feature doesn't seem to be working anyway. This can be revisited in the
future but this allows us to drop the python3-argcomplete dependency for now

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-04-14 16:50:04 +02:00
Julien Fortin
16de4e7988 Merge branch 'master' into python3
* master:
  addons: address: process MTU before addrgen and adddresses
  ifupdownmain: support for marking interfaces as mgmt interfaces
  addons: bridge: fix TypeError: sequence item 0: expected string, int found
  addons: bridge: set bridge MTU after bridge creation addons: bridge: get bridge MTU from address policy not bridge
  addons: mstpctl: check mstpctl-stp and bridge-stp and fix bridge cache update
  lib: nlcache: fix dry_run exception
  addons: address: add support for a separate default mtu policy for eth interfaces
  debian: changelog: new 2.0.2-1 entry
  addons: ethtool: add support for "ethtool_ignore_errors" policy
  LinkUtils: mac_str_to_int: fix string to int conversion
  addons: dhcp: if mgmt vrf context exec dhclient in default vrf
2020-03-26 03:02:53 +01:00
Julien Fortin
f43edf057e debian: changelog: new 2.0.2-1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-03-04 16:24:50 +01:00
Julien Fortin
5b3907dc6b debian: changelog: update 3.0.0-1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-02-24 16:25:13 +01:00
Julien Fortin
e79ed23595 debian: add ifupdown2.lintian-overrides
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-01-28 17:00:50 +01:00
Julien Fortin
880645f250 python3: debian: control: update python3:depends
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-01-28 17:00:18 +01:00
Julien Fortin
516fd7266f python3: update debian files to build python3 deb
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2020-01-08 12:22:58 +01:00
Julien Fortin
3aa8da8a6c Merge branch 'master-next' into python3
* master-next:
  argv: move --nldebug option to common_argparse to avoid exception in ifreload
  debian: changelog: new 2.0.1-1 entry
  argv: add new command line argument --nldebug
  This commit adds the feature to change offloads for nics. Currently GRO, LRO GSO, TSO, UFO, TX and RX Offload are supported.
2020-01-02 15:50:51 +01:00
Julien Fortin
e65fae4889 debian: changelog: new 2.0.1-1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-12-31 15:25:07 +01:00
Julien Fortin
d053bb48c5 debian: postinst: remove apt install, add log message instead 2019-12-17 18:26:58 +01:00
Julien Fortin
8248d0befc debian: postinst: add work-around to manually install python3-ipaddr
python3 ipaddress behave differently from python2-ipaddr, this is
a serious problem for us since it breaks most of the ip addresses
code. The work around install the python3-ipaddr via pip3 (and
installs pip3 if necessary). The workaround will stay in the code
util the ipaddress issue is fixed.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-12-17 17:38:25 +01:00
Julien Fortin
45864399b0 Revert "python3: ipaddress is now part of the standard library (removing python-ipaddr)"
This reverts commit 5dded70eaa.
2019-12-17 17:35:51 +01:00
Julien Fortin
5dded70eaa python3: ipaddress is now part of the standard library (removing python-ipaddr)
IPNetwork doesn't exists anymore and is replaced by ip_network. IPv?Network (4 and 6)
objects take an optional argument "strict" that defaults to True. If strict is set
and the ip address has the host bit set it will raise an exception. This is bad
for ifupdown2, so we need to replace all calls to IPNetwork and IPv?Network with
function who will set strict to False. That way we can limit the number of changes
for this patch.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-12-17 17:27:51 +01:00
Julien Fortin
7e9990b1e8 setup.py: bump version to 3.0.0 and update changelog
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-12-17 17:23:13 +01:00
Julien Fortin
223ba5af1d ifupdown2 2.0.0-1
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-12-17 13:46:18 +01:00
Julien Fortin
5fb588fc9a debian: changelog: add empty 1.2.9-1 entry for next release
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-07-12 12:47:06 +04:00
Julien Fortin
79ba6a415a debian: changelog: add new changelog entry 1.2.8-1
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-07-12 12:22:36 +04:00
Julien Fortin
d0df31ff9d Merge pull request #116 from rajendra-dendukuri/dhcp6_duid
addons: dhcp: Policy to specify DUID type to use on dhcpv6 requests
2019-07-12 12:18:02 +04:00
Rajendra Dendukuri
1321d5e357 addons: dhcp: Policy to specify DUID type to use on dhcpv6 requests
Update module description and changelog

Signed-off-by: Rajendra Dendukuri <rajendra.dendukuri@broadcom.com>
2019-07-10 22:43:28 -07:00
Julien Fortin
cf1dac2ff7 debian: changelog: add new 1.2.7-1 entry
* New: Add bridge-ports-condone-regex option (closes #117)

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-07-09 19:28:33 +04:00
Julien Fortin
c9091d7108 debian: changelog: updating 1.2.6-1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-24 15:52:06 +08:00
Julien Fortin
8cea3591b5 debian: changelog: update 1.2.6-1 entry
* New. policymanager: merge module policy instead of overriding duplicates
* New: set default mtu on user defined device (via link-type)

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-06 19:19:42 +08:00
Julien Fortin
adf8e888e3 debian: changelog: update 1.2.6-1 entry before release
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 11:05:12 +08:00
Julien Fortin
c3f1a1a064 debian: changelog: 1.2.6-1: update changelog entry for new release
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:52:21 +08:00
Julien Fortin
ec25a08c3a addons: vxlan: add support for vxlan-ttl attribute
New vxlan-ttl attribute: specifies the TTL value to use in outgoing
packets. Valid values: range 1..255 or auto (0)

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:48:36 +08:00
Julien Fortin
09f9afc782 debian: changelog: update 1.2.5-1 timestamp entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-01-21 11:01:13 +08:00
Julien Fortin
739f9c7ea0 scheduler: ifupdown2 scripts: log warning on EACCES exception (Fixes #89)
ifupdown2 behaviour significantly diverges from ifupdown on debian stretch.
Original ifupdown uses run-parts which supposedly doesn't run non-executable
files in the directory. However, ifupdown2 doesn't seem to make this
distinction.
This patch will log warning EACCES exceptions (instead of log error) and exit 0

Reported-by: George Diamantopoulos <gedia>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-01-18 15:52:59 +08:00
Julien Fortin
35b9d035c1 debian: install sysvinit script (Fixes: #26)
Fixes github issue #26 and debian bug #918775

Reported-by: Joerg Dorchain <joerg@dorchain.net>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>

Co-authored-by: Joerg Dorchain <joerg@dorchain.net>
Co-authored-by: Julien Fortin <julien@cumulusnetworks.com>
2019-01-17 12:26:47 +08:00
Julien Fortin
0aa3d31930 debian: postinst: remove diversion after upgrade from stretch
closes: #919443

Reported-by: Andreas Beckmann <anbe@debian.org>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-01-16 18:35:28 +08:00
Julien Fortin
9f98f3604e statemanager: configure state_dir via ifupdown2.conf
ifupdown2 used /var/tmp/network/ to store its state file
upstream users reported that when /var/tmp is not mounted
before network configuration ifupdown2 fails. We now let
user define which location they want to use for the state
file.

closes: #918832

Reported-by: Maximilian Wilhelm <max@sdn.clinic>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-01-11 12:08:10 +08:00
Julien Fortin
72ba456971 log: use stderr if syslog initialization fails
closes: #917534

Reported-by: Joerg Dorchain <joerg@dorchain.net>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-30 22:45:47 +07:00
Julien Fortin
e28cc68413 debian: changelog: add debian revision and refactor 1.2.2-1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-20 11:18:22 +01:00
Julien Fortin
7a3f3bbefd debian: changelog: add B.A.T.M.A.N. changelog entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-20 09:48:43 +01:00
Julien Fortin
cf98afd144 debian: control: add python-pkg-resources to suggested dependencies-list
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-19 20:34:53 +01:00
Julien Fortin
ca45d4aaa8 man: remove non-implemented -m option (closes: #905572)
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-19 20:04:33 +01:00
Julien Fortin
e5019fc9b8 debian: changelog: tag older version with UNRELEASED tag
some of those release were available but under a different name so
technically those version numbers were never released.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-19 18:56:31 +01:00
Julien Fortin
0cbd3d8c05 debian: source: format: moving to non-native package
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-19 18:56:02 +01:00
Julien Fortin
e38b64a51c debian: control: update debhelper dependency and drop dh-systemd
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-19 18:46:21 +01:00
Julien Fortin
3b69ce6e62 debian: changelog: new entry for version 1.2.2
ifupdown2 (1.2.2) unstable; urgency=medium

  * Support for new iproute2 format (bridge vlan show)
  * Pypi install: local addons modules should be loaded first
  * Fix: link-down yes on vrf slaves
  * Fix: nlmanager: use strerror to format kernel error
  * Add: new checks for existing device with vxlan attributes
  * Ethtool: FEC: translate None and NotSupported values to link-fec off

 -- Julien Fortin <julien@cumulusnetworks.com>  Thu, 13 Dec 2018 23:42:42 -0800

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 17:09:46 -08:00
Julien Fortin
9d50518591 addons: address: new l3_intf_default_gateway_set_onlink policy closes #54
As shown in the following example, ifupdown1 sets the default route with the
onlink attribute. This patch will add this capability to ifupdown2 controlled
by a policy variable in the address module: "l3_intf_default_gateway_set_onlink"
default to on

[19:16:07] root:~ # cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto enp0s3
iface enp0s3 inet static
      address 78.46.193.234/32
      gateway 172.31.1.1
[19:16:19] root:~ # ifup -a -v
ifup: configuring interface enp0s3=enp0s3 (inet)
...
/bin/ip addr add 78.46.193.234/255.255.255.255 broadcast 78.46.193.234	  dev enp0s3 label enp0s3
/bin/ip link set dev enp0s3   up
/bin/ip route add default via 172.31.1.1  dev enp0s3 onlink
...
[19:16:21] root:~ # ip route show
default via 172.31.1.1 dev enp0s3 onlink
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15
169.254.0.0/16 dev enp0s3 scope link metric 1000
[19:16:21] root:~ #

$ cat /etc/network/ifupdown2/policy.d/address.json
{
    "address": {
	"module_globals": {
	    "l3_intf_default_gateway_set_onlink": "yes"
	}
    }
}
$ ifquery swp1
auto swp1
iface swp1 inet static
	address 78.46.193.234/32
	gateway 172.31.1.1

$ ifreload -av |& grep "route add default"
info: executing /bin/ip route add default via 172.31.1.1 proto kernel dev swp1 onlink
$
$
$ emacs -nw /etc/network/ifupdown2/policy.d/address.json
$ cat /etc/network/ifupdown2/policy.d/address.json
{
    "address": {
	"module_globals": {
	    "l3_intf_default_gateway_set_onlink": "no"
	}
    }
}
$ ifdown -a -X eth0
$ ifreload -av |& grep "route add default"
info: executing /bin/ip route add default via 172.31.1.1 proto kernel dev swp1
$

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 14:43:57 -08:00
Julien Fortin
629b46992d debian: changelog: update all entry to unstable distribution
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 14:43:57 -08:00
Julien Fortin
2eecfaf3dd debian: changelog: 1.2.1: set RELEASED
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 14:43:57 -08:00
Julien Fortin
ebfc7e2952 debian: changelog: update 1.2.1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 14:43:57 -08:00
Julien Fortin
3abe662118 debian: changelog: 1.2.1: update entry date
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 14:43:57 -08:00
Julien Fortin
3dcd868f84 debian: watch: removing watch file according to debian-watch-file-in-native-package (lintian warning)
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 14:43:57 -08:00
Julien Fortin
1b5c4ba96f debian: changelog: add l3_intf_arp_accept policy to 1.2.1 entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2018-12-13 14:43:57 -08:00