Kubernetes에서 DNS 확인에 문제가 있습니다. 내용이 복잡하니 천천히 읽어보시기 바랍니다.
환경:
- 온프레미스 및 프라이빗 클라우드
운영 체제
- 우분투 서버 20.04 LTS
시스템 네트워크:
- VPN s2
- LAN 인터페이스에 사용자 정의 DNS(10.4.0.149) 추가
쿠버네티스 네트워크:
- 옥양목
- CoreDNS 및 NodelocalDNS
현재 프라이빗 클라우드의 K8s 포드는 로컬 DNS에서 도메인을 확인해야 합니다. 도메인을 확인할 때 포드가 DNS 서버에 도달하는 데 도움이 되도록 사용자 지정 DNS를 추가하기 위해 이 가이드를 따랐습니다.
https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/
다음 블록을 사용하세요:
projects.com:53 {
errors
log
cache 30
forward . 10.4.0.149
}
Pod에서 발굴할 때 도메인을 확인할 수 있는 경우도 있지만 그렇지 않은 경우도 있습니다. 그러나 nslookup은 언제나 작동합니다. Pod에서 도메인에 대한 Ping도 시도했지만 상황은 dig와 동일합니다. 때로는 작동하지만 때로는 작동하지 않습니다. 그건 그렇고, 포드가 있는 노드에서 tcpdump를 통해 네트워크 패킷을 살펴봤지만 운이 없었습니다.
그렇다면 질문은 Kubernetes에서 DNS 확인이 어떻게 작동하는가입니다. AFAIK DNS 확인은 노드의 pod -> nodelocaldns -> coredns -> /etc/resolv.conf에 대한 요청과 함께 작동합니다. 하지만 제대로 작동하지 않는 것 같습니다.
몇 가지 제안을 해주실 수 있나요?
미리 감사드립니다!
나는 tcpdump에서 이것을 얻습니다:
2503 12.026282 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x91f8 A id-test.projects.com OPT
2506 12.049959 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0x91f8 Format error A id-test.projects.com OPT
2772 14.056998 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xc532 A id-test.projects.com OPT
2785 14.079098 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0xc532 Format error A id-test.projects.com OPT
3355 16.086108 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xf86c A id-test.projects.com OPT
3358 16.108111 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0xf86c Format error A id-test.projects.com OPT
4073 18.115002 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x2ba6 A id-test.projects.com OPT
4126 18.137460 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0x2ba6 Format error A id-test.projects.com OPT
4179 18.250697 10.244.14.64 169.254.25.10 DNS 107 Standard query 0x678f A id-test.projects.com.master.svc.cluster.local
4180 18.250736 10.244.14.64 169.254.25.10 DNS 107 Standard query 0xbc8b AAAA id-test.projects.com.master.svc.cluster.local
4196 18.251611 169.254.25.10 10.244.14.64 DNS 200 Standard query response 0xbc8b No such name AAAA id-test.projects.com.master.svc.cluster.local SOA ns.dns.cluster.local
4202 18.251957 169.254.25.10 10.244.14.64 DNS 200 Standard query response 0x678f No such name A id-test.projects.com.master.svc.cluster.local SOA ns.dns.cluster.local
4203 18.252034 10.244.14.64 169.254.25.10 DNS 100 Standard query 0x360a A id-test.projects.com.svc.cluster.local
4204 18.252060 10.244.14.64 169.254.25.10 DNS 100 Standard query 0x6e09 AAAA id-test.projects.com.svc.cluster.local
4215 18.252524 169.254.25.10 10.244.14.64 DNS 193 Standard query response 0x360a No such name A id-test.projects.com.svc.cluster.local SOA ns.dns.cluster.local
4220 18.252637 169.254.25.10 10.244.14.64 DNS 193 Standard query response 0x6e09 No such name AAAA id-test.projects.com.svc.cluster.local SOA ns.dns.cluster.local
4221 18.252697 10.244.14.64 169.254.25.10 DNS 96 Standard query 0x6b3d A id-test.projects.com.cluster.local
4222 18.252718 10.244.14.64 169.254.25.10 DNS 96 Standard query 0x103f AAAA id-test.projects.com.cluster.local
4233 18.253085 169.254.25.10 10.244.14.64 DNS 189 Standard query response 0x103f No such name AAAA id-test.projects.com.cluster.local SOA ns.dns.cluster.local
4238 18.253281 169.254.25.10 10.244.14.64 DNS 189 Standard query response 0x6b3d No such name A id-test.projects.com.cluster.local SOA ns.dns.cluster.local
4239 18.253350 10.244.14.64 169.254.25.10 DNS 82 Standard query 0x4118 A id-test.projects.com
4240 18.253364 10.244.14.64 169.254.25.10 DNS 82 Standard query 0x151e AAAA id-test.projects.com
4244 18.275928 169.254.25.10 10.244.14.64 DNS 168 Standard query response 0x151e AAAA id-test.projects.com SOA ad.global.com
4246 18.276120 169.254.25.10 10.244.14.64 DNS 118 Standard query response 0x4118 A id-test.projects.com A 10.7.22.15
4632 20.146523 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x5ee1 A id-test.projects.com OPT
4633 20.146709 169.254.25.10 10.244.14.63 DNS 141 Standard query response 0x5ee1 A id-test.projects.com A 10.7.22.15 OPT
5042 22.152642 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x921b A id-test.projects.com OPT
5043 22.152818 169.254.25.10 10.244.14.63 DNS 141 Standard query response 0x921b A id-test.projects.com A 10.7.22.15 OPT
5328 24.159482 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xc555 A id-test.projects.com OPT
5329 24.159653 169.254.25.10 10.244.14.63 DNS 141 Standard query response 0xc555 A id-test.projects.com A 10.7.22.15 OPT
5659 26.165768 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xf88f A id-test.projects.com OPT
dig를 사용할 때 형식 오류가 발생하는 이유를 모르겠습니다. 해결 시 컬 포드인 IP 10.244.14.63과 DNS를 해결해야 하는 애플리케이션 서비스의 또 다른 포드(10.244.14.64)를 참고하세요. DNS가 성공하면 dig 명령을 실행하면 올바른 IP 도메인 이름이 즉시 반환됩니다.
이 문제에 대해 어떻게 생각하시나요?
조언해주세요.
미리 감사드립니다.