ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Domain Name System (DNS) ๊ฐœ์š”
    ML engineer/Papers & CS generals 2023. 1. 22. 11:46
    ๋ฐ˜์‘ํ˜•

    ๐Ÿ•“ 5 mins read

    ์‚ฌ์‹ค, DNS ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ๋“ค์€ ์ฑ…์„ ์ฐพ์•„๋ด๋„ ๋˜๊ณ , ์œ„ํ‚ค๋ฅผ ๊ฒ€์ƒ‰ํ•ด ๋ณด๋ฉด ์•„์ฃผ ์ƒ์„ธํ•˜๊ฒŒ ์˜จ๊ฐ– ์ •๋ณด๊ฐ€ ๋‚˜์˜ฌ ํ…๋ฐ, ๊ฐ„๋‹จํ•˜๊ฒŒ ์šฐ๋ฆฌ๊ฐ€ ์‹œ์Šคํ…œ ๋””์ž์ธ์„ ํ•˜๋Š” ๋ฐ ์žˆ์–ด ์•Œ์•„๋‘๋ฉด ์ข‹์„ ๋‚ด์šฉ๋“ค ์œ„์ฃผ๋กœ ๊ฐ„๋žตํ•˜๊ฒŒ ์ •๋ฆฌํ•ด ๋ดค์Šต๋‹ˆ๋‹ค.

    # ์†Œ๊ฐœ

    ๋„๋ฉ”์ธ ๋„ค์ž„ ์‹œ์Šคํ…œ(DNS)์€ ์ธํ„ฐ๋„ท์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ๋กœ, ์™ธ์šฐ๊ธฐ ์–ด๋ ค์šด IP ์ฃผ์†Œ ๋Œ€์‹  ์‰ฝ๊ฒŒ ๊ธฐ์–ตํ•  ์ˆ˜ ์žˆ๋Š” ๋„๋ฉ”์ธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์›น์‚ฌ์ดํŠธ์— ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. DNS๋Š” ๋„๋ฉ”์ธ ์ด๋ฆ„์„ IP ์ฃผ์†Œ๋กœ ๋งคํ•‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์†Œ๊ฐœ๋˜์—ˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์ž๊ฐ€ ์›น ์‚ฌ์ดํŠธ์— ์•ก์„ธ์Šค ํ•˜๊ณ  ์„œ๋ฒ„๊ฐ€ ์„œ๋กœ ์ฐพ๋Š” ๊ฒƒ์„ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

    ๊ณผ๊ฑฐ์—(?) ์‚ฌ๋žŒ๋“ค์ด ์ „ํ™”๋ฒˆํ˜ธ ์™ธ์šฐ๊ธฐ ์–ด๋ ค์šฐ๋‹ˆ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€๋ฅผ ์ฐพ์•„๋ณด๋˜ ๊ฒƒ๊ณผ ๊ฐ™์€ ๊ฐœ๋…์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. (์š”์ฆ˜? ์‚ฌ๋žŒ๋“ค์€ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€๊ฐ€ ๋ญ”์ง€๋„ ๋ชจ๋ฅด๋ ค๋‚˜์š”๐Ÿ˜…)

     

    # DNS ์ž‘๋™๋ฐฉ์‹

    DNS hierarchy ๊ตฌ์กฐ

    DNS๋Š” ๊ณ„์ธต ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ณ„์ธต ๊ตฌ์กฐ์˜ ์ตœ์ƒ์œ„์—๋Š” ๋ฃจํŠธ ์„œ๋ฒ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฃจํŠธ ์„œ๋ฒ„๋Š” .com, .org, .edu์™€ ๊ฐ™์€ ์ตœ์ƒ์œ„ ๋„๋ฉ”์ธ (Top Level Domain: TLD)์„ ๊ด€๋ฆฌํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋ธŒ๋ผ์šฐ์ €์— ๋„๋ฉ”์ธ ์ด๋ฆ„์„ ์ž…๋ ฅํ•˜๋ฉด, ๋ธŒ๋ผ์šฐ์ €๋Š” ๋ฃจํŠธ ์„œ๋ฒ„์— ๋„๋ฉ”์ธ ์ด๋ฆ„์ด ์†ํ•œ TLD๋ฅผ ํ™•์ธํ•˜๋Š” ์š”์ฒญ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค. TLD๊ฐ€ ํ™•์ธ๋˜๋ฉด, ๋ธŒ๋ผ์šฐ์ €๋Š” ํ•ด๋‹น TLD์˜ ๊ถŒํ•œ ์žˆ๋Š” ์„œ๋ฒ„์— ๋„๋ฉ”์ธ ์ด๋ฆ„๊ณผ ๊ด€๋ จ๋œ IP ์ฃผ์†Œ๋ฅผ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
    (๋ˆˆ์น˜์ฑ„์…จ๊ฒ ์ง€๋งŒ, domain name์„ ํƒ์ƒ‰ํ•˜๋Š” ๊ณผ์ •์€ URL์„ ์˜ค๋ฅธ์ชฝ ๋์—์„œ๋ถ€ํ„ฐ ์™ผ์ชฝ์œผ๋กœ ์ฝ์œผ๋ฉด์„œ ํƒ์ƒ‰ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.)

    DNS ์„œ๋ฒ„๋Š” ๋ฃจํŠธ ์„œ๋ฒ„, ๊ถŒํ•œ ์žˆ๋Š” ์„œ๋ฒ„, ์บ์‹ฑ ์„œ๋ฒ„ ๋“ฑ ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฃจํŠธ ์„œ๋ฒ„๋Š” TLD๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์ ์ ˆํ•œ ๊ถŒํ•œ ์žˆ๋Š” ์„œ๋ฒ„๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๊ถŒํ•œ ์žˆ๋Š” ์„œ๋ฒ„๋Š” ํŠน์ • TLD ๋‚ด์˜ ๋„๋ฉ”์ธ ์ด๋ฆ„์„ ๊ด€๋ฆฌํ•˜๊ณ  ๋„๋ฉ”์ธ ์ด๋ฆ„๊ณผ ๊ด€๋ จ๋œ IP ์ฃผ์†Œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์บ์‹ฑ ์„œ๋ฒ„๋Š” DNS ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ด์ „ DNS ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ์บ์‹ฑํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

    ์บ์‹œ ๋ ˆ์ด์–ด์— ๋Œ€ํ•ด์„œ๋Š” ๋”ฐ๋กœ ๋‹ค๋ฃจ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

    ์ผ๋ฐ˜์ ์ธ ํผ๋ธ”๋ฆญ ๋„๋ฉ”์ธ ์ ‘๊ทผ ๊ณผ์ •

    # DNS ๋ ˆ์ฝ”๋“œ ์œ ํ˜•

    ๋„๋ฉ”์ธ ์ด๋ฆ„์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ DNS ๋ ˆ์ฝ”๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” DNS ๋ ˆ์ฝ”๋“œ ์ค‘ ์ผ๋ถ€๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

    A ๋ ˆ์ฝ”๋“œ: A ๋ ˆ์ฝ”๋“œ๋Š” ๋„๋ฉ”์ธ ์ด๋ฆ„์„ IP ์ฃผ์†Œ๋กœ ๋งคํ•‘ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์‚ฌ์šฉ์ž๊ฐ€ "example.com"์„ ๋ธŒ๋ผ์šฐ์ €์— ์ž…๋ ฅํ•˜๋ฉด A ๋ ˆ์ฝ”๋“œ๋Š” "example.com"๊ณผ ๊ด€๋ จ๋œ IP ์ฃผ์†Œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    MX ๋ ˆ์ฝ”๋“œ: MX ๋ ˆ์ฝ”๋“œ๋Š” ๋„๋ฉ”์ธ ์ด๋ฆ„์˜ ๋ฉ”์ผ ์„œ๋ฒ„๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฉ”์ผ์„ ์˜ฌ๋ฐ”๋ฅธ ๋ฉ”์ผ ์„œ๋ฒ„๋กœ ๋ผ์šฐํŒ… ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

    CNAME ๋ ˆ์ฝ”๋“œ: CNAME ๋ ˆ์ฝ”๋“œ๋Š” ๋„๋ฉ”์ธ ์ด๋ฆ„์˜ ๋ณ„์นญ์„ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, "example.com"์— ์›น ์‚ฌ์ดํŠธ๊ฐ€ ์žˆ๊ณ  "example.com/short"์— ๋Œ€ํ•œ ์งง์€ URL์„ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด "short"๋ผ๋Š” CNAME ๋ ˆ์ฝ”๋“œ๋ฅผ "example.com"์— ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํƒ€์ž… ์„ค๋ช… Key Value ์˜ˆ์‹œ
    A ํ˜ธ์ŠคํŠธ๋ช… -> IP์ฃผ์†Œ ๋งตํ•‘ Hostname IP address [A, relay1.naubull2.io, 104.18.2.118]
    NS ๋„๋ฉ”์ธ๋ช…์˜ ๊ถŒํ•œ์žˆ๋Š” DNS ํ˜ธ์ŠคํŠธ๋ช…์„ ๋งตํ•‘ Domain name Hostname [NS, naubull2.io, dns.naubull2.io]
    CNAME ๋ณ„์นญ(alias)๋ฅผ ์ •์‹ ํ˜ธ์ŠคํŠธ๋ช…์œผ๋กœ ๋งตํ•‘ Hostname Canonical name [CNAME, naubull2.io, server1.primary.naubull2.io]
    MX ๋ฉ”์ผ ์„œ๋ฒ„ ํ˜ธ์ŠคํŠธ๋ช…์„ ์ •์‹ํ˜ธ์ŠคํŠธ๋ช…์œผ๋กœ ๋งตํ•‘ Hostname Canonical name [MX, mail.naubull2.io, mailserver1.backup.naubull2.io]

     

    # DNS ๋ณด์•ˆ

    DNS๋Š” ์ธํ„ฐ๋„ท์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ์ด๋ฏ€๋กœ ์‰ฝ๊ฒŒ ์•…์˜์ ์ธ ๊ณต๊ฒฉ์˜ ๋Œ€์ƒ์ด ๋ฉ๋‹ˆ๋‹ค. DNS ์Šคํ‘ธํ•‘๊ณผ ์บ์‹œ ์˜ค์—ผ์ด๋ผ๋Š” ์ผ๋ฐ˜์ ์ธ DNS ๋ณด์•ˆ ์œ„ํ˜‘๋งŒ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

    DNS ์Šคํ‘ธํ•‘์€ ๊ณต๊ฒฉ์ž๊ฐ€ ์ •์ƒ์ ์ธ ์›น ์‚ฌ์ดํŠธ๋กœ ๊ฐ€๋ ค๋˜ ํŠธ๋ž˜ํ”ฝ์„ ์•…์„ฑ ์›น ์‚ฌ์ดํŠธ๋กœ ์žฌ์ „์†กํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Š” DNS ์„œ๋ฒ„๋ฅผ ํ•ดํ‚นํ•˜๊ฑฐ๋‚˜ ์œ„๋ฒ• DNS ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

    ์บ์‹œ ์˜ค์—ผ์€ ๊ณต๊ฒฉ์ž๊ฐ€ DNS ์บ์‹œ์— ์žˆ๋Š” ์ •๋ณด๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ •์ƒ์ ์ธ ์›น ์‚ฌ์ดํŠธ๋กœ ๊ฐ€๋ ค๋˜ ํŠธ๋ž˜ํ”ฝ์„ ์•…์„ฑ ์›น ์‚ฌ์ดํŠธ๋กœ ์žฌ์ „์†กํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

    ์ด๋Ÿฌํ•œ ์œ„ํ˜‘๋“ค์— ๋Œ€๋น„ํ•˜๊ธฐ ์œ„ํ•ด DNSSEC๊ณผ DNS over HTTPS๋ผ๋Š” ๋ณด์•ˆ ์†”๋ฃจ์…˜์ด ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. DNSSEC(DNS ๋ณด์•ˆ ํ™•์žฅ)๋Š” DNS์— ์ธ์ฆ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฉฐ, DNS ์ •๋ณด๊ฐ€ ๋ณ€์กฐ๋˜์ง€ ์•Š๋„๋ก ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค. DNS over HTTPS๋Š” DNS ์š”์ฒญ๊ณผ ์‘๋‹ต์„ HTTPS ํ”„๋กœํ† ์ฝœ๋กœ ์•”ํ˜ธํ™”ํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ์ค‘์˜ ๊ณต๊ฒฉ์ž๊ฐ€ DNS ์ •๋ณด๋ฅผ ์—ฟ๋ณผ ์ˆ˜ ์—†๋„๋ก ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค.

     

    # ์š”์•ฝ

    ๋„๋ฉ”์ธ ์ด๋ฆ„ ์‹œ์Šคํ…œ (DNS)๋Š” ์ธํ„ฐ๋„ท์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ๋กœ, IP ์ฃผ์†Œ ๋Œ€์‹  ์‰ฝ๊ฒŒ ๊ธฐ์–ตํ•  ์ˆ˜ ์žˆ๋Š” ๋„๋ฉ”์ธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์›น ์‚ฌ์ดํŠธ์— ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. DNS๋Š” ๊ณ„์ธต ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ณ„์ธต ๊ตฌ์กฐ์˜ ์ตœ์ƒ์œ„์—๋Š” ๋ฃจํŠธ ์„œ๋ฒ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. DNS ๋ ˆ์ฝ”๋“œ๋Š” A, MX, CNAME ๋“ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋„๋ฉ”์ธ ์ด๋ฆ„๊ณผ IP ์ฃผ์†Œ๋ฅผ ๋งคํ•‘ํ•˜๊ณ  ์ด๋ฉ”์ผ๊ณผ ๋ณ„์นญ ์„ค์ •์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    ๊ทธ๋ฆฌ๊ณ  DNS๋Š” ์•…์˜์  ๊ณต๊ฒฉ์˜ ๋Œ€์ƒ์ด ๋˜๋ฉฐ, DNS ์Šคํ‘ธํ•‘๊ณผ ์บ์‹œ ์˜ค์—ผ๊ณผ ๊ฐ™์€ ๋ณด์•ˆ ์œ„ํ˜‘์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ„ํ˜‘๋“ค์— ๋Œ€๋น„ํ•˜๊ธฐ ์œ„ํ•ด DNSSEC๊ณผ DNS over HTTPS๋ผ๋Š” ๋ณด์•ˆ ์†”๋ฃจ์…˜์ด ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ์•ž์œผ๋กœ ์‚ดํŽด๋ณผ ์š”์†Œ๋“ค์— ๋น„ํ•ด DNS ์„œ๋ฒ„๋Š” ISP(์ธํ„ฐ๋„ท ์„œ๋น„์Šค ์ œ๊ณต์ž: ํ”ํžˆ ์ƒ๊ฐํ•˜์‹œ๋Š” ํ†ต์‹ ์‚ฌ์ฃ )๋‚˜ ์‚ฌ๋‚ด ์ธํ”„๋ผ์‹ค ๊ฐ™์€ ๊ณณ์— ๊ณ„์‹ ๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด ์ง์ ‘ ๋‹ค๋ฃฐ์ผ์€ ๊ฑฐ์˜ ์—†์ง€๋งŒ, ์„œ๋ฒ„ ๋ฐœ์ฃผ/ํด๋ผ์šฐ๋“œ ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ๋“ฑ์„ ํ•˜๋‹ค ๋ณด๋ฉด ๊ด€๋ จ๋œ ์šฉ์–ด๋“ค์„ ์ ‘ํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ ์•Œ์•„๋‘์‹œ๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

     

    # (์ถ”๊ฐ€) DNS ๋ถ„์‚ฐ ์‹œ์Šคํ…œ

     DNS๊ฐ€ ์ธํ„ฐ๋„ท์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ์š”์†Œ์ธ ๊ฒƒ์„ ์ดํ•ดํ–ˆ๋‹ค๋ฉด, ์—ฌ๊ธฐ๊ฐ€ ๋‹จ์ผ ๋ณ‘๋ชฉ ์ง€์ (single point of failure)์ด ๋˜์–ด์„  ์•ˆ๋œ๋‹ค๋Š” ๊ฑธ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

    Scalability, reliability ๋“ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด  DNS ๊ตฌ์กฐ๋„ root-level 13๊ฐœ์˜ ์ธ์Šคํ„ด์Šค๋ฅผ 1,000์—ฌ ๊ฐœ์˜ ๋ ˆํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ธ๊ณ„ ๊ณณ๊ณณ์— ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์บ์‹ฑ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์„œ๋ฒ„ ๋ ˆํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐ€์ง€๋ฉฐ, ๋Œ€๋ถ€๋ถ„์˜ ํด๋ผ์ด์–ธํŠธ๊ฐ€ DNS๋ฅผ UDP๋ฅผ ์ด์šฉํ•ด ํ˜ธ์ถœํ•˜์ง€๋งŒ, ์•ˆ์ •์„ฑ์ด๋‚˜ ๋ณด์•ˆ์ธก๋ฉด์—์„œ TCP ์ปค๋„ฅ์…˜์„ ์ด์šฉํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ์•ž์„œ ์‚ดํŽด๋ณธ HTTPS์ฒ˜๋Ÿผ ๋” ์ƒ์œ„ ๋ ˆ์ด์–ด๋ฅผ ํ†ตํ•  ๊ฒฝ์šฐ ์•ˆ์ •์„ฑ๊ณผ ์‘๋‹ต์†๋„๋ฅผ ๊ตํ™˜ํ•˜๋Š” ๊ตฌ์กฐ๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด์ฃ . (์ฃผ๋กœ ๋ฉ”์‹œ์ง€์˜ ํฌ๊ธฐ๋‚˜ ๋ฐ์ดํ„ฐ ์œ ํ˜•์— ๋”ฐ๋ผ ํ”„๋กœํ† ์ฝœ์„ ์„ ํƒํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฐ์ดํ„ฐ ์‚ฌ์ด์ฆˆ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ์•ˆ์ •์„ฑ์ด ์ค‘์š”ํ•ด์ง€๋‹ˆ๊นŒ์š”.)

    ## Consistency

    Consistency์— ๋Œ€ํ•ด์„  ์ „์— ์‚ด์ง ๋‹ค๋ค˜์—ˆ๋Š”๋ฐ์š”, DNS๋Š” eventual consistency๋ฅผ ์ง€ํ–ฅํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰ ๋น ๋ฅธ ์‘๋‹ต์†๋„๋ฅผ ์œ„ํ•ด ์‹ค์‹œ๊ฐ„์„ฑ์„ ์–ด๋Š ์ •๋„ ํฌ๊ธฐํ•˜๊ณ , ๋ ˆํ”Œ๋ฆฌ์นด ๋…ธ๋“œ ๊ฐ„์— ์—…๋ฐ์ดํŠธ๊ฐ€ ๋ชจ๋‘ ์ด๋ฃจ์–ด์ง€๋Š” ๋ฐ์—๋Š” ๋Œ€๊ฒŒ ์ˆ˜ ์ดˆ์—์„œ 3์ผ ์ •๋„ ๊นŒ์ง€๋„ ๊ฑธ๋ฆฐ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ์˜ ๊ทœ๋ชจ๋‚˜ DNS ํŠธ๋ฆฌ ๊ตฌ์กฐ์ƒ ์–ด๋Š ๊ตฌ์—ญ์ด ์—…๋ฐ์ดํŠธ๋˜๋Š๋ƒ์— ๋”ฐ๋ผ ์†Œ์š” ์‹œ๊ฐ„์ด ๊ธธ์–ด์งˆ ์ˆ˜ ๋„ ์žˆ๋Š” ๊ฒƒ์ด์ฃ . (์ฃผ์†Œ ๋ณ€๊ฒฝ์ด ๋ฐœ์ƒํ•œ๋‹ค ํ•ด๋„ DNS๋Š” ํ•ญ์ƒ available ํ•ด์•ผ ํ•˜๋‹ˆ๊นŒ์š”.)

    ์บ์‹ฑ ๋˜ํ•œ ์‘๋‹ต ์†๋„๋ฅผ ๋†’์—ฌ์ฃผ๋Š” ์š”์†Œ์ง€๋งŒ, consistency๋ฅผ ๊นจ๋œจ๋ฆฌ๋Š” ์—ญํ• ์„ ํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. (๋„๋ฉ”์ธ์ด๋‚˜ IP์ •๋ณด๊ฐ€ ๋ฐ”๋€Œ์—ˆ๋Š”๋ฐ ์˜ค๋ž˜๋œ ์บ์‹œ๊ฐ€ ๋‚จ์•„์žˆ์–ด์„œ ์ •์ƒ์ ์œผ๋กœ ์ฃผ์†Œ๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ) ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ ์บ์‹œ ๋ ˆ์ฝ”๋“œ์—๋Š” expiration time์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.(Time to live : TTL) TTL์€ ๊ทธ ์—ญํ• ์„ ์ œ๋Œ€๋กœ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ๋Œ€๊ฒŒ ์ž‘์€ ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. (์ž‘๊ฒŒ๋Š” 2๋ถ„์—์„œ ๊ธธ๊ฒŒ๋Š” 10๋ถ„ ์ด๋‚ด ์ •๋„๋กœ)

     

    ## ์‹ค์Šต

    ํ„ฐ๋ฏธ๋„์—์„œ ๋ช‡ ๊ฐ€์ง€ ์ปค๋งจ๋“œ๋กœ DNS์˜ ๋™์ž‘์„ ์‚ดํŽด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. nslookup ์ปค๋งจ๋“œ์™€ dig ์ปค๋งจ๋“œ์ž…๋‹ˆ๋‹ค.
    ํ„ฐ๋ฏธ๋„์— ์•„๋ž˜ ๋‘ ์ปค๋งจ๋“œ๋ฅผ ๋ณต์‚ฌํ•ด ๋„ฃ๊ณ , ๊ฒฐ๊ณผ ๊ฐ’์„ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.

    1. nslookup www.google.com 
    2. dig www.google.com
    โฏ nslookup www.google.com
    Server:		168.126.63.1
    Address:	168.126.63.1#53
    
    Non-authoritative answer:
    Name:	www.google.com
    Address: 142.250.196.100

    - Non-authoritative answer๋ฅผ ๋ณด๋ฉด, ๊ตฌ๊ธ€ ์„œ๋ฒ„๊ฐ€ ์•„๋‹ˆ๋ผ ์–ด๋”˜๊ฐ€ ์ค‘๊ฐ„ ๋‹จ๊ณ„์—์„œ ์‘๋‹ต์ด ๋‚ด๋ ค์˜จ ๊ฒƒ์ด๋ผ๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. (์บ์‹œ ๋˜์–ด์žˆ๋‹ค๋Š” ๋œป์ด์ฃ ) ์ค‘๊ฐ„์— ํ•™๊ต, ํšŒ์‚ฌ์˜ DNS resolver ๊ฑฐ๋‚˜, ISP ๋„ค์ž„์„œ๋ฒ„ ๊ฐ™์€ ๊ณณ์ด๊ฒ ์ฃ ?

    โฏ dig www.google.com
    
    ; <<>> DiG 9.10.6 <<>> www.google.com
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38427
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 1232
    ;; QUESTION SECTION:
    ;www.google.com.			IN	A
    
    ;; ANSWER SECTION:
    www.google.com.		33	IN	A	142.251.42.196
    
    ;; Query time: 6 msec
    ;; SERVER: 168.126.63.1#53(168.126.63.1)
    ;; WHEN: Sun Jan 22 11:40:30 KST 2023
    ;; MSG SIZE  rcvd: 59

    - dig ์ปค๋งจ๋“œ๋กœ ์‘๋‹ต ์‹œ๊ฐ„์ด 10 msec ์ธ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์‘๋‹ต ์†๋„๋Š” ๋งค๋ฒˆ ๋‹ฌ๋ผ์ง€๊ฒ ์ฃ ?
    - ANSWER SECTION์˜ 33 ์€ DNS resolver์— ํ•ด๋‹น ๋ ˆ์ฝ”๋“œ๊ฐ€ ๋ช‡ ์ดˆ ๋™์•ˆ์ด๋‚˜ ์บ์‹ฑ๋˜์–ด์žˆ์—ˆ๋Š”์ง€๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

     

    ## ์ƒ๊ฐ๊ฑฐ๋ฆฌ

    DNS ๊ฐ€ ์–ด๋–ค ์›น์‚ฌ์ดํŠธ๋‚˜ ์„œ๋น„์Šค์˜ IP ์ฃผ์†Œ๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ์‹œ์Šคํ…œ์ด๋ผ๋ฉด, ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์ปดํ“จํ„ฐ๋Š” DNS resolver์˜ IP ์ฃผ์†Œ(root level)๋Š” ์–ด๋–ป๊ฒŒ ์•Œ ์ˆ˜ ์žˆ์„๊นŒ์š”?

    <์ •๋‹ต์€ ๋” ๋ณด๊ธฐ๋ฅผ ํŽผ์ณ ๋ณด์„ธ์š”>

    ๋”๋ณด๊ธฐ

    OS ๋‚ด์— (๋ฆฌ๋ˆ…์Šค์˜ ๊ฒฝ์šฐ /etc/resolv.conf ) DNS resolver์˜ IP ์ฃผ์†Œ๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. DNS resolver๋Š” ์ž์ฃผ ๋ฐ”๋€Œ๋Š” ์ผ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— OS์— 13๊ฐœ์˜ root-level ์„œ๋ฒ„์˜ ์ฃผ์†Œ๊ฐ€ ๋‚ด์žฅ๋˜์–ด ์žˆ๋Š” ์…ˆ์ด์ฃ .

    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€

Designed by naubull2.