Commit graph

40 commits

Author SHA1 Message Date
Maximilian Wilhelm
9ee3a874d4 Add support for bonding / LAGs.
* Add a bond executor
  * Add mappings from ifupdown1/2
  * Add a detailed man page
  * Remove legacy compatiblity glue for setups with 'requires' only

  The current implementation has to work around the fact that member interfaces
  will be already up then the bond is created. This is simply done by downing
  them, adding them to the bundle and upping them again. This can possible be
  done in a nicer way after revisiting the ordering of plugin execution (#12).

  Closes #91

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-04 01:35:41 +02:00
Maximilian Wilhelm
3f67b2137d Add VXLAN support
Add a vxlan exectutor as well as mappings from ifupdown2 parameters to ours.

  Closes #75

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 02:20:10 +02:00
Maximilian Wilhelm
88f25e41c6 ifupdown: More specific error message.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-09-25 02:28:05 +02:00
Maximilian Wilhelm
8dc2295006 ifupdown: Don't configure errornous interfaces.
Do not configure interfaces which have a configuration know to be broken.
  Currently this only happens when using "inherit" to an non-existing iface
  or to an iface and not a template, and having allow_any_iface_as_template
  set to 0.

  In those cases broken ifaces will not be configured unless ifup/ifdown is
  invoked with --force.

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-09-25 02:15:16 +02:00
Ariadne Conill
94f00b2fdc interface-file: do not allow templates to be set as automatic 2020-09-23 11:38:29 -06:00
Ariadne Conill
a3987b46c8 interface-file: mark interface as template if template keyword is used 2020-09-23 11:29:01 -06:00
Ariadne Conill
eb70e48ece interface-file: add interface and template keywords as alias for iface 2020-09-23 11:26:28 -06:00
Ariadne Conill
f96cb273a0 interface-file: remap hardware-irq-coalesce- namespace to ethtool-coalesce- namespace 2020-09-21 09:56:48 -06:00
Ariadne Conill
2078f63e62 interface-file: remap debian hardware DMA ring terms to ethtool-dma namespace 2020-09-21 09:30:12 -06:00
Ariadne Conill
a8fcf5502f add a missing translation 2020-09-19 09:20:14 -06:00
Ariadne Conill
27e11adac6 interface-file: remap properties used by both debian and ifupdown2 ethtool addons to the ethtool- namespace 2020-09-19 09:20:14 -06:00
Maximilian Wilhelm
64b24b02ed Remove leading whitespaces before interface attribute values.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-08-30 22:18:07 +02:00
Ariadne Conill
6d15f21073 interface: handle is_bridge and is_bond hacks in a single place 2020-08-20 04:07:51 -06:00
Ariadne Conill
aba140a977 interface-file: use bsearch to find parser functions 2020-08-20 04:04:34 -06:00
Ariadne Conill
4a11d4fdd8 interface-file: break out source keyword handling 2020-08-20 03:46:31 -06:00
Ariadne Conill
df9c0284b1 interface-file: let commands initialize the interface collection themselves 2020-08-20 03:45:56 -06:00
Ariadne Conill
b57aba1a97 interface-file: split out auto keyword handling 2020-08-20 03:41:07 -06:00
Ariadne Conill
d36a522470 interface-file: add and use report_error() 2020-08-20 03:34:59 -06:00
Ariadne Conill
0928f07af5 interface-file: imply static executor use if gateway is specified 2020-08-20 03:20:07 -06:00
Ariadne Conill
e5c592f2c1 remove lif_interface.is_dhcp too 2020-08-20 03:14:57 -06:00
Ariadne Conill
846df3272f remove lif_interface.is_static, no longer used 2020-08-20 03:10:26 -06:00
Ariadne Conill
d463d455da simplify executor use statements 2020-08-20 03:08:29 -06:00
Ariadne Conill
075352b631 interface-file: remap ttl to tunnel-ttl 2020-08-19 06:20:15 -06:00
Ariadne Conill
c24143982f interface-file: map 'mode' to tunnel-mode 2020-08-19 06:19:05 -06:00
Ariadne Conill
9cc74b58c4 interface-file: remap legacy ifupdown & ifupdown2 tunnel parameters 2020-08-19 06:18:40 -06:00
Ariadne Conill
823544aace interface-file: map ppp-provider 2020-08-19 06:03:48 -06:00
Ariadne Conill
cb03eb1ee9 interface-file: remap problematic ifupdown2 tokens to our equivalents 2020-08-19 02:10:54 -06:00
Ariadne Conill
6c7fa2919d interface-file: add support for inherit/inherits keyword 2020-08-04 11:46:56 -06:00
Ariadne Conill
0eb25f1d62 interface file: simplify scanning iface directives for relevant keywords 2020-08-04 11:32:34 -06:00
Ariadne Conill
81d0ebc3e8 remove unnecessary strcmp wrapper, use typecasting instead 2020-07-28 17:57:51 -04:00
Maximilian Wilhelm
73f3690432 Deduce which addons to 'use' from parameters names (closes #6)
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-07-28 22:44:49 +02:00
Ariadne Conill
52d2bad3b8 interface: always attach "use link" executor 2020-07-26 03:29:16 -06:00
Ariadne Conill
cae16c5758 simplify loopback 2020-07-26 02:59:15 -06:00
Ariadne Conill
987e6399de libifupdown: interface: add support for automatic "use static" insertion 2020-07-26 02:32:00 -06:00
Ariadne Conill
690190a0b9 libifupdown: interface-file: do not process use directives unless in an interface context 2020-07-25 08:49:37 -06:00
Ariadne Conill
16af3755e0 use "use loopback" hint instead of "inet loopback", same with dhcp 2020-07-24 05:00:49 -06:00
Ariadne Conill
a3c138b9b2 interface-file: add some backwards compatibility hacks with use (ref #3) 2020-07-24 04:39:41 -06:00
Ariadne Conill
5c75cdcab0 libifupdown: inline the tokenization functions 2020-07-24 04:12:42 -06:00
Ariadne Conill
86a83d9e95 implement /e/n/i parsing 2020-07-18 18:48:49 -06:00
Ariadne Conill
32560de5ca add stub lif_interface_file_parse() 2020-07-18 18:02:25 -06:00