Skip to content

Commit a73844c

Browse files
Merge pull request #3534 from pacevedom/USHIFT-3482-advertise-address
USHIFT-3482: Add ipv6 advertiseAddress handling
2 parents 063aad9 + 8464e30 commit a73844c

File tree

3 files changed

+21
-4
lines changed

3 files changed

+21
-4
lines changed

etcd/vendor/github.com/openshift/microshift/pkg/config/config.go

Lines changed: 5 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/config/config.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,11 @@ func (c *Config) updateComputedValues() error {
282282
// host network pods trying to reach apiserver, as the VIP 10.43.0.1:443 is
283283
// not translated to 10.43.0.1:6443. It remains unchanged and therefore
284284
// connects to the ingress router instead, triggering all sorts of errors.
285-
nextSubnet, exceed := cidr.NextSubnet(svcNet, 32)
285+
prefix := 32
286+
if svcNet.IP.To4() == nil {
287+
prefix = 128
288+
}
289+
nextSubnet, exceed := cidr.NextSubnet(svcNet, prefix)
286290
if exceed {
287291
return fmt.Errorf("unable to compute next subnet from service CIDR")
288292
}

pkg/node/netconfig.go

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package node
1818
import (
1919
"context"
2020
"fmt"
21+
"net"
2122

2223
"k8s.io/klog/v2"
2324

@@ -87,7 +88,11 @@ func (n *NetworkConfiguration) addServiceIPLoopback() error {
8788
return err
8889
}
8990
}
90-
address, err := netlink.ParseAddr(fmt.Sprintf("%s/32", n.kasAdvertiseAddress))
91+
prefix := 32
92+
if net.ParseIP(n.kasAdvertiseAddress).To4() == nil {
93+
prefix = 128
94+
}
95+
address, err := netlink.ParseAddr(fmt.Sprintf("%s/%d", n.kasAdvertiseAddress, prefix))
9196
if err != nil {
9297
return err
9398
}
@@ -114,7 +119,11 @@ func (n *NetworkConfiguration) removeServiceIPLoopback() error {
114119
return err
115120
}
116121
}
117-
address, err := netlink.ParseAddr(fmt.Sprintf("%s/32", n.kasAdvertiseAddress))
122+
prefix := 32
123+
if net.ParseIP(n.kasAdvertiseAddress).To4() == nil {
124+
prefix = 128
125+
}
126+
address, err := netlink.ParseAddr(fmt.Sprintf("%s/%d", n.kasAdvertiseAddress, prefix))
118127
if err != nil {
119128
return err
120129
}

0 commit comments

Comments
 (0)