KR_CS_DNS - somaz94/DevOps-Engineer GitHub Wiki
์ง๋ฌธ: DNS๊ฐ ๋๋ฉ์ธ ์ด๋ฆ์ IP ์ฃผ์๋ก ๋ณํํ๋ ์ ์ฒด ๊ณผ์ ์ Recursive Query์ Iterative Query ๋ฐฉ์์ผ๋ก ๊ตฌ๋ถํ์ฌ ์ค๋ช ํ์ธ์. ์ฃผ์ DNS ๋ ์ฝ๋ ํ์ ์ ์ค๋ฌด ํ์ฉ ์ฌ๋ก๋ ์ค๋ช ํ์ธ์.
| ์ฉ์ด | ์ค๋ช |
|---|---|
| DNS | ๋๋ฉ์ธ ์ด๋ฆ์ IP ์ฃผ์๋ก ๋ณํํ๋ ๋ถ์ฐ ๊ณ์ธต ์์คํ |
| Root DNS | ์ต์์ DNS ์๋ฒ (์ ์ธ๊ณ 13๊ฐ ํด๋ฌ์คํฐ) |
| TLD DNS | .com, .net, .kr ๋ฑ ์ต์์ ๋๋ฉ์ธ ๊ด๋ฆฌ ์๋ฒ |
| Authoritative DNS | ๋๋ฉ์ธ์ ์ค์ IP ์ฃผ์๋ฅผ ๋ณด์ ํ ๊ถํ ์๋ฒ |
| Recursive DNS | ํด๋ผ์ด์ธํธ ๋์ ์ ์ฒด ์กฐํ๋ฅผ ์ํํ๊ณ ์บ์๋ฅผ ๋ณด์ ํ๋ ์๋ฒ |
| TTL | Time To Live โ ์บ์ ์ ํจ ์๊ฐ(์ด) |
Root DNS (.)
โโโ .com (TLD)
โ โโโ google.com (Authoritative)
โ โโโ example.com (Authoritative)
โโโ .net (TLD)
โโโ .kr (TLD)
ํด๋ผ์ด์ธํธ๋ Recursive DNS์ ํ ๋ฒ๋ง ์์ฒญํ๊ณ , Recursive DNS๊ฐ ์ ์ฒด ์กฐํ๋ฅผ ๋์ ์ํํ๋ค.
ํด๋ผ์ด์ธํธ โโโ www.example.com?โโโ Recursive DNS
โโโโก .com NS?โโโ Root DNS
โโโโข example.com NS?โโโ TLD DNS
โโโโฃ www.example.com A?โโโ Authoritative DNS
ํด๋ผ์ด์ธํธ โโโโค 93.184.216.34โโโโโโโโ Recursive DNS
ํด๋ผ์ด์ธํธ๊ฐ ๊ฐ DNS ์๋ฒ์ ์ง์ ์์ฐจ์ ์ผ๋ก ์ง์. ์ค๋ฌด์์๋ ๊ฑฐ์ ์ฌ์ฉํ์ง ์์.
| ๊ณ์ธต | ์์น | TTL |
|---|---|---|
| ๋ธ๋ผ์ฐ์ ์บ์ | ํด๋ผ์ด์ธํธ | 60์ด (Chrome ๊ธฐ๋ณธ) |
| OS ์บ์ | ํด๋ผ์ด์ธํธ | TTL ๋ฐ๋ฆ |
| Recursive DNS | ISP/๊ธฐ์ | TTL ๋ฐ๋ฆ (๋ณดํต ์๋ถ~์์๊ฐ) |
์บ์ ํํธ ์ 1 RTT๋ง์ผ๋ก IP ๋ฐํ.
| ๋ ์ฝ๋ | ์ค๋ช | ์์ |
|---|---|---|
| A | ๋๋ฉ์ธ โ IPv4 ์ฃผ์ | www.example.com โ 93.184.216.34 |
| AAAA | ๋๋ฉ์ธ โ IPv6 ์ฃผ์ | www.example.com โ 2606:2800::1 |
| CNAME | ๋๋ฉ์ธ โ ๋ค๋ฅธ ๋๋ฉ์ธ (๋ณ์นญ) | blog.example.com โ example.com |
| MX | ๋ฉ์ผ ์๋ฒ ์ง์ (์ฐ์ ์์ ํฌํจ) | example.com MX 10 mail.example.com |
| TXT | ์์ ํ ์คํธ (SPF, DKIM, ๋๋ฉ์ธ ์ธ์ฆ) | v=spf1 include:_spf.google.com ~all |
| NS | ๊ถํ ๋ค์์๋ฒ ์ง์ | example.com NS ns1.example.com |
| SOA | Zone ํ์ผ ๋ฉํ๋ฐ์ดํฐ (Serial, Refresh ๋ฑ) | - |
- ๋ฃจํธ ๋๋ฉ์ธ(
example.com)์๋ CNAME ์ฌ์ฉ ๋ถ๊ฐ (๋ค๋ฅธ ๋ ์ฝ๋์ ์ถฉ๋) - ์๋ธ๋๋ฉ์ธ(
www.example.com)์๋ง ์ฌ์ฉ ๊ฐ๋ฅ
| ๊ธฐ๋ฅ | ์ค๋ช |
|---|---|
| GeoDNS | ์ฌ์ฉ์ ์์น์ ๋ฐ๋ผ ๋ค๋ฅธ IP ๋ฐํ (AWS Route 53 Geolocation) |
| Weighted Routing | ๊ฐ์ค์น ๊ธฐ๋ฐ ํธ๋ํฝ ๋ถ๋ฐฐ (Canary ๋ฐฐํฌ) |
| Failover Routing | Health Check ์คํจ ์ Secondary๋ก ์๋ ์ ํ |
| DNSSEC | DNS ์๋ต์ ์ ์ ์๋ช ์ผ๋ก ์คํธํ ๋ฐฉ์ง |
dig www.example.com # ๊ธฐ๋ณธ ์กฐํ
dig @8.8.8.8 www.example.com # ํน์ DNS ์๋ฒ ์ฟผ๋ฆฌ
dig +trace www.example.com # ์ ์ฒด ์กฐํ ๊ฒฝ๋ก ์ถ์
dig -x 93.184.216.34 # ์ญ๋ฐฉํฅ ์กฐํ (IP โ ๋๋ฉ์ธ)
# DNS ์บ์ ์ด๊ธฐํ
sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder # Mac
sudo systemd-resolve --flush-caches # Linux