Network

DNS ๋ž€? DNS ์ฟผ๋ฆฌ ๊ณผ์ • ๋ฐ DNS ์บ์‹ฑ

๐Ÿง Yon 2024. 2. 7. 09:00
๋ฐ˜์‘ํ˜•

DNS?

๋ชจ๋“  ๋””๋ฐ”์ด์Šค๋“ค์€ ์ธํ„ฐ๋„ท ์ƒ์—์„œ ์„œ๋กœ ๊ฐ„์˜ ํ†ต์‹ ์„ ์œ„ํ•œ Internet Protocol(IP) ์ฃผ์†Œ๋ฅผ ๋ณด์œ ํ•˜๊ณ  ์žˆ๋‹ค. IP ์ฃผ์†Œ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ˆซ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ณต์žกํ•œ ๋ฌธ์ž์—ด์˜ ํ˜•ํƒœ๋ฅผ ๋„๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ๋žŒ์ด ์ฝ๊ธฐ ์‰ฝ๊ณ  ๊ธฐ์–ตํ•˜๊ธฐ ํŽธํ•œ ์ด๋ฆ„์œผ๋กœ ๋ณ€ํ™˜ํ•  ํ•„์š”๊ฐ€ ์žˆ๋Š”๋ฐ, ์ด ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ด DNS ์ด๋‹ค:[1]

DNS ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€ ๊ฐ™์€ ์—ญํ• ์„ ํ•˜๋ฉฐ ์…€ ์ˆ˜ ์—†์ด ๋งŽ์€ DNS Zone์œผ๋กœ ๊ตฌ์„ฑ๋œ ๊ฑฐ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋‹ค. DNS Zone๋“ค์˜ ์ตœ์ƒ์œ„์—๋Š” DNS Root Zone์ด ์žˆ์œผ๋ฉฐ Root Zone ๋ฐ”๋กœ ์•„๋ž˜์—๋Š” org,com,net ๊ณผ ๊ฐ™์€ TLD๋“ค์ด ์œ„์น˜ํ•œ๋‹ค. Root Zon e์œผ๋กœ๋ถ€ํ„ฐ ํƒ‘๋‹ค์šด ํ˜•์‹์œผ๋กœ ๊ตฌ์„ฑ๋œ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€์ธ ์…ˆ์ด๋‹ค.

DNS Root Zone
ใ„ดTLD (org, com, net...)
    ใ„ดDNS Zones (wikipedia.org, google.com, gov.uk ...)

DNS Zone์€ ์•„๋ž˜ ๊ทธ๋ฆผ์—์„œ ๋ณด์ด๋Š” ๊ฒƒ ์ฒ˜๋Ÿผ๋‹ค์ˆ˜ ๊ฐœ์˜ DNS ์ด๋ฆ„์„ ๋ณด์œ ํ•œ ๋„๋ฉ”์ธ์˜ ์˜์—ญ์„ ๋งํ•œ๋‹ค.

์˜ˆ) 
DNS Zone: wikipedia.org
DNS Zone์„ ๊ตฌ์„ฑํ•˜๋Š” ํ•˜์œ„๋„๋ฉ”์ธ๋“ค: ko.wikipedia.org, en.wikipedia.org ๋“ฑ๋“ฑ

DNS ์ฟผ๋ฆฌ ๊ณผ์ •

์œ ์ €๊ฐ€ ๋ธŒ๋ผ์šฐ์ €์— www.google.com ์„ ์ž…๋ ฅํ•˜๋Š” ์ˆœ๊ฐ„๋ถ€ํ„ฐ ํŽ˜์ด์ง€๋ฅผ ๋ฐ˜ํ™˜๋ฐ›์„ ๋•Œ ๊นŒ์ง€ ์ผ์–ด๋‚˜๋Š” DNS Resolve๊ณผ์ •

(1) ๋ธŒ๋ผ์šฐ์ € ์บ์‹œ ํ™•์ธ
๋ธŒ๋ผ์šฐ์ €๋Š” ๋จผ์ € ์ž์ฒด DNS ์บ์‹œ๋ฅผ ํ™•์ธํ•˜๋ฉฐ ์บ์‹œ์— ํ•ด๋‹น ๋„๋ฉ”์ธ์˜ IP ์ฃผ์†Œ๊ฐ€ ์ด๋ฏธ ์žˆ์œผ๋ฉด ์ถ”๊ฐ€์ ์ธ DNS ์กฐํšŒ ์—†์ด ์บ์‹œ๋œ IP ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

