{"record":{"id":"9f54eb897707ca30","repo":"kubernetes/kops","slug":"no-ipv6-address-found-on-interface-q","errorCode":null,"errorMessage":"no ipv6 address found on interface %q","messagePattern":"no ipv6 address found on interface %q","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cmd/kops-controller/controllers/gceipam.go","lineNumber":132,"sourceCode":"\t\t}\n\n\t\tinstance, err := r.gceClient.Instances.Get(project, zone, instanceID).Context(ctx).Do()\n\t\tif err != nil {\n\t\t\treturn ctrl.Result{}, fmt.Errorf(\"getting instance %s/%s/%s: %w\", project, zone, instanceID, err)\n\t\t}\n\n\t\tvar ipv6Addresses []string\n\t\tfor _, nic := range instance.NetworkInterfaces {\n\t\t\tfor _, ipv6AccessConfig := range nic.Ipv6AccessConfigs {\n\t\t\t\tif ipv6AccessConfig.ExternalIpv6 != \"\" {\n\t\t\t\t\tipv6Address := fmt.Sprintf(\"%s/%d\", ipv6AccessConfig.ExternalIpv6, ipv6AccessConfig.ExternalIpv6PrefixLength)\n\t\t\t\t\tipv6Addresses = append(ipv6Addresses, ipv6Address)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif len(ipv6Addresses) == 0 {\n\t\t\treturn ctrl.Result{}, fmt.Errorf(\"no ipv6 address found on interface %q\", instance.NetworkInterfaces[0].Name)\n\t\t}\n\t\tif len(ipv6Addresses) != 1 {\n\t\t\treturn ctrl.Result{}, fmt.Errorf(\"multiple ipv6 addresses found on interface %q: %v\", instance.NetworkInterfaces[0].Name, ipv6Addresses)\n\t\t}\n\n\t\tipv6Address := ipv6Addresses[0]\n\t\tpodCIDRs := []string{ipv6Address}\n\t\tif err := patchNodePodCIDRs(r.coreV1Client, ctx, node, podCIDRs); err != nil {\n\t\t\treturn ctrl.Result{}, err\n\t\t}\n\t}\n\n\treturn ctrl.Result{}, nil\n}\n\nfunc (r *GCEIPAMReconciler) SetupWithManager(mgr ctrl.Manager) error {\n\treturn ctrl.NewControllerManagedBy(mgr).\n\t\tNamed(\"gce_ipam\").","sourceCodeStart":114,"sourceCodeEnd":150,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/cmd/kops-controller/controllers/gceipam.go#L114-L150","documentation":"After fetching the GCE instance, the reconciler found no external IPv6 address on any of the instance's network interfaces (Ipv6AccessConfigs). This is a configuration mismatch: the node needs an IPv6 access config for IPAM to assign a pod CIDR.","triggerScenarios":"Thrown at cmd/kops-controller/controllers/gceipam.go:132 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Configure the GCE instance/instance-template with an IPv6 access config","Verify the cluster spec enables IPv6 networking consistently","Recreate the instance from a corrected template so it gets an IPv6 address"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4c8573c808a73d578c5eadc86d410646ea0b0d73","analyzedAt":"2026-09-05T04:13:19.212Z","contentChangedAt":"2026-09-05T04:13:19.212Z","schemaVersion":2},"datasetVersion":"2026-09-12T07:17:12.445Z"}