Windows Pods cannot connect to ClusterIPs?

Hi! I have setup a new Windows Calico node but the Windows Pods on that node cannot connect to ClusterIP addresses? Also the Linux Pods in the cluster cannot connect to the ClusterIps assigned on the Windows Node.

If I set the $env:DNS_NAME_SERVER in the config.ps1 file to the IP address of the coreDNS pod, I get connectivity to other pods and the outside world, but if I set it to the Service ClusterIP, I get no connectivity.

I have setup networking ass VXLAN, but I’m obviously missing something, does anyone have any ideas where I’m going wrong?

So windows pod to linux pod works OK, but windows pod to service IP fails?

Service IPs are handled by kube-proxy. Check the logs for kube-proxy on your windows node - sounds like its not working correctly.

The normal flow for requests to service IPs is:

  • pod sends packet to service ip
  • a kube-proxy rule on the pod’s node sees the request and DNATs it to one of the pod IPs backing the service
  • packet gets sent to backing pod.

so pod to pod works on any scenario, but linux to windows service or windows to any service and it doesn’t seem to work.

I can’t see anything in the logs that points to an error?