(2) ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ ํ™•์ธ
๋ธŒ๋ผ์šฐ์ € ์บ์‹œ์— ํ•ด๋‹น ๋„๋ฉ”์ธ์ด ์—†์œผ๋ฉด ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ์„ ํ™•์ธํ•œ๋‹ค.
ํ˜ธ์ŠคํŠธ ํŒŒ์ผ์— ๋„๋ฉ”์ธ๊ณผ ๊ด€๋ จ๋œ IP ์ฃผ์†Œ๊ฐ€ ์ •์˜๋˜์–ด ์žˆ์„ ๊ฒฝ์šฐ ๋ธŒ๋ผ์šฐ์ €๋Š” ํ•ด๋‹น ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

(3) 1,2์—์„œ๋„ IP ์ฃผ์†Œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†๋‹ค๋ฉด ์šด์˜์ฒด์ œ์˜ ๋กœ์ปฌ DNS Resolver(์˜ˆ: systemd-resolved)๊ฐ€ ๋™์ž‘ํ•œ๋‹ค.

(3-1) ์šด์˜์ฒด์ œ์˜ ๋กœ์ปฌ Resolver๋Š” ์‚ฌ์šฉ์ค‘์ธ ๋ฆฌ์กธ๋ฒ„์˜ Configuration File(์˜ˆ: /etc/resolv.conf, /etc/systemd/resolved.conf ๋“ฑ) ํŒŒ์ผ์—์„œ ์„ค์ •๋œ DNS ์„œ๋ฒ„(๋„ค์ž„์„œ๋ฒ„ ์˜ˆ: 1.1.1.1)๋กœ DNS Query๋ฅผ ๋ณด๋‚ธ๋‹ค. ์—ฌ๊ธฐ์„œ๋ถ€ํ„ฐ ์‹œ์ž‘๋˜๋Š” ์žฌ๊ท€์ ์ธ ์ฟผ๋ฆฌ ์ „๋‹ฌ ๊ณผ์ •์„ DNS Delegation์ด๋ผ๊ณ  ํ•œ๋‹ค.

(3-2) ๋กœ์ปฌ Resolver๋Š” ์šด์˜์ฒด์ œ์˜ DHCP ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ ์ •๋ณด๋ฅผ ํ†ตํ•ด Recursive DNS ์„œ๋ฒ„์˜ IP ์ฃผ์†Œ๋ฅผ ์•Œ๊ณ  ์žˆ๋‹ค.

(3-3) ๋งŒ์ผ ๋„ค์ž„์„œ๋ฒ„๋ฅผ ์ปค์Šคํ…€ ์„ค์ •ํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด ISP์—์„œ ์šด์˜ํ•˜๋Š” Recursive DNS ์„œ๋ฒ„๋กœ ์ฟผ๋ฆฌ๋ฅผ ๋ณด๋‚ธ๋‹ค.

(4) 1.1.1.1 ๋„ค์ž„์„œ๋ฒ„๋Š” TLD ์„œ๋ฒ„๋ถ€ํ„ฐ ์ถœ๋ฐœํ•˜์—ฌ ๋„๋ฉ”์ธ ์ด๋ฆ„์„ ํ•ด์„ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ๋กœ์ปฌ DNS Resolver(์˜ˆ: systemd-resolved)์—๊ฒŒ ๋ฐ˜ํ™˜ํ•œ๋‹ค

(5) ๋กœ์ปฌ DNS Resolver(์˜ˆ: systemd-resolved)๋Š” ๋ฐ›์€ DNS ์‘๋‹ต์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋˜๋Š” ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค.

DNS ์บ์‹ฑ?

์•ž์„œ ์‚ดํŽด๋ณธ DNS Delegation ๊ณผ์ •์€ ์ฟผ๋ฆฌ๋‹น 2~60๋ฐ€๋ฆฌ์ดˆ ๊ฐ€๋Ÿ‰์ด ์†Œ๋น„๋˜๋Š” ๊ณผ์ •์ด๋‹ค. ์ด๋ฅผ ์ ˆ์•ฝํ•˜๊ณ  ๋ณด๋‹ค ๋น ๋ฅธ ๋กœ๋“œ๋ฅผ ์œ„ํ•ด ์บ์‹ฑ์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋œ๋‹ค. DNS ์บ์‹ฑ์€ ์ด์ „์— ์ˆ˜ํ–‰ํ•œ DNS ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๋ฅผ ์ผ์ • ๊ธฐ๊ฐ„ ๋™์•ˆ ์ €์žฅํ•˜์—ฌ ๋™์ผํ•œ ์ฟผ๋ฆฌ๊ฐ€ ๋ฐ˜๋ณต๋  ๋•Œ ๋” ๋น ๋ฅธ ์‘๋‹ต์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ๋งค์ปค๋‹ˆ์ฆ˜์ด๋‹ค.

DNS ์บ์‹ฑ์€ ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ์œ ํ˜•์ด ์žˆ๋‹ค.

