From c390d45f7656492b1aa12f76e66c3c25e0764ec0 Mon Sep 17 00:00:00 2001 From: Ole Markus With Date: Fri, 3 Sep 2021 09:47:37 +0200 Subject: [PATCH] Set ipv6 nameservers on aws AWS now provides ipv6 DNS server endpoint at a fixed address (rather than ipv4, which depends on the VPC CIDR block). This isn't provided in dhcp, and anyways we want to ensure we use this endpoint in ipv6 mode and not have ipv4 in the mix. --- pkg/model/components/kubedns.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkg/model/components/kubedns.go b/pkg/model/components/kubedns.go index 51a1ee5d88..aad96566c2 100644 --- a/pkg/model/components/kubedns.go +++ b/pkg/model/components/kubedns.go @@ -75,6 +75,12 @@ func (b *KubeDnsOptionsBuilder) BuildOptions(o interface{}) error { clusterSpec.KubeDNS.MemoryLimit = &defaultMemoryLimit } + if clusterSpec.IsIPv6Only() && kops.CloudProviderID(clusterSpec.CloudProvider) == kops.CloudProviderAWS { + if len(clusterSpec.KubeDNS.UpstreamNameservers) == 0 { + clusterSpec.KubeDNS.UpstreamNameservers = []string{"fd00:ec2::253"} + } + } + nodeLocalDNS := clusterSpec.KubeDNS.NodeLocalDNS if nodeLocalDNS == nil { nodeLocalDNS = &kops.NodeLocalDNSConfig{}