1
- # IPv6 / DualStack Support in kube-router
1
+ # IPv6 / Dual-Stack Support in kube-router
2
2
3
3
This document describes the current status, the plan ahead and general thoughts about IPv6 / Dual-Stack support in
4
4
kube-router.
@@ -22,7 +22,8 @@ updated for dual-stack compatibility.
22
22
23
23
We are currently running this work off of the
24
24
[ prep-v2.0 branch] ( https://github.com./cloudnativelabs/kube-router/tree/prep-v2.0 ) and, as of the time of this writing,
25
- have released a [ release candidate] ( ) with this some dual-stack functionality built into it.
25
+ have released a [ release candidate] ( https://github.com./cloudnativelabs/kube-router/releases/tag/v2.0.0-rc1 ) with some
26
+ dual-stack functionality built into it.
26
27
27
28
Functions that currently support dual-stack on the v2.0.0 release line:
28
29
@@ -89,10 +90,10 @@ Addresses:
89
90
* Add additional ` --service-cluster-ip-range ` and ` --service-external-ip-range ` kube-router parameters for your IPv6
90
91
addresses. Note, as mentioned before ` Proxy ` functionality still isn't working, but this is important for a future
91
92
where ` Proxy ` functionality has been enabled.
92
- * If you use ` --enable-cni ` , ` kube-controller-manager ` has been started with both IPv4 and IPv6 cluster CIDRs (e.g.
93
- ` --cluster-cidr=10.242.0.0/16,2001:db8:42:1000::/56 ` )
94
- * ` kube-controller-manager ` & ` kube-apiserver ` have been started with both IPv4 and IPv6 service cluster IP ranges (e.g.
95
- ` --service-cluster-ip-range=10.96.0.0/16,2001:db8:42:1::/112 ` )
93
+ * If you use ` --enable-cni=true ` , ensure ` kube-controller-manager ` has been started with both IPv4 and IPv6 cluster
94
+ CIDRs (e.g. ` --cluster-cidr=10.242.0.0/16,2001:db8:42:1000::/56 ` )
95
+ * Ensure ` kube-controller-manager ` & ` kube-apiserver ` have been started with both IPv4 and IPv6 service cluster IP
96
+ ranges (e.g. ` --service-cluster-ip-range=10.96.0.0/16,2001:db8:42:1::/112 ` )
96
97
97
98
### Tunnel Name Changes (Potentially Breaking Change)
98
99
@@ -116,6 +117,18 @@ user's to add rules for rejecting specific routes sent to GoBGP, can only accept
116
117
Attempting to add IPs of two different families will result in a GoBGP error when it attempts to import BGP policy from
117
118
kube-router.
118
119
120
+ ### IPv6 & IPv4 Network Policy Ranges Will Only Work If That Family Has Been Enabled
121
+
122
+ Network Policy in Kubernetes allows users to specify
123
+ [ IPBlock] ( https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#ipblock-v1-networking-k8s-io ) ranges for
124
+ ingress and egress policies. These blocks are string-based network CIDRs and allow the user to specify any ranges that
125
+ they wish in order to allow ingress or egress from network ranges that are not selectable using Kubernetes pod
126
+ selectors.
127
+
128
+ Currently, kube-router is only able to work with CIDRs for IP families that it has been enabled for using the
129
+ ` --enable-ipv4=true ` & ` --enable-ipv6=true ` CLI flags. If a user adds a network policy for an IP family that kube-router
130
+ is not enabled for, you will see a warning in your kube-router logs and no firewall rule will be added.
131
+
119
132
### kube-router.io/pod-cidr Deprecation
120
133
121
134
Now that kube-router has dual-stack capability, it doesn't make sense to have an annotation that can only represent
0 commit comments