๐ง DNS
DNS (Domain Name System) ์ฌ๋์ด ์ดํดํ๊ธฐ ์ฌ์ด ๋๋ฉ์ธ ์ด๋ฆ์ ๊ธฐ๊ณ๊ฐ ์ดํดํ๋ IP ์ฃผ์๋ก ๋ณํํ๋ ์์คํ
-
์์
www.google.com โ 172.217.18.36 -
์ธํฐ๋ท์ ํต์ฌ ์ธํ๋ผ
-
๊ณ์ธต์ ๊ตฌ์กฐ(Hierarchical Naming Structure) ์ฌ์ฉ
DNS ๊ณ์ธต ๊ตฌ์กฐ ์์
.com
โโ example.com
โโ api.example.com
โโ www.example.com
๐งฉ DNS ์ฉ์ด
- Domain Registrar
- ๋๋ฉ์ธ์ ๊ตฌ๋งค/๋ฑ๋กํ๋ ์๋น์ค
- ์: Route 53, GoDaddy
- DNS Record
- A, AAAA, CNAME, NS ๋ฑ
- Zone File
- DNS ๋ ์ฝ๋ ์งํฉ
- Name Server
- DNS ์ฟผ๋ฆฌ๋ฅผ ์ฒ๋ฆฌ
- Authoritative / Non-Authoritative
- TLD (Top Level Domain)
.com,.org,.kr๋ฑ
- SLD (Second Level Domain)
amazon.com,google.com
- FQDN
- Fully Qualified Domain Name
๐ DNS ๋์ ํ๋ฆ
Web Browser
โ example.com?
Local DNSServer (์บ์ ํ์ธ)
โ
Root DNSServer
โ
TLD DNSServer (.com)
โ
SLD DNSServer (example.com)
โ
IP ๋ฐํ (9.10.11.12)
โ
WebServer ์ ๊ทผ
- TTL(Time To Live) ๋์ Local DNS์ ์บ์ฑ
- Root: ICANN
- TLD: IANA
- SLD: Domain Registrar ๊ด๋ฆฌ
โ๏ธ Amazon Route 53
๊ณ ๊ฐ์ฉ์ฑยทํ์ฅ์ฑยท์์ ๊ด๋ฆฌํ Authoritative DNS ์๋น์ค
ํต์ฌ ํน์ง
- ์ฌ์ฉ์๊ฐ DNS ๋ ์ฝ๋๋ฅผ ์ง์ ๊ด๋ฆฌ
- Domain Registrar ์ญํ ๋ ์ํ
- ๋ฆฌ์์ค ์ํ Health Check ๊ฐ๋ฅ
- AWS ์ ์ผ 100% SLA ์ ๊ณต ์๋น์ค
- ์ซ์ 53 = DNS ๊ธฐ๋ณธ ํฌํธ
๐ Route 53 โ DNS Record ๊ตฌ์ฑ ์์
๊ฐ ๋ ์ฝ๋๋ ๋ค์ ์ ๋ณด๋ฅผ ํฌํจ
- Record Name (๋๋ฉ์ธ / ์๋ธ๋๋ฉ์ธ)
- Record Type (A, AAAA, CNAME ๋ฑ)
- Value (IP ๋๋ ๋์)
- Routing Policy
- TTL
์ง์ Record Type
- ํ์
- A / AAAA / CNAME / NS
- ๊ณ ๊ธ
- CAA / MX / TXT / SOA / PTR / SRV ๋ฑ
๐งพ Record Type
A / AAAA
- A: IPv4 ๋งคํ
- AAAA: IPv6 ๋งคํ
CNAME
- ๋๋ฉ์ธ โ ๋๋ฉ์ธ ๋งคํ
- Zone Apex(๋ฃจํธ ๋๋ฉ์ธ)์๋ ์ฌ์ฉ ๋ถ๊ฐ
- โ example.com
- โ www.example.com
NS
- Hosted Zone์ Name Server ์ ์
๐ฆ Hosted Zone
๋๋ฉ์ธ๊ณผ ์๋ธ๋๋ฉ์ธ ํธ๋ํฝ ์ ์ด๋ฅผ ์ํ ์ปจํ ์ด๋
Public Hosted Zone
- ์ธํฐ๋ท ๊ณต๊ฐ ๋๋ฉ์ธ
- ์:
example.com
Private Hosted Zone
- VPC ๋ด๋ถ ์ ์ฉ ๋๋ฉ์ธ
- ์:
api.example.internal
๐ฐ ๋น์ฉ: $0.50 / Hosted Zone / ์
๐ Public vs Private Hosted Zone ๊ตฌ์กฐ
Public
Client โ Route53 โ ALB / CloudFront / EC2
Private
VPC ๋ด๋ถ
โโ api.example.internal โ10.0.0.10
โโ db.example.internal โ10.0.0.35
โฑ๏ธ TTL (Time To Live)
DNS Resolver๊ฐ ๋ ์ฝ๋๋ฅผ ์บ์ฑํ๋ ์๊ฐ
High TTL (์: 24์๊ฐ)
- Route 53 ํธ๋ํฝ โ
- ๋ ์ฝ๋ ๋ณ๊ฒฝ ๋ฐ์ ๋๋ฆผ
Low TTL (์: 60์ด)
- ๋ณ๊ฒฝ ๋ฐ์ ๋น ๋ฆ
- Route 53 ์ฟผ๋ฆฌ ๋น์ฉ โ
โ ๏ธ Alias Record๋ TTL ์ค์ ๋ถ๊ฐ
๐ CNAME vs Alias
CNAME
- ์ด๋ค ๋๋ฉ์ธ์ด๋ ๋์ ๊ฐ๋ฅ
- ๋ฃจํธ ๋๋ฉ์ธ ๋ถ๊ฐ
- ๋น์ฉ ์์
Alias (Route 53 ์ ์ฉ)
- AWS ๋ฆฌ์์ค๋ก ์ง์ ์ฐ๊ฒฐ
- ๋ฃจํธ ๋๋ฉ์ธ ๊ฐ๋ฅ
- TTL ์ค์ โ
- Health Check ์๋ ์ฐ๋
- ๋น์ฉ โ
๐ Alias Record ๋์ ๋ฆฌ์์ค
- Elastic Load Balancer
- CloudFront
- API Gateway
- Elastic Beanstalk
- S3 Website
- VPC Interface Endpoint
- Global Accelerator
- ๊ฐ์ Hosted Zone ๋ด Route 53 Record
โ EC2 ์์ฒด DNS ์ด๋ฆ์ Alias ๋ถ๊ฐ
๐ฆ Routing Policy ๊ฐ์
DNS ์๋ต ๋ฐฉ์์ ์ ์ (ํธ๋ํฝ์ โ์ ๋ฌโํ๋ ๊ฒ์ด ์๋)
์ง์ ์ ์ฑ :
- Simple
- Weighted
- Failover
- Latency-based
- Geolocation
- Multi-Value
- Geoproximity (Traffic Flow ํ์)
- IP-based Routing
๐ Simple Routing
- ๋จ์ผ ๋ฆฌ์์ค ์๋ต
- ์ฌ๋ฌ ๊ฐ ์ค์ ๊ฐ๋ฅ
- ํด๋ผ์ด์ธํธ๊ฐ ๋๋ค ์ ํ
- Health Check ์ฐ๊ฒฐ โ
- Alias ์ฌ์ฉ ์ ๋ฆฌ์์ค 1๊ฐ๋ง ๊ฐ๋ฅ
โ๏ธ Weighted Routing
์์ฒญ ๋น์จ ์ ์ด
- ๊ฐ ๋ ์ฝ๋์ ๊ฐ์ค์น ์ค์
- ํฉ๊ณ 100์ผ ํ์ โ
- Health Check ์ฐ๋ ๊ฐ๋ฅ
- Weight = 0 โ ํธ๋ํฝ ์ฐจ๋จ
- A/B ํ ์คํธ, ์ ์ง์ ๋ฐฐํฌ์ ํ์ฉ
๐ Latency-based Routing
์ฌ์ฉ์ ๊ธฐ์ค ๊ฐ์ฅ ์ง์ฐ ์๊ฐ์ด ๋ฎ์ Region ์ ํ
- ์ฌ์ฉ์ โ AWS Region ์ง์ฐ ๊ธฐ์ค
- ์ง๋ฆฌ์ ์ผ๋ก ๋ฉ์ด๋ ๋ ๋น ๋ฅด๋ฉด ์ ํ ๊ฐ๋ฅ
- Health Check ์ฐ๋ โ ์ฅ์ ์ Failover
๐ฉบ Route 53 Health Checks
3๊ฐ์ง ์ ํ
- Endpoint ๋ชจ๋ํฐ๋ง
- HTTP / HTTPS / TCP
- Calculated Health Check
- ์ฌ๋ฌ Health Check ์กฐํฉ (AND / OR / NOT)
- CloudWatch Alarm ๊ธฐ๋ฐ
- Private ๋ฆฌ์์ค ๋ชจ๋ํฐ๋ง ๊ฐ๋ฅ
๐ Endpoint Health Check ์์ธ
- ์ ์ธ๊ณ ์ฝ 15๊ฐ Health Checker
- ๊ธฐ๋ณธ ์กฐ๊ฑด
- Interval: 30์ด (์ต์ 10์ด)
- Threshold: 3
- 2xx / 3xx ์๋ต๋ง ์ ์
- ์๋ต ๋ณธ๋ฌธ ํ ์คํธ ๊ฒ์ฌ ๊ฐ๋ฅ (5120 bytes)
- ๋ณด์ ๊ทธ๋ฃน์์ Route 53 IP ํ์ฉ ํ์
๐งฎ Calculated Health Check
- ์ต๋ 256๊ฐ Child Health Check
- OR / AND / NOT ์กฐํฉ
- ์ ์ง๋ณด์ ์ค์๋ ์๋น์ค ์ ์ ์ฒ๋ฆฌ ๊ฐ๋ฅ
๐ Private Hosted Zone Health Check ์ ์ฝ
- Route 53 Health Checker๋ VPC ์ธ๋ถ
- Private ์๋ํฌ์ธํธ ์ง์ ์ ๊ทผ โ
ํด๊ฒฐ ๋ฐฉ์
Private Resource
โ CloudWatch Metric
โ CloudWatch Alarm
โ Route53 HealthCheck
๐ Failover Routing (Active-Passive)
- Primary + Secondary ๊ตฌ์กฐ
- Primary Health Check ํ์
- Primary ์ฅ์ ์ Secondary ์๋ต
๐ Geolocation Routing
์ฌ์ฉ์ ์์น ๊ธฐ์ค ๋ผ์ฐํ
- Continent / Country / US State
- ๊ฐ์ฅ ๊ตฌ์ฒด์ ์ธ ์์น ์ฐ์
- Default Record ํ์
- ์ง์ญ๋ณ ์ฝํ ์ธ ์ ๊ณต, ์ ๊ทผ ์ ํ
๐งญ Geoproximity Routing
์ฌ์ฉ์ + ๋ฆฌ์์ค ์์น ๊ธฐ์ค
- Bias ๊ฐ์ผ๋ก ํธ๋ํฝ ๋น์จ ์กฐ์
- +1 ~ +99: ํ์ฅ
- 1 ~ -99: ์ถ์
- AWS / Non-AWS ๋ฆฌ์์ค ๋ชจ๋ ๊ฐ๋ฅ
- Route 53 Traffic Flow ํ์
๐งฉ IP-based Routing
ํด๋ผ์ด์ธํธ IP CIDR ๊ธฐ์ค ๋ผ์ฐํ
- ISP / ๋คํธ์ํฌ ๋จ์ ์ ์ด
- ์ฑ๋ฅ ์ต์ ํ, ๋น์ฉ ์ ๊ฐ ๋ชฉ์
- CIDR Collection ํ์
๐ง Multi-Value Routing
- ์ฌ๋ฌ ์ ์ ๋ฆฌ์์ค ๋ฐํ
- ์ต๋ 8๊ฐ Healthy Record
- Health Check ์ฐ๋ ๊ฐ๋ฅ
- ELB ๋์ฒด ์๋จ ์๋
๐ท๏ธ Domain Registrar vs DNS Service
- Registrar
- ๋๋ฉ์ธ ๊ตฌ๋งค
- DNS Service
- DNS ๋ ์ฝ๋ ๊ด๋ฆฌ
๊ฐ๋ฅ ๊ตฌ์กฐ
- GoDaddy์์ ๋๋ฉ์ธ ๊ตฌ๋งค
- Route 53์์ DNS ๊ด๋ฆฌ
๐ 3rd Party Registrar + Route 53 ์ฐ๋ ์ ์ฐจ
- Route 53์์ Hosted Zone ์์ฑ
- ์์ฑ๋ NS Record ํ์ธ
- ์ธ๋ถ Registrar์ NS ๊ฐ ๋ฑ๋ก
Registrar โ DNS Service ๋๋ถ๋ถ Registrar๋ ๊ธฐ๋ณธ DNS ์ ๊ณตํ์ง๋ง ๋ถ๋ฆฌ ์ฌ์ฉ ๊ฐ๋ฅ