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

186 Commits

Author SHA1 Message Date
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
8ebee96099 Merge pull request #121 from aderumier/arpaccept
add arp-accept option.
2019-10-24 16:21:29 -07:00
Julien Fortin
5e30d3b545 ifupdownmain: detect interfaces no longer configured but pick up by regexes
This patch will detect interfaces that were removed from /etc/network/interfaces
but still got pick up by a regex (i.e. bridge-port vni*) and manually remove
those interfaces from internal data-structures (i.e. dependency graph).

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:53:33 +02:00
Julien Fortin
224f1db80d ifupdown: log: drop comments
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:52:05 +02:00
Julien Fortin
1589716377 addons: address: if hwaddress changed delete old fdb entry
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:51:45 +02:00
Julien Fortin
ff775ef150 addons: bond: enable ipv6 on brports before bond enslaving
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:51:34 +02:00
Julien Fortin
97fc046b41 addons: vrf: enable_ipv6: rename method and add sysfs check for brport
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:51:24 +02:00
Julien Fortin
40a693172d reverting the iface.py changes ; addons: vrf: enable ipv6 on slaves
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:51:12 +02:00
Julien Fortin
986965c169 nlmanager: nlmanager: retry binding tx_socket up to NLMANAGER_BIND_RETRY times
NLMANAGER_BIND_RETRY env variable defaults to 4242

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:49:42 +02:00
Julien Fortin
2e2dcdaf36 addons: address: remove old ip address when intf is moved to dhcp
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:49:21 +02:00
Julien Fortin
d92f630c59 addons: vrf: enable ipv6 on vrf slaves when moved from bport
Remove/add swp2 from br0 and vrf blue

auto swp2
iface swp2
      vrf blue

auto br0
iface br0
      bridge-ports swp1
      address 10.0.0.11/24
      bridge-vlan-aware no

auto blue
iface blue
      vrf-table auto

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:48:59 +02:00
Julien Fortin
f5c47abf3d LinkUtils: convert ip addrs to string before comparing them
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:48:26 +02:00
Julien Fortin
89f5bbe52c ifupdownmain: ifquery check read_iface_config errors
auto swp1
iface swp1
      typo_attribute 42

$ ifquery -ac
error: /etc/network/interfaces: line9: iface swp1: unsupported keyword (typo_attribute)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp                                                [pass]

auto swp1
iface swp1

$ echo $?
1
$
$ echo $?
1
$ ifup -a
error: /etc/network/interfaces: line9: iface swp1: unsupported keyword (typo_attribute)
$ echo $?
1
$

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-09-18 12:47:29 +02:00
Alexandre Derumier
45db39f606 add arp-accept option.
Currently, the only way to enable arp-accept is to enable
a policy with l3_intf_arp_accept.

But this enable arp-accept for all bridges.

This option allow to define it for specific bridge.

