kubernetes/kops · error

error associating subnet cidr block: %v

Error message

error associating subnet cidr block: %v

What it means

AssociateSubnetCidrBlock failed while adding a new IPv6 CIDR to an existing subnet; typically the requested /64 is not available from the VPC's IPv6 address pool or already assigned elsewhere.

Source

Thrown at upup/pkg/fi/cloudup/awstasks/subnet.go:296

			request.Ipv6Native = aws.Bool(true)
		}

		response, err := t.Cloud.EC2().CreateSubnet(ctx, request)
		if err != nil {
			return fmt.Errorf("error creating subnet: %v", err)
		}

		e.ID = response.Subnet.SubnetId
	} else {
		if changes.IPv6CIDR != nil {
			request := &ec2.AssociateSubnetCidrBlockInput{
				Ipv6CidrBlock: e.IPv6CIDR,
				SubnetId:      e.ID,
			}

			_, err := t.Cloud.EC2().AssociateSubnetCidrBlock(ctx, request)
			if err != nil {
				return fmt.Errorf("error associating subnet cidr block: %v", err)
			}
		}
	}

	if a == nil || changes.AssignIPv6AddressOnCreation != nil {
		request := &ec2.ModifySubnetAttributeInput{
			SubnetId:                    e.ID,
			AssignIpv6AddressOnCreation: &ec2types.AttributeBooleanValue{Value: e.AssignIPv6AddressOnCreation},
		}
		_, err := t.Cloud.EC2().ModifySubnetAttribute(ctx, request)
		if err != nil {
			return fmt.Errorf("error modifying AssignIPv6AddressOnCreation: %w", err)
		}
	}

	if changes.ResourceBasedNaming != nil {
		hostnameType := ec2types.HostnameTypeIpName
		if *changes.ResourceBasedNaming {

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Check the VPC's IPv6 CIDR associations and pick a free /64
  2. Ensure an Amazon-provided IPv6 block is associated with the VPC
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at upup/pkg/fi/cloudup/awstasks/subnet.go:296 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05). Data as JSON: /api/errors/19851ae83b6cb5a4. Report an issue: GitHub.