แฒจแแแแจแแแ. แแแ แแแแ: DNS แแ แแแแแแ Kubernetes-แจแ, แฃแคแ แ แแฃแกแขแแ, แแแ แแแแขแ แแก แแแ แแแแขแ แแแจแ ndots
, แกแแแชแ แแ แแแแฃแแแ แฃแแแ แแ แฃแแแ
Kubernetes-แแ แแแแแแแชแแแแแก แแแแแแแแแแก แแ แ-แแ แแ แแแแแแ แ แฃแแแ แแขแแกแแแแ แแแแแแแชแแแแแก แฃแฌแงแแแขแ แแฆแแแฉแแแ. แแแแกแขแแ แฃแแ แฃแ แแแแ แแฅแแแแแแ แแแแจแแแแแแแแแ แแแแแ แขแแแแแฃแแแ แกแแ แแแกแแก แแแแชแแคแชแแแก แฌแงแแแแแแ (vanilla
แกแฃแ แก แแแฃแแแแจแแ แแแก แกแแ แแแกแก chocolate
, แแแก แจแแฃแซแแแ แแแ แแแแแ แฌแแแแแ แแแ แขแฃแแแฃแ IP-แแ chocolate
. แฉแแแแแ แแแแฎแแ: แแแก แแแแแฌแงแแแขแก แแ แจแแแแฎแแแแแจแ DNS แแแแฎแแแแแก chocolate
แฒแ แ แแแแ ?
DNS แกแแฎแแแแก แแแ แฉแแแแแแแ แแแแคแแแฃแ แแ แแแฃแแแ Kubernetes แแแแกแขแแ แแ แแแแแงแแแแแแ /etc/resolv.conf
แงแแแแ แฆแแแแแแ. แจแแแแแ แกแก แแฃ แแแแแฎแแแแ /etc/resolv.conf
แแแแแกแแแแ แ แฏแแจแแก แแกแแแแกแ แแฅแแแแ:
search hello.svc.cluster.local svc.cluster.local cluster.local
nameserver 10.152.183.10
options ndots:5
แแ แแแแคแแแฃแ แแชแแแก แแงแแแแแแ DNS แแแแแแขแแแ DNS แกแแ แแแ แแ แแแแฎแแแแแแแก แแแแแกแแแแแแแแ. แคแแแแจแ resolv.conf
แจแแแชแแแก แจแแแแแ แแแคแแ แแแชแแแก:
- แกแแฎแแแแแแก แกแแ แแแ แ: แกแแ แแแ แ, แ แแแแแแแช แแแแแแแแแแแ DNS แแแแฎแแแแแแ. แฉแแแแก แจแแแแฎแแแแแจแ, แแก แแ แแก CoreDNS แกแแ แแแกแแก แแแกแแแแ แแ;
- แซแแแแ: แแแแกแแแฆแแ แแแก แซแแแแแก แแแแก แแแแแ แแขแฃแแ แแแแแแแกแแแแก. แกแแแแขแแ แแกแแ แ แแ
google.com
แแmrkaran.dev
แแ แแ แแก FQDN (แกแ แฃแแแ แแแแแแคแแชแแฃแ แ แแแแแแฃแ แ แกแแฎแแแแแ ). แกแขแแแแแ แขแฃแแ แแแแแแแชแแแก แแแฎแแแแแ, แ แแแแแกแแช แแชแแแก DNS แแแแแแฌแงแแแขแแแแก แฃแแแขแแกแแแ, แแฎแแแแ แแก, แ แแแแแแช แแแแแ แแแแ แฌแแ แขแแแแ ".", แ แแแแแแช แฌแแ แแแแแแแแก root แแแแแก, แแแแแฎแแแแแ แกแ แฃแแแ แแแแแแคแแชแแฃแ แ (FDQN) แแแแแแแแ. แแแแแแ แ แแแแแแฌแงแแแขแก แจแแฃแซแแแ แกแแแฃแแแ แ แแฃแแฅแขแแก แแแแแขแแแ. แแแ แแแแ,mrkaran.dev.
แแ แแก แกแ แฃแแแ แแแแแแคแแชแแฃแ แ แแแแแแแก แกแแฎแแแ (FQDN) แแmrkaran.dev
- แแ แ; - แฌแแ แขแแแแแ: แงแแแแแแ แกแแแแขแแ แแกแ แแแ แแแแขแ แ (แแ แกแขแแขแแแจแ แแ แแก แแแแก แจแแกแแฎแแ).
ndots
แแแแกแแแฆแแ แแแก แฌแแ แขแแแแแแก แแฆแแ แฃแ แ แแแแแแแแแก แแแแฎแแแแแก แกแแฎแแแจแ, แกแแแแ แแก แแแแแฎแแแแแ "แกแ แฃแแแ แแแแแแคแแชแแฃแ " แแแแแแฃแ แกแแฎแแแแ. แแแแแ แแแฌแแ แแแแแแ แแแแแแแแแแแ แแแกแแฃแแ แแแ, แ แแแแกแแช แแแแแแแแแแแแแ DNS แกแแซแแแแ แแแแแแแแแแ แแแแก.
แแแแฎแแ แ แ แแแฎแแแแ, แ แแชแ แแแแแฎแแแ mrkaran.dev
แแแแจแ:
$ nslookup mrkaran.dev
Server: 10.152.183.10
Address: 10.152.183.10#53
Non-authoritative answer:
Name: mrkaran.dev
Address: 157.230.35.153
Name: mrkaran.dev
Address: 2400:6180:0:d1::519:6001
แแ แแฅแกแแแ แแแแแขแแกแแแแก แแ แแแแแงแแแ CoreDNS แแฃแ แแแแแก แแแแ all
(แ แแช แแแก แกแแแแแแ แฎแแแแแฆแแแก แฎแแแก). แแแแ แแแแแแฎแแแแ แแแแแก แแฃแ แแแแแแก coredns
:
[INFO] 10.1.28.1:35998 - 11131 "A IN mrkaran.dev.hello.svc.cluster.local. udp 53 false 512" NXDOMAIN qr,aa,rd 146 0.000263728s
[INFO] 10.1.28.1:34040 - 36853 "A IN mrkaran.dev.svc.cluster.local. udp 47 false 512" NXDOMAIN qr,aa,rd 140 0.000214201s
[INFO] 10.1.28.1:33468 - 29482 "A IN mrkaran.dev.cluster.local. udp 43 false 512" NXDOMAIN qr,aa,rd 136 0.000156107s
[INFO] 10.1.28.1:58471 - 45814 "A IN mrkaran.dev. udp 29 false 512" NOERROR qr,rd,ra 56 0.110263459s
[INFO] 10.1.28.1:54800 - 2463 "AAAA IN mrkaran.dev. udp 29 false 512" NOERROR qr,rd,ra 68 0.145091744s
แคแฃ. แแฅ แแ แ แ แแ แแแงแ แแแก แแฅแแแแก แงแฃแ แแแฆแแแแก:
- แแแแฎแแแแ แแแแแก แซแแแแแก แงแแแแ แแขแแแก, แกแแแแ แแแกแฃแฎแ แแ แจแแแชแแแก แแแแก
NOERROR
(DNS แแแแแแขแแแก แแกแแแ แแ แแแแฎแแแแ แแแก แจแแแแแแ).NXDOMAIN
แแแจแแแแก, แ แแ แแ แแแแซแแแแ แฉแแแแฌแแ แ แแแชแแแฃแแ แแแแแแแก แกแแฎแแแแกแแแแก. แฒแแแขแแ แ แแmrkaran.dev
แแ แแ แแก FQDN แกแแฎแแแ (แจแแกแแแแแแกแแndots=5
), แแแแแแฌแงแแแขแ แฃแงแฃแ แแแก แซแแแแแก แแแแก แแ แแแแกแแแฆแแ แแแก แแแแฎแแแแแแแก แแแแแแแแแแ แแแแก; - แจแแกแแแแก
ะ
ะธะะะะ
แแแ แแแแแฃแ แแ แฉแแแแกแแแ. แคแแฅแขแแ, แ แแ แแ แแฏแแ แแแ แแฎแแแแแแ แจแแแแแแก/etc/resolv.conf
แแแแฃแแแกแฎแแแแแ, แแกแแแ แแแแคแแแฃแ แแ แแแฃแแแ แแกแ, แ แแ แแแ แแแแแฃแ แ แซแแแแ แฎแแ แชแแแแแแแ IPv4 แแ IPv6 แแ แแขแแแแแแแแก แแแแแงแแแแแแ. แแฅแแแ แจแแแแซแแแแ แแแแฃแฅแแแ แแก แฅแชแแแ แแคแชแแแก แแแแแขแแแแsingle-request
ะฒresolv.conf
.
แจแแแแจแแแ: glibc
แจแแแซแแแแ แแแแคแแแฃแ แแ แแแฃแแ แแงแแก แแ แแแแฎแแแแแแแก แแแแแแแแแแ แฃแแแ แแแแแแแแแกแแแแก แแ musl
- แแ แ, แแแแขแแ Alpine แแแแฎแแแ แแแแแแแ แฃแแแ แแแแแแแแแกแฌแแแแ.
แแฅแกแแแ แแแแแขแแแ แฌแแ แขแแแแแแ
แแแแแ, แชแแขแ แแแขแ แแฅแกแแแ แแแแแขแ แแแแแแแแแ ndots
แแ แแแแฎแแ, แ แแแแ แแฅแชแแแ แแก แแแ แแแแขแ แ. แแแแ แแแ แขแแแแ: ndots
แแแแกแแแฆแแ แแแก, แแแแแฎแแแแแก แแฃ แแ แ DNS แแแแแแขแ แแแแแแก แแแกแแแฃแขแฃแ แแ แแฃ แคแแ แแแแแแแ. แแแแแแแแแ, แแแ แขแแแ google DNS แแแแแแขแแก แจแแแแฎแแแแแจแ, แ แแแแ แแชแแก, แแ แแก แแฃ แแ แ แแก แแแแแแ แแแกแแแฃแขแฃแ แ? แแฃ แแแแงแแแ ndots
แฃแแ แแก 1-แก, แแแแแแขแ แแขแงแแแก: โแแฐ, แจแแแแกแฃแแ google
แแ แแ แแก แแ แแ แฌแแ แขแแแ; แแคแแฅแ แแ, แแแแแแฎแแแแ แซแแแแแก แแแแ แกแแแก. โ แแฃแแชแ, แแฃ แแแแแฎแแแ google.com
, แกแฃแคแแฅแกแแแแก แกแแ แแแแแแแแ แแแแแ แแ แแแฃแแ แแฅแแแแ, แ แแแแแ แแแแฎแแแแแแ แกแแฎแแแ แแแแแงแแคแแแแแก แแฆแแแ แก ndots
(แแ แแ แฌแแ แขแแแ แแแแแช แแ แแก).
แแแแแ แแแแ แฌแแฃแแแแ แแแแจแ:
$ cat /etc/resolv.conf
options ndots:1
$ nslookup mrkaran
Server: 10.152.183.10
Address: 10.152.183.10#53
** server can't find mrkaran: NXDOMAIN
CoreDNS แแฃแ แแแแแแ:
[INFO] 10.1.28.1:52495 - 2606 "A IN mrkaran.hello.svc.cluster.local. udp 49 false 512" NXDOMAIN qr,aa,rd 142 0.000524939s
[INFO] 10.1.28.1:59287 - 57522 "A IN mrkaran.svc.cluster.local. udp 43 false 512" NXDOMAIN qr,aa,rd 136 0.000368277s
[INFO] 10.1.28.1:53086 - 4863 "A IN mrkaran.cluster.local. udp 39 false 512" NXDOMAIN qr,aa,rd 132 0.000355344s
[INFO] 10.1.28.1:56863 - 41678 "A IN mrkaran. udp 25 false 512" NXDOMAIN qr,rd,ra 100 0.034629206s
แแแก แจแแแแแ, แ แแช mrkaran
แแ แแ แแก แแ แแ แฌแแ แขแแแ, แซแแแแ แแแแฎแแ แชแแแแแ แกแฃแคแแฅแกแแแแก แแแแ แกแแแจแ.
แจแแแแจแแแ: แแ แแฅแขแแแแจแ แแแฅแกแแแแแฃแ แ แแแแจแแแแแแแ ndots
แจแแแฆแฃแแฃแแแ 15; แแแแฃแแแกแฎแแแแแ Kubernetes-แจแ แแ แแก 5.
แแแแแงแแแแแ แฌแแ แแแแแแจแ
แแฃ แแแแแแแชแแ แฃแแแ แแ แแแ แ แฅแกแแแจแ แแแ แก แแแแแแแก, DNS แจแแแซแแแแ แแแฎแแแก แแแ แแแ แ แแฅแขแแฃแ แ แขแ แแคแแแแก แจแแแแฎแแแแแจแ, แ แแแแแ แกแแฎแแแแก แแแ แฉแแแแแแแ แแแแ แแ แแกแแญแแ แ แแแแฎแแแแแก แแงแแแแแก (แกแแแแ แกแแกแขแแแ แกแฌแแ แก แแแแฆแฌแแแก). แแแแแแแชแแแแ, แ แแแแ แช แฌแแกแ, แแ แแแแขแแแแ แซแแ แแฃแ แแแแแก แแแแแแแก แกแแฎแแแแแก, แแแแ แแ แแก แฐแแแแแแ แแฆแแ แก. แแแฃ แแแแฎแแแก แแแชแแแแ api.twitter.com
, แจแแแแซแแแแ แแแกแ "แแงแแ แ แแแแแ แแแ". api.twitter.com.
(แฌแแ แขแแแแ) แแแแแแแชแแแจแ, แ แแแแแแช แฃแแแซแแแแก DNS แแแแแแขแแแก แจแแแกแ แฃแแแ แแแขแแ แแขแแขแฃแแ แซแแแแ แแแ แแแแแ แแแกแแแฃแขแฃแ แแแแแแแ.
แแแ แแ แแแแกแ, แแแฌแงแแแฃแแ Kubernetes แแแ แกแแแ 1.14, แแแคแแ แแแแแแแแ dnsConfig
ะธ dnsPolicy
แแแแฆแ แกแขแแแแแฃแ แ แกแขแแขแฃแกแ. แแแแแแ แแ, แแแแแก แแแแแแแแแแกแแก, แจแแแแซแแแแ แจแแแแชแแ แแ แแแแจแแแแแแแ ndots
แแแฅแแแ, 3-แแแ (แแ แแฃแแแแช 1-แแแ!). แแแแก แแแแ, แแแแแซแแก แจแแแแแ แงแแแแ แจแแขแงแแแแแแแ แฃแแแ แจแแแชแแแแแก แกแ แฃแ แแแแแแก. แแก แแ แแก แแ แ-แแ แแ แแแแกแแแฃแ แ แแแ แแแแแ, แ แแแแกแแช แแฅแแแ แฃแแแ แแแ แฉแแแ แจแแกแ แฃแแแแ แแ แแแ แขแแแแแฃแ แแแแก แจแแ แแก. แแแฉแแแแแแ, แ แแ แแแแแ แฃแแแ แแแแ แแแฃแแแ แแฎแแแแ แแ แจแแแแฎแแแแแจแ, แแฃ แฃแแขแ แ แแแแแแ แจแแงแแแแแแ แกแแกแแชแแชแฎแแแ แแแแจแแแแแแแแแแ แแฅแแแแ แแแแแแแชแแแกแแแแก, แ แแแแแ DNS แจแแแแแแแ แแกแแแ แจแแแแแแแ แแ แแก แฅแแจแแ แแแฃแแ.
แแแขแแ แแขแฃแ แ
แแแ แแแแแ แแแแแแ แแ แคแฃแแฅแชแแแก แจแแกแแฎแแ
แแฅ แแ แแก แ แแแแแแแแแ แแแฃแแ แจแแแแแแแ แจแแกแฌแแแแแกแแแแก:
-
แแแแแแ แขแแแ , แ แแขแแ ndots=5 Kubernetes-แจแ; -
แฒแแ แแ แ แแ แ แแแแ แแแฅแแแแแแก แฌแแ แขแแแแแแก แจแแชแแแ แแแแแแแชแแแก แจแแกแ แฃแแแแแแ; -
แจแแฃแกแแแแแแแแแ musl แแ glibc แแแแแแฌแงแแแขแแแก แจแแ แแก.
แจแแแแจแแแ: แแ แแแ แฉแแ แแ แแแแแแแงแแแแแแแ dig
แแ แกแขแแขแแแจแ. dig
แแแขแแแแขแฃแ แแ แแแแขแแแก แฌแแ แขแแแก (แซแแ แแฃแแ แแแแแก แแแแแขแแคแแแแขแแ แ), แ แแช แแแแแแก "แกแ แฃแแแ แแแแแแคแแชแแฃแ แก" แฎแแแก (FQDN), แแ แแ แแก แฏแแ แแแฃแจแแแ แกแแซแแแแ แกแแแจแ. แแแแก แจแแกแแฎแแ แฌแแ แแ
แแแแแแแ แ DNSing! แฒแแแแแแแแแแ แแแแฎแแ!
PS แแแแ แแแแแแแกแแแ
แแกแแแ แฌแแแแแแฎแแ แฉแแแแก แแแแแแ:
- ยซ
Calico แแฃแแแ แแแขแจแ แฅแกแแแแกแแแแก: แจแแกแแแแแ แแ แแชแแ แ แแแแแชแแแแแแ "; - ยซ
CoreDNS - DNS แกแแ แแแ แ แฆแ แฃแแแแก แแจแแแแแฃแ แ แกแแแงแแ แแกแแแแก แแ แกแแ แแแกแแก แแฆแแแฉแแแ Kubernetes-แแกแแแแก "; - "แแแฃแกแขแ แแ แแแฃแแ แแแแแแแแแแ แฅแกแแแจแ Kubernetes-แจแ":
แแแฌแแแแแ 1 แแ 2 (แฅแกแแแแก แแแแแแ, แแแแแคแแ แแแก แฅแกแแแแแ) ,แแแฌแแแ 3 (แแแแกแแฎแฃแ แแแ แแ แขแ แแคแแแแก แแแแฃแจแแแแแ) .
แฌแงแแ แ: www.habr.com