1. ํด๋ผ์ด์–ธํŠธ ์บ์‹ฑ(OS, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜)
2. ๋„ค์ž„์„œ๋ฒ„ ์บ์‹ฑ

ํด๋ผ์ด์–ธํŠธ ์บ์‹ฑ(OS ๋ ˆ๋ฒจ)

  • ์‚ฌ์šฉ์ž์˜ ์ปดํ“จํ„ฐ ๋˜๋Š” ๋„คํŠธ์›Œํฌ ์žฅ๋น„์—์„œ ์ˆ˜ํ–‰ํ•œ DNS ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•œ๋‹ค.
  • ํด๋ผ์ด์–ธํŠธ ์บ์‹ฑ์€ ์‚ฌ์šฉ์ž์˜ ๊ฐœ๋ณ„ ์žฅ์น˜์—์„œ ์ด๋ฃจ์–ด์ง€๋ฉฐ, ๊ฐ ์žฅ์น˜๋Š” ์ž์ฒด ๋กœ์ปฌ ์บ์‹œ๋ฅผ ์œ ์ง€ํ•œ๋‹ค.
  • ์บ์‹œ๋Š” TTL(Time-To-Live) ๊ฐ’์— ๋”ฐ๋ผ ์œ ์ง€ ๊ธฐ๊ฐ„์„ ๊ฐ€์ง€๋ฉฐ TTL ๋งŒ๋ฃŒ ์‹œ ํ•ด๋‹น ์บ์‹œ๋Š” ๊ฐฑ์‹ ๋˜๊ฑฐ๋‚˜ ์‚ญ์ œ๋œ๋‹ค.

ํด๋ผ์ด์–ธํŠธ ์บ์‹ฑ(์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ ˆ๋ฒจ)

  • ๋ฉ”๋ชจ๋ฆฌ ์บ์‹œ:
    • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ฉ”๋ชจ๋ฆฌ์— DNS ์‘๋‹ต์„ ์บ์‹œํ•˜์—ฌ ๋™์ผํ•œ ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ ๋ฐ˜๋ณต์  DNS ์กฐํšŒ๋ฅผ ๋ฐฉ์ง€ํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์บ์‹œ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ์ค‘์—๋งŒ ์ง€์†๋˜๋ฉฐ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ข…๋ฃŒ์‹œ ์บ์‹œ๋„ ์†Œ๋ฉธํ•œ๋‹ค.
  • ๋กœ์ปฌ ํŒŒ์ผ ์‹œ์Šคํ…œ ์บ์‹œ: ํŒŒ์ผ๋กœ ์‘๋‹ต์„ ์ €์žฅํ•˜๊ณ  ์ฝ์–ด์˜ค๋Š” ๋ฐฉ์‹
    • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์—ฌ๋Ÿฌ ์‹คํ–‰ ์‚ฌ์ดํด ๋™์•ˆ ์บ์‹œ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋กœ์ปฌ ํŒŒ์ผ ์‹œ์Šคํ…œ์— DNS ์‘๋‹ต์„ ์ €์žฅํ•˜๊ณ  ํ•„์š”ํ•  ๋•Œ ์ฝ์–ด์™€์„œ ์‚ฌ์šฉํ•œ๋‹ค
  • ์™ธ๋ถ€ DNS Resolver ์‚ฌ์šฉ: ์™ธ๋ถ€ ์„œ๋ฒ„์—์„œ DNS ์‘๋‹ต์„ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ์‹
    • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์™ธ๋ถ€ DNS Resolver ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ DNS ์กฐํšŒ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์บ์‹ฑํ•œ๋‹ค. ์—ฌ๋Ÿฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๊ฐ™์€ Resolver ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์–ด ์ค‘๋ณต๋œ DNS ์กฐํšŒ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋„ค์ž„์„œ๋ฒ„ ์บ์‹ฑ

  • ๋„ค์ž„์„œ๋ฒ„๊ฐ€ ์ˆ˜ํ–‰ํ•œ DNS ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•œ๋‹ค.
  • ๋„ค์ž„์„œ๋ฒ„ ์บ์‹ฑ์€ DNS ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„์—์„œ ์ด๋ฃจ์–ด์ง€๋ฉฐ, ๋‹ค์ˆ˜์˜ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๊ณต์œ ํ•˜๋Š” ์บ์‹œ๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค.
  • DNS ์„œ๋ฒ„๋Š” ์ž์ฃผ ์ฐพ๋Š” ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ ์‘๋‹ต์„ ์บ์‹œ์— ์ €์žฅํ•˜์—ฌ ๋™์ผํ•œ ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ์‘๋‹ต์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•œ๋‹ค.

References
[1] https://www.nslookup.io/learning/what-is-dns/

๋ฐ˜์‘ํ˜•