This is needed with bgp-evpn and vm migration
https://github.com/FRRouting/frr/issues/4904
2019-09-03 09:43:38 +02:00
Julien Fortin
5e8a4802f1 setup.py: bumping version from 1.2.5 to 1.2.9
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-07-24 23:55:19 +02:00
Julien Fortin
a6f6c8b2ad addons: dhcp: PEP8 fixes
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-07-12 12:22:10 +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
Maximilian Wilhelm
f5c97c0d6b Add bridge-ports-condone-regex option (closes #117)
The bridge-ports-condone-regex option can be used to tell ifupdown2 to let
  some bridge member ports alone and do not remove them on ifreload runs.
  This might come in handy when running a KVM (or any other virtualization
  system) host with a bridged network setup.

  Before this option, ifupdown2 would either complain about not existing
  member ports when setting up the bridge (if all VM interfaces were to
  be specified in /etc/network/interfaces) or remove any VM interface
  from a bridge if it was not specified in /e/n/i.

Signed-off-by: Maximilian Wilhelm <max@rfc2324.org>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
Co-authored-by: Julien Fortin <julien@cumulusnetworks.com>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-07-09 19:22:52 +04:00
Rajendra Dendukuri
f62cfb7b95 addons: dhcp: Policy to specify DUID type to use on dhcpv6 requests
Add a ifupdown2 policy attribute dhcp6-duid to allow user to specify the DUID type
to be used on an IPv6 enabled interface.

Signed-off-by: Rajendra Dendukuri <rajendra.dendukuri@broadcom.com>
2019-07-06 15:14:38 -07:00
Julien Fortin
ee0075399a addons: addressvirtual: keep macvlan down if link-down specified on lower device
auto vlan1755
iface vlan1755
        address 172.21.7.42/29
	address-virtual 00:00:5E:00:01:41 172.21.7.41/29
	link-down yes
	vlan-id 1755
	vlan-raw-device bridge

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-24 15:39:46 +08:00
Julien Fortin
d1477c4b9f addons: when comparing mac addresses use integer representation
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-12 23:26:20 +08:00
Julien Fortin
2be8e23956 Merge pull request #108 from rajendra-dendukuri/ll_wait_option
Policy to wait for IPv6 link local address to be available
2019-06-12 01:01:36 +08:00
Rajendra Dendukuri
0cc54cf374 addons: dhcp: Policy to wait for IPv6 link local address to be available
Rename the policy attribute as dhcp6-ll-wait.
Changed logic to reuse existing timeout variable to store user provided value.
2019-06-11 06:29:43 -04:00
Julien Fortin
f279a8ef8f Merge pull request #111 from svenauhagen/feature/xfrm
This commit adds support for the new IPSec Interface XFRM.
2019-06-07 00:22:39 +08:00
Sven Auhagen
bff520b123 xfrm id 2019-06-06 17:53:41 +02:00
Julien Fortin
255ffb1fc3 addons: bridge: set bridge mtu on device creation
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-06 19:18:29 +08:00
Julien Fortin
4b1a6ffdaf policymanager: merge module policy instead of overriding duplicates
When module policies are split up in seperate files ifupdown2 doesn't merge
them together but simply overrides duplicates. This pathc fixes the issue
and merge the related policies together.

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-06 19:18:11 +08:00
Julien Fortin
19ee2b1139 addons: address: set default mtu on user defined device (via link-type)
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-06 19:17:57 +08:00
Julien Fortin
c02de75ec0 addons: addressvirtual: fix older vrrp macvlan doesn't get removed
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-06-06 19:17:32 +08:00
Quentin Young
61e63e797b addons: protodown vrrp macvlans only when created
Not when we are reloading and applying config ot existing macvlans -
somebody may be using them, we don't want to protodown them in that
case.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2019-06-06 19:17:12 +08:00
Roberto Barreda
174429766c fix cmd concatenation 2019-06-05 17:11:02 +02:00
sven
c5e4ed1594 Update xfrm.py
Update copyright text
2019-06-05 13:15:10 +02:00
Sven Auhagen
ca42da726a This release adds support for the new IPSec Interface XFRM.
It is available since Kernel 4.19 and has two parmeters:

1. XFRM ID to map to an SA/SAs
2. Underlying Interface if you want to take advantage of IPSec Hardware Offload

Otherwise it is treated as a normal interface and not like a tunnel (VTI).

I added two attributes to the interface to configure it and otherwise use it as a normal interface.
One example is:

auto ipsec1
iface ipsec1 inet
	xfrm-physdev lo
	xfrmid 1
2019-06-05 11:05:33 +02:00
Alexandre Derumier
848bf7aa85 Fix error message on ifquery when sysctl bridge-stp-user-space
This fix this kind of error:

error: bond0: cmd '/sbin/sysctl net.bridge.bridge-stp-user-space' failed: returned 255 (sysctl: cannot stat /proc/sys/net/bridge/bridge-stp-user-space: No such file or directory
)
error: fwpr103p0: cmd '/sbin/sysctl net.bridge.bridge-stp-user-space' failed: returned 255 (sysctl: cannot stat /proc/sys/net/bridge/bridge-stp-user-space: No such file or directory
)
2019-06-03 11:45:27 +02:00
Rajendra Dendukuri
a252fb200d Policy to wait for IPv6 link local address to be available
Add a ifupdown2 policy attribute to allow user to tune the wait time to be
allowed before the dhclient can be started on an IPv6 enabled interface.
2019-06-01 09:44:04 -04:00
Maximilian Wilhelm
ff1f1df92a addons: batman_adv: Add support to set B.A.T.M.A.N. advanced routing_algo
Add a new attribute for B.A.T.M.A.N. advanced interfaces to control the
  B.A.T.M.A.N. advanced routing algorithm to be used when setting up new
  interfaces. As the routing algorithm must be set before an interface is
  created, it needs special handling and can't be implemented as a common
  attribute. D'oh.

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
Tested-by: Annika Wickert <aw@awlnx.space>
2019-05-25 14:16:30 +02:00
Julien Fortin
3c46320a2b Merge pull request #103 from aderumier/fix-ifquery-speed
Fix ifquery speed
2019-05-22 17:55:14 +08:00
Alexandre Derumier
52712b1ace readd support for self.ipforward
if user want to setup default forwarding with a global policy
2019-05-15 07:15:00 +02:00
Alexandre Derumier
472db7e6a3 addressvirtual: _query_running : use cache instead glob 2019-05-10 09:42:42 +02:00
Alexandre Derumier
c20b7810e4 mstpctl: don't load module if missing /sbin/mstpctl 2019-05-10 09:42:42 +02:00
Alexandre Derumier
3e074210cf batman_adv: don't load module if missing batctl 2019-05-10 09:42:42 +02:00
Alexandre Derumier
3e8a915365 linkutils: _bridge_attrs_fill: use sysfs 2019-05-10 06:23:52 +02:00
Alexandre Derumier
42ef1cce92 don't change interface forwarding value if not defined 2019-05-04 15:12:00 +02:00
Julien Fortin
9b585f9e67 addons: bridge: down: when ifreload_down_changed=1: purge bridge and upper devices cache
On ifreload (down ops) we need to purge the cache entry of the bridge and its upper devices
to avoid stale values in our cache.

ifup this config, then remove bridge-vids 20, ifreload: since the bridge is removed because
of ifreload_down_changed=1, we need torecreate the vlan bridge.10 and it's configuration, the
cache is stale. We need to clear it to remove the ip 10.10.10.10/32.

auto bridge
iface bridge
      bridge-ports swp1 swp2
      bridge-vids 10 20
      bridge-vlan-aware yes

auto swp1
iface swp1
      link-speed 10000

auto swp2
iface swp2

auto bridge.10
iface bridge.10
      address 10.10.10.10/32

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:56:14 +08:00
Quentin Young
92c2d4a9e7 addons: addressvirtual: vrrp: protodown new macvlans
New VRRP macvlan devices should be set into protodown when first
created, to prevent ND traffic and other automatically generated kernel
traffic from being transmitted on the interface and causing downstream
MAC moves.

Reviewed-by: Julien Fortin <julien@cumulusnetworks.com>
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:55:47 +08:00
Julien Fortin
1b9d23e8a0 addons: bridge: don't disable ipv6 on vlan-aware vxlan-bridge
ipv6 shouldn't be disabled on a bridge vlan aware

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:55:28 +08:00
Julien Fortin
3832dce663 addons: bridge: get default mcsnoop value when bridge_vxlan is not set
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:55:09 +08:00
Julien Fortin
dbc23e6cbf nlpacket: vxlan: encode: fix payload length
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:53:59 +08:00
Julien Fortin
32d448a81c addons: addressvirtual: vrrp: set addrgen mode random on VRRP macvlans
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
2019-04-22 10:53:42 +08:00