This message was deleted.
# rke2
a
This message was deleted.
e
ipv4
Copy code
lima@lima-ubuntu-sensor: curl localhost/api/system/healthcheck
{"message":"OK"}
ipv6 - hangs
Copy code
ubuntu@ip-10-0-2-157:~$ curl [::1]
^C
I notice service LB binds to the cluster-ip
Copy code
kube-system        rke2-ingress-nginx-controller                    LoadBalancer   2001:cafe:43:1::17eb   2600:xxxx   80:32429/TCP,443:31213/TCP     23h

ubuntu@ip-10-0-2-157:~$ curl [2001:cafe:43:1::17eb]/api/system/healthcheck
{"message":"OK"}
service lb logs:
Copy code
+ ip6tables -t filter -A FORWARD -d 2001:cafe:43:1::17eb/128 -p TCP --dport 80 -j DROP
+ ip6tables -t nat -I PREROUTING -p TCP --dport 80 -j DNAT --to '[2001:cafe:43:1::17eb]:80'
+ ip6tables -t nat -I POSTROUTING -d 2001:cafe:43:1::17eb/128 -p TCP -j MASQUERADE
looks like service lb on ipv4 opens up on the ipv4 interface, which makes sense as to why localhost can reach it, not sure why ipv6 is using
2001:cafe:43:1::17eb
a cluster IP , which seems totally wrong
Copy code
+ iptables -t filter -A FORWARD -d 10.43.114.190/32 -p TCP --dport 80 -j DROP
+ iptables -t nat -I PREROUTING -p TCP --dport 80 -j DNAT --to 10.43.114.190:80
+ iptables -t nat -I POSTROUTING -d 10.43.114.190/32 -p TCP -j MASQUERADE
c
It’s been a bit since servicelb was updated on rke2, I think that’s fixed on k3s and probably needs to be pulled through.
is that ipv6 address not the v6 clusterip for that service?
e
That ipv6 address is the clusterIP, yes. However, the usage is different now, where on ipv4 I can connect to localhost:<443/80> for example, I cannot do that with the ipv6 counterpart using ::1
c
So the servicelb pod uses HostPort to get traffic for the service port, I’m not sure if those are expected to be accessible via the ipv6 loopback or not. That is just core Kubernetes behavior.