ืืขืจื. ืชืจืืื: ืืขืืืช 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;
- search: ืืืืืจ ืืช ื ืชืื ืืืืคืืฉ ืขืืืจ ืชืืื ืกืคืฆืืคื. ืื ืืขื ืืื
google.com
ืืmrkaran.dev
ืืื ื FQDN (ืฉืืืช ืืืืืื ืืืกืืืื ืืืืืืื ). ืขื ืคื ืืืืกืืื ืืกืื ืืจืืืช ืฉืจืื ืคืืชืจื ื-DNS ืคืืขืืื ืืคืื, ืจืง ืืื ืืืกืชืืืืื ืื ืงืืื ".", ืืืืืฆืืช ืืช ืืืืจ ืืฉืืจืฉ, ื ืืฉืืื ืืืืืืื ืื ืืฉืืจืื ืืืืืืื (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
- ืื, ืื ืืฉืชืืฉืื ืืืืคืื ืฆืจืืืื ืืฉืื ืื.
ื ืืกืื ืขื ื ืงืืืืช
ืืืื ื ืชื ืกื ืงืฆืช ืืืชืจ ืขื ndots
ืืืืื ื ืจืื ืืื ืืคืจืืืจ ืืื ืืชื ืื. ืืจืขืืื ืคืฉืื: ndots
ืงืืืข ืื ืืงืื ื-DNS ืืชืืืืก ืืชืืื ืืื ืืืืื ืื ืืืกื. ืืืืืื, ืืืงืจื ืฉื ืืงืื 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 ืืืฆืข ืืืคืืฉืื ืกืืืืชืืื ืืฉืืจืืช ืขื ืืชืืื ืืืืืื.
ืื ืืกืฃ, ืืื ืืืจืกื 1.14 ืฉื Kubernetes, ืืจืืืืช dnsConfig
ะธ dnsPolicy
ืงืืื ืืฆื ืืฆืื. ืืคืืื, ืืขืช ืคืจืืกืช ืคืื, ืืชื ืืืื ืืืคืืืช ืืช ืืขืจื ndots
, ื ื ืื, ืขื 3 (ืืืคืืื ืขื 1!). ืืืื ืื, ืื ืืืืขื ืืชืื ืฆืืืช ืชืฆืืจื ืืืืื ืืช ืืืืืืื ืืืื. ืืื ืืื ืืืคืฉืจืืช ืืงืืืกืืืช ืืืฉืจ ืืชื ืฆืจืื ืืืืืจ ืืื ืืืฆืืขืื ืื ืืืืืช. ื ืจืื ืื ืฉืืชื ืฆืจืื ืืืืื ืืืื ืื ืจืง ืื ืืื ืืืืืจ ื ืืื ืืืืืื ืืื ืืืื ื ืืืืฉืื ืฉืื, ืืืืืื ืฉืชืืฆืืืช ื-DNS ื ืฉืืจืืช ืื ืืืืคื ืคื ืืื.
ืชืืืืจ
ืืืืชื ืืจืืฉืื ื ืขื ืืชืืื ื ืืื ื-
ืื ื ืืื ืงืืฉืืจืื ืืืงืืจื ื ืืกืคืช:
-
ืืกืืจ , ืืื ndots=5 ื-Kubernetes; -
ืืืืจ ืืขืืื ืืืฆื ืฉืื ืื ื ืงืืืืช ืืฉืคืืข ืขื ืืืฆืืขื ืืืคืืืงืฆืื; -
ืื ืืชืืืืช ืืื ืจืืืืืจื musl ื-glibc.
ืืขืจื: ืืืจืชื ืื ืืืฉืชืืฉ dig
ืืืืืจ ืื. dig
ืืืกืืฃ ืืืืืืืืช ื ืงืืื (ืืืื ืืืืจ ืฉืืจืฉ), ืื ืฉืืืคื ืืช ืืืืืืื ื"ืืืกืื ืืืืืืื" (FQDN), ืื ืขื ืืื ืืคืขืืชื ืชืืืื ืืจืฉืืืช ืืืืคืืฉ. ืืชื ืขื ืื ื
DNSing ืฉืื! ื ืชืจืื ืืืจ ืื!
ื .ื ืืืืชืจืื
ืงืจื ืื ืืืืื ืฉืื ื:
- ยซ
Calico ืื ืืืืจืงืื ื ื-Kubernetes: ืืืืจืืช ืืงืฆืช ื ืืกืืื "; - ยซ
CoreDNS - ืฉืจืช DNS ืืขืืื ืืืืืืื ืืขื ื ื-Service Discovery ืขืืืจ Kubernetes "; - "ืืืจืื ืืืืืจ ืืจืฉืช ื-Kubernetes":
ืืืงืื 1 ื-2 (ืืื ืจืฉืช, ืจืฉืชืืช ืฉืืืช ืขื) ,ืืืง 3 (ืฉืืจืืชืื ืืขืืืื ืชืขืืืจื) .
ืืงืืจ: www.habr.com