k8s-operator: add IPv6 support for DNS records (#16691)
This change adds full IPv6 support to the Kubernetes operator's DNS functionality, enabling dual-stack and IPv6-only cluster support. Fixes #16633 Signed-off-by: Raj Singh <raj@tailscale.com>
This commit is contained in:
@@ -213,7 +213,6 @@ NB: if you want cluster workloads to be able to refer to Tailscale Ingress
|
||||
using its MagicDNS name, you must also annotate the Ingress resource with
|
||||
tailscale.com/experimental-forward-cluster-traffic-via-ingress annotation to
|
||||
ensure that the proxy created for the Ingress listens on its Pod IP address.
|
||||
NB: Clusters where Pods get assigned IPv6 addresses only are currently not supported.
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -45,7 +45,6 @@ var DNSConfigKind = "DNSConfig"
|
||||
// using its MagicDNS name, you must also annotate the Ingress resource with
|
||||
// tailscale.com/experimental-forward-cluster-traffic-via-ingress annotation to
|
||||
// ensure that the proxy created for the Ingress listens on its Pod IP address.
|
||||
// NB: Clusters where Pods get assigned IPv6 addresses only are currently not supported.
|
||||
type DNSConfig struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
@@ -27,6 +27,11 @@ type Records struct {
|
||||
Version string `json:"version"`
|
||||
// IP4 contains a mapping of DNS names to IPv4 address(es).
|
||||
IP4 map[string][]string `json:"ip4"`
|
||||
// IP6 contains a mapping of DNS names to IPv6 address(es).
|
||||
// This field is optional and will be omitted from JSON if empty.
|
||||
// It enables dual-stack DNS support in Kubernetes clusters.
|
||||
// +optional
|
||||
IP6 map[string][]string `json:"ip6,omitempty"`
|
||||
}
|
||||
|
||||
// TailscaledConfigFileName returns a tailscaled config file name in
|
||||
|
||||
Reference in New Issue
Block a user