Micok8s coredns connection timed out; no servers could be reached

When a Pod and coreDNs are on other nodes, A Pod couldn’t resolve service name.
( root@dnsutils-001:/# nslookup kubernetes
;; connection timed out; no servers could be reached
)

I don’t know why this is ocurred.
Could you know how to resolve it ?

Informations

  • micok8s version: 1.25
  • os: ubuntu 22.04
  • master 3 node
  • hypervisor: esxi 6.7
  • calico mode : vxlan

Descriptions.

1.microk8s enable dns
2. If a dnsutils Pod and a coreDNS are on same node , There are no error
( nslookup kubernetes
Server: 10.152.183.10
Address: 10.152.183.10#53

Name: kubernetes.default.svc.cluster.local
Address: 10.152.183.1 )

3.But If a dnsutils Pod and coreDNS is on another node each other , There are erros.
( root@dnsutils-001:/# nslookup kubernetes
;; connection timed out; no servers could be reached
)
It seem not to communicate about resolve.
Ping repond between Nodes.
Ping respond between Pods Even though Pods is on other Nodes.

  1. microk8s kubectl describe coerdns—xxxxx -n kube-system
    Events:

Informations

  • micok8s version: 1.25
  • os: ubuntu 22.04
  • master 3 node
  • hypervisor: virtualbx 6.1
  • calico mode : vxlan

There are no errors on virtaulbox 6.1.

I resolved it.
The problem was time gap between nodes.
I adjust same time with ntp.

@canerbis we are also facing same issue in multi-node environment. All the 3 nodes are having same time. Any idea what else we can debug here to resolve issue??

Dear Parshva_Shah.
I confirm now.
You should check IPtables.

If you are facing the problem yet, you would edit vi /etc/sysctl.conf
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1