Skip to content
This repository was archived by the owner on Jan 3, 2025. It is now read-only.

Commit a666643

Browse files
committed
Enable IP forwarding in azure
1 parent 0b9a678 commit a666643

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

pkg/cloudprovider/provider/azure/create_delete_resources.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ func getVirtualNetwork(ctx context.Context, c *config) (network.VirtualNetwork,
319319
return virtualNetworksClient.Get(ctx, c.VNetResourceGroup, c.VNetName, "")
320320
}
321321

322-
func createOrUpdateNetworkInterface(ctx context.Context, log *zap.SugaredLogger, ifName string, machineUID types.UID, config *config, publicIP, publicIPv6 *network.PublicIPAddress, ipFamily util.IPFamily, enableAcceleratedNetworking *bool) (*network.Interface, error) {
322+
func createOrUpdateNetworkInterface(ctx context.Context, log *zap.SugaredLogger, ifName string, machineUID types.UID, config *config, publicIP, publicIPv6 *network.PublicIPAddress, ipFamily util.IPFamily, enableAcceleratedNetworking *bool, enableIPForwarding *bool) (*network.Interface, error) {
323323
ifClient, err := getInterfacesClient(config)
324324
if err != nil {
325325
return nil, fmt.Errorf("failed to create interfaces client: %w", err)
@@ -363,6 +363,7 @@ func createOrUpdateNetworkInterface(ctx context.Context, log *zap.SugaredLogger,
363363
}
364364

365365
ifSpec.InterfacePropertiesFormat.EnableAcceleratedNetworking = enableAcceleratedNetworking
366+
ifSpec.InterfacePropertiesFormat.EnableIPForwarding = enableIPForwarding
366367

367368
if config.SecurityGroupName != "" {
368369
authorizer, err := auth.NewClientCredentialsConfig(config.ClientID, config.ClientSecret, config.TenantID).Authorizer()

pkg/cloudprovider/provider/azure/provider.go

+4-2
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ type config struct {
106106
AssignPublicIP bool
107107
PublicIPSKU *network.PublicIPAddressSkuName
108108
EnableAcceleratedNetworking *bool
109+
EnableIPForwarding *bool
109110
EnableBootDiagnostics bool
110111
Tags map[string]string
111112
}
@@ -335,6 +336,7 @@ func (p *provider) getConfig(provSpec clusterv1alpha1.ProviderSpec) (*config, *p
335336

336337
c.AssignAvailabilitySet = rawCfg.AssignAvailabilitySet
337338
c.EnableAcceleratedNetworking = rawCfg.EnableAcceleratedNetworking
339+
c.EnableIPForwarding = rawCfg.EnableIPForwarding
338340

339341
c.AvailabilitySet, err = p.configVarResolver.GetConfigVarStringValue(rawCfg.AvailabilitySet)
340342
if err != nil {
@@ -639,7 +641,7 @@ func (p *provider) Create(ctx context.Context, log *zap.SugaredLogger, machine *
639641
return nil, err
640642
}
641643

642-
iface, err := createOrUpdateNetworkInterface(ctx, log, ifaceName(machine), machine.UID, config, publicIP, publicIPv6, ipFamily, config.EnableAcceleratedNetworking)
644+
iface, err := createOrUpdateNetworkInterface(ctx, log, ifaceName(machine), machine.UID, config, publicIP, publicIPv6, ipFamily, config.EnableAcceleratedNetworking, config.EnableIPForwarding)
643645
if err != nil {
644646
return nil, fmt.Errorf("failed to generate main network interface: %w", err)
645647
}
@@ -1157,7 +1159,7 @@ func (p *provider) MigrateUID(ctx context.Context, log *zap.SugaredLogger, machi
11571159
}
11581160

11591161
if kuberneteshelper.HasFinalizer(machine, finalizerNIC) {
1160-
_, err = createOrUpdateNetworkInterface(ctx, log, ifaceName(machine), newUID, config, publicIP, publicIPv6, util.IPFamilyUnspecified, config.EnableAcceleratedNetworking)
1162+
_, err = createOrUpdateNetworkInterface(ctx, log, ifaceName(machine), newUID, config, publicIP, publicIPv6, util.IPFamilyUnspecified, config.EnableAcceleratedNetworking, config.EnableIPForwarding)
11611163
if err != nil {
11621164
return fmt.Errorf("failed to update UID on main network interface: %w", err)
11631165
}

pkg/cloudprovider/provider/azure/types/types.go

+1
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ type RawConfig struct {
4343
ImagePlan *ImagePlan `json:"imagePlan,omitempty"`
4444
ImageReference *ImageReference `json:"imageReference,omitempty"`
4545
EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking"`
46+
EnableIPForwarding *bool `json:"enableIPForwarding"`
4647
EnableBootDiagnostics *bool `json:"enableBootDiagnostics,omitempty"`
4748

4849
ImageID providerconfigtypes.ConfigVarString `json:"imageID"`

0 commit comments

Comments
 (0)