@@ -3,6 +3,7 @@ package elbv2
33import (
44 "context"
55 "fmt"
6+
67 awssdk "github.com/aws/aws-sdk-go-v2/aws"
78 elbv2sdk "github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2"
89 elbv2types "github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2/types"
@@ -176,14 +177,15 @@ func (m *defaultLoadBalancerManager) updateSDKLoadBalancerWithSubnetMappings(ctx
176177
177178 resLBEnablePrefixForIpv6SourceNatValue = string (resLB .Spec .EnablePrefixForIpv6SourceNat )
178179
179- if desiredSubnets .Equal (currentSubnets ) && desiredSubnetsSourceNATPrefixes .Equal (currentSubnetsSourceNATPrefixes ) && sdkLBEnablePrefixForIpv6SourceNatValue == resLBEnablePrefixForIpv6SourceNatValue {
180+ if desiredSubnets .Equal (currentSubnets ) && desiredSubnetsSourceNATPrefixes .Equal (currentSubnetsSourceNATPrefixes ) && (( sdkLBEnablePrefixForIpv6SourceNatValue == resLBEnablePrefixForIpv6SourceNatValue ) || ( resLBEnablePrefixForIpv6SourceNatValue == "" )) {
180181 return nil
181182 }
182-
183183 req := & elbv2sdk.SetSubnetsInput {
184- LoadBalancerArn : sdkLB .LoadBalancer .LoadBalancerArn ,
185- SubnetMappings : buildSDKSubnetMappings (resLB .Spec .SubnetMappings ),
186- EnablePrefixForIpv6SourceNat : elbv2types .EnablePrefixForIpv6SourceNatEnum (resLBEnablePrefixForIpv6SourceNatValue ),
184+ LoadBalancerArn : sdkLB .LoadBalancer .LoadBalancerArn ,
185+ SubnetMappings : buildSDKSubnetMappings (resLB .Spec .SubnetMappings ),
186+ }
187+ if resLB .Spec .Type == elbv2model .LoadBalancerTypeNetwork {
188+ req .EnablePrefixForIpv6SourceNat = elbv2types .EnablePrefixForIpv6SourceNatEnum (resLBEnablePrefixForIpv6SourceNatValue )
187189 }
188190 changeDesc := fmt .Sprintf ("%v => %v" , currentSubnets .List (), desiredSubnets .List ())
189191 m .logger .Info ("modifying loadBalancer subnetMappings" ,
0 commit comments