Commit graph

540 commits

Author SHA1 Message Date
Maximilian Wilhelm
8a58c0ae6d lifecycle: Expose all adresses and gateways via the environment.
Gather all IP addresses and gateways and expose them as IF_ADDRESSES and
  IF_GATEWAYS environment variables to executors. This eliminates the need
  to run ifquery from execuctors which would have to parse the config file
  again on every run.

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 04:43:12 +02:00
Ariadne Conill
6f588a01d5
Merge pull request #92 from BarbarossaTM/doc/manpage-update
Man pages for B.A.T.M.A.N. adv., bridges, ethtool, VRFs
2020-10-05 22:06:43 -04:00
Ariadne Conill
df6835bd62
Merge pull request #98 from BarbarossaTM/feature/pointopoint
static executor: Add support for IPv4 'pointopoint' addresses.
2020-10-05 22:04:58 -04:00
Maximilian Wilhelm
6dc43a2bb4 Let's use "point-to-point" and map "pointopoint" to it.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 04:03:27 +02:00
Maximilian Wilhelm
9832865539 Makefile: Order manpages by section number
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 04:02:24 +02:00
Maximilian Wilhelm
63a5503185 doc: Add a man page for PPP dial-up interfaces
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 04:01:52 +02:00
Maximilian Wilhelm
87fa1760be doc: Add a man page for Wireguard VPN tunnel interfaces
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 04:01:43 +02:00
Maximilian Wilhelm
584f0634ed Add new interfaces-*(5) man pages to Makefile
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 04:01:22 +02:00
Maximilian Wilhelm
596dd8165b doc: Reference CLI tool man pages in interfaces(5)
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 03:56:20 +02:00
Maximilian Wilhelm
05711db6ce doc: Add a man page for bridge interfaces
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 03:56:09 +02:00
Maximilian Wilhelm
adf0f9dd46 doc: Add a man page for B.A.T.M.A.N. adv. interfaces
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 03:55:55 +02:00
Maximilian Wilhelm
3d1d384a6b doc: Add man page for VRF related parameters
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 03:55:09 +02:00
Maximilian Wilhelm
48c87e34c1 tests: Use tabs not spaces.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-06 03:35:42 +02:00
Ariadne Conill
37299e312f
Merge pull request #87 from BarbarossaTM/feature/veth
Add support for veth interface pairs
2020-10-05 14:34:39 -06:00
Ariadne Conill
a66e8465d1
Merge pull request #99 from BarbarossaTM/feature/bonding
Add support for bonding / LAGs.
2020-10-05 14:27:07 -06:00
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
67163c6561 static executor: Add support for IPv4 'pointopoint' addresses.
Closes #96

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-03 20:38:40 +02:00
Ariadne Conill
cc06712611
Merge pull request #94 from ifupdown-ng/bugfix/hetzner-ipv6-default-route-is-link-local
static: always associate default routes with $IFACE
2020-10-02 15:46:03 -06:00
Ariadne Conill
74b6f9487c static: always associate default routes with $IFACE
Hetzner uses link-local addressing for their default IPv6 route,
accordingly we should specify the device a route is associated with
so that it will use the correct interface.

Thanks to Devin Brown for reporting this issue.
2020-10-02 15:44:46 -06:00
Maximilian Wilhelm
68e08cae7e
Merge pull request #89 from BarbarossaTM/feature/vxlan
Add support for VXLAN interface
2020-10-02 22:36:22 +02:00
Maximilian Wilhelm
7cf353dd22 doc: Polish VXLAN related documentation.
Thanks-to: Blake W.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 22:29:01 +02:00
Maximilian Wilhelm
704b2feecb doc: Move VXLAN documentation into own man page.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 21:24:21 +02:00
Maximilian Wilhelm
0b23f5bc86
Merge pull request #88 from BarbarossaTM/feature/debian-packaging
Add files required for Debian packaging
2020-10-02 03:09:37 +02:00
Maximilian Wilhelm
98ac007ffe
Merge pull request #90 from BarbarossaTM/chore/link-executor
Clean up link executor
2020-10-02 03:09:14 +02:00
Maximilian Wilhelm
12b0872349 vxlan executor: Fix typo and remove code copied from link executor.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 03:06:22 +02:00
Maximilian Wilhelm
1f1d4f5bad man: Add documentation for VXLAN parameters.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 03:05:30 +02:00
Maximilian Wilhelm
fef7c55270 link exectutor: Don't re-create dummy interface when present.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 02:29:39 +02:00
Maximilian Wilhelm
c6faf452b9 link executor: Don't complain about a vanished interface when downing it
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 02:29:04 +02:00
Maximilian Wilhelm
ee582ac9b0 vxlan: Add tests
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 02:25:55 +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
bd8ad91de6 Add files required for Debian packaging
* Systemd unit file for networking.service
 * Small wrapper script called by networking.service
 * Defaults file for networking.service

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-10-02 00:55:34 +02:00
Maximilian Wilhelm
3035627c93 link executor: Add dependency between veth pairs
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-09-25 22:07:10 +02:00
Maximilian Wilhelm
f708bb1465 link executor: Add support for veth interfaces
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-09-25 22:04:53 +02:00
Maximilian Wilhelm
044d8307f9
Merge pull request #86 from ifupdown-ng/feature/ifquery-skip-depgraph-for-iface-queries
ifquery: don't build the dependency tree when querying for an interface's properties
2020-09-25 20:59:54 +02:00
Ariadne Conill
5615c30fd0 ifquery: don't build the dependency tree when querying for an interface's properties 2020-09-25 08:43:26 -06:00
Ariadne Conill
9c76528fe1
Merge pull request #84 from BarbarossaTM/feature/reduce-failure.domain
ifupdown: Don't configure errornous interfaces.
2020-09-24 18:34:29 -06: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
a3d11ded43 ifupdown: Be consistent in error messages.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-09-25 02:26:21 +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
fafce2f262 config-file: add missing default for implicit_template_conversion 2020-09-24 15:36:22 -06:00
Ariadne Conill
d177bfa553
Merge pull request #83 from ifupdown-ng/feature/alias-keywords-for-iface
inherit/template system improvements
2020-09-24 15:24:06 -06:00
Ariadne Conill
a55ef85776 doc: interfaces: describe template inheritance 2020-09-24 15:19:53 -06:00
Ariadne Conill
60d0ed34b8 interface: make interface-to-template conversion a config option (defaulting to enabled) 2020-09-23 19:07:52 -06:00
Ariadne Conill
243a9b92ce ifupdown: skip over template interfaces at warning time instead of letting lif_lifecycle_run() fail 2020-09-23 11:52:22 -06:00
Ariadne Conill
f224c04804 interface: explicitly convert any inherited interface into a template 2020-09-23 11:47:13 -06:00
Ariadne Conill
f9683c2242 ifupdown: complain to the user if they try to bring up or tear down a template interface 2020-09-23 11:42:09 -06:00
Ariadne Conill
580f054d7e lifecycle: do not allow lif_lifecycle_run() on a template 2020-09-23 11:39:45 -06: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
41a71173d1 ifquery: display template interfaces as templates, not as iface 2020-09-23 11:35:27 -06:00
Ariadne Conill
5c5c316ebf interface: add config setting to restrict inheritance to template interfaces 2020-09-23 11:34:35 -06:00