From e24e6446fdb978964e23d77721d2b16cc6a3afb0 Mon Sep 17 00:00:00 2001 From: Roberto Bonafiglia Date: Mon, 4 Apr 2022 16:10:37 +0200 Subject: [PATCH] Added new flannel backend to use wireguard from flannel Signed-off-by: Roberto Bonafiglia --- pkg/agent/flannel/setup.go | 7 +++++++ pkg/daemons/config/types.go | 13 +++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/pkg/agent/flannel/setup.go b/pkg/agent/flannel/setup.go index 404eda899a..0f345d87f7 100644 --- a/pkg/agent/flannel/setup.go +++ b/pkg/agent/flannel/setup.go @@ -75,6 +75,11 @@ const ( "SubnetRemoveCommand": "read PUBLICKEY; wg set flannel.1 peer $PUBLICKEY remove" }` + wireguardNativeBackend = `{ + "Type": "wireguard", + "PersistentKeepaliveInterval": 25 +}` + emptyIPv6Network = "::/0" ipv4 = iota @@ -199,6 +204,8 @@ func createFlannelConf(nodeConfig *config.Node) error { } case config.FlannelBackendWireguard: backendConf = strings.ReplaceAll(wireguardBackend, "%flannelConfDir%", filepath.Dir(nodeConfig.FlannelConfFile)) + case config.FlannelBackendNativeWireguard: + backendConf = wireguardNativeBackend default: return fmt.Errorf("Cannot configure unknown flannel backend '%s'", nodeConfig.FlannelBackend) } diff --git a/pkg/daemons/config/types.go b/pkg/daemons/config/types.go index 43c49c6a2c..afc67fbc07 100644 --- a/pkg/daemons/config/types.go +++ b/pkg/daemons/config/types.go @@ -17,12 +17,13 @@ import ( ) const ( - FlannelBackendNone = "none" - FlannelBackendVXLAN = "vxlan" - FlannelBackendHostGW = "host-gw" - FlannelBackendIPSEC = "ipsec" - FlannelBackendWireguard = "wireguard" - CertificateRenewDays = 90 + FlannelBackendNone = "none" + FlannelBackendVXLAN = "vxlan" + FlannelBackendHostGW = "host-gw" + FlannelBackendIPSEC = "ipsec" + FlannelBackendWireguard = "wireguard" + FlannelBackendNativeWireguard = "native-wireguard" + CertificateRenewDays = 90 ) type Node struct {