đ Production-Level DNS
đ¯ āĻāĻ āϏā§āĻļāύ⧠āĻāĻĒāύāĻŋ āĻļāĻŋāĻāĻŦā§āύâ
- DNS Load Balancing (RR, GeoDNS, Anycast)
- High Availability (Failover, Multi-Region)
- CDN āĻā§āĻāĻžāĻŦā§ DNS āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§
- Interview questions
â TOPIC 1: DNS Load Balancing (LB)
DNS Load Balancing āĻšāϞ⧠āĻāĻŽāύ āĻāĻāĻāĻŋ āĻĒāĻĻā§āϧāϤāĻŋ āϝā§āĻāĻžāύ⧠āĻāĻāĻāĻŋ Domain â āĻāĻāĻžāϧāĻŋāĻ Server IP āϤ⧠distribute āĻāϰāĻž āĻšā§āĨ¤ Server-āĻā§āϞā§āϰ āĻāĻĒāϰ Load āϏāĻŽāĻžāύāĻāĻžāĻŦā§ āĻāĻžāĻ āĻšā§āĨ¤
DNS āϞā§āĻĄ āĻŦā§āϝāĻžāϞāĻžāύā§āϏāĻŋāĻā§ā§āϰ āϤāĻŋāύāĻāĻŋ āĻĒā§ā§°āϧāĻžāύ āĻĒāĻĻā§āϧāϤāĻŋ:
- 1ī¸âŖ Round Robin
- 2ī¸âŖ GeoDNS (Geographical Load Balancing)
- 3ī¸âŖ Anycast DNS
1ī¸âŖ ROUND ROBIN DNS (āĻĒāĻžāϞāĻžāĻā§āϰāĻŽā§ āĻŦāĻž āϏāĻŋāϰāĻŋā§āĻžāϞ āĻ āύā§āϝāĻžā§ā§)
āĻāĻāĻŋ āϏāĻŦāĻā§ā§ā§ āϏāĻžāϧāĻžāϰāĻŖ āĻāĻŦāĻ āĻāĻŋāĻā§āĻāĻž âāĻŦā§āĻāĻžâ (Dumb) āĻĒāĻĻā§āϧāϤāĻŋāĨ¤
- āĻāĻŋāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§: āϧāϰā§āύ āĻāĻĒāύāĻžāϰ ā§ŠāĻāĻŋ āϏāĻžāϰā§āĻāĻžāϰ āĻāĻā§ (A, B, C)āĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻžāϰāĻĻā§āϰ āĻāĻā§ āĻāĻā§ āĻāĻžāĻ āĻāϰ⧠āĻĻā§ā§ (User 1âA, User 2âB, User 3âC)āĨ¤
- āϏāĻŽāϏā§āϝāĻž: āϏāĻžāϰā§āĻāĻžāϰ A āύāώā§āĻ āĻšā§ā§ āĻā§āϞā§āĻ āĻāĻāĻŋ āĻ āύā§āϧā§āϰ āĻŽāϤ⧠āϏā§āĻāĻžāύ⧠āĻāĻāĻāĻžāϰ āĻĒāĻžāĻ āĻžāϤ⧠āĻĨāĻžāĻā§āĨ¤
Example:
A domain.com â 10.10.1.1
A domain.com â 10.10.1.2
A domain.com â 10.10.1.3 āϝāĻāύ āĻā§āĻ domain āĻāĻžāĻāĻĒ āĻāϰā§: DNS server response rotate āĻāϰā§:
1st visitor â 10.10.1.1
2nd visitor â 10.10.1.2
3rd visitor â 10.10.1.3
4th visitor â 10.10.1.1 2ī¸âŖ GEODNS (āϞā§āĻā§āĻļāύ āĻŦāĻž āĻāϞāĻžāĻāĻž āĻāĻŋāϤā§āϤāĻŋāĻ)
āĻāĻāĻŋ āĻāĻāĻā§ āϏā§āĻŽāĻžāϰā§āĻ, āĻāĻāĻŋ āĻāĻāĻāĻžāϰā§āϰ āĻĒāĻžāϏāĻĒā§āϰā§āĻ (IP Address) āĻā§āĻ āĻāϰā§āĨ¤
- āĻāĻŋāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§: āĻāĻāĻāĻžāϰ āĻā§āύ āĻĻā§āĻļ āĻĨā§āĻā§ āĻāϏā§āĻā§ āϤāĻž āĻĻā§āĻā§ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻĒāĻžāĻ āĻžā§āĨ¤ (āĻāĻŽā§āϰāĻŋāĻāĻžāϰ āĻāĻāĻāĻžāϰ â āĻāĻŽā§āϰāĻŋāĻāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰ IP)āĨ¤
- āĻĒāĻžāϰā§āĻĨāĻā§āϝ: āĻāĻāĻžāύ⧠āĻāĻā§āĻ āĻĻā§āĻļā§āϰ āĻāĻāĻāĻžāϰ āĻāĻā§āĻ āϰāĻāĻŽ IP āĻĒāĻžā§āĨ¤
- āĻŦā§āϝāĻŦāĻšāĻžāϰ: Netflix āĻŦāĻž Amazon Prime (āϝā§āĻāĻžāύ⧠āĻāĻ āĻĻā§āĻļā§āϰ āĻāύā§āĻā§āύā§āĻ āĻ āύā§āϝ āĻĻā§āĻļā§ āĻĻā§āĻāĻžāύ⧠āύāĻŋāώā§āϧ)āĨ¤
3ī¸âŖ ANYCAST DNS (āϏāĻŦāĻā§ā§ā§ āĻāĻžāĻā§āϰ āĻĒāĻĨ āĻŦāĻž āĻŽā§āϝāĻžāĻāĻŋāĻ āĻā§āϞā§āύ)
Anycast āĻšāϞ⧠āĻāĻŽāύ āĻāĻāĻāĻŋ āϏā§āĻŽāĻžāϰā§āĻ āĻā§āĻāύā§āϞāĻāĻŋ āϝā§āĻāĻžāύ⧠âIP Address āĻāĻāĻāĻžāĻ, āĻāĻŋāύā§āϤ⧠āϏāĻžāϰā§āĻāĻžāϰ āĻ āύā§āĻāĻā§āϞā§âāĨ¤
đ āϏāĻšāĻ āĻāĻĻāĻžāĻšāϰāĻŖ (āĻŽā§āϝāĻžāĻāĻĄā§āύāĻžāϞā§āĻĄāϏ āĻŦāĻž ⧝⧝⧝)
āĻāĻžāĻŦā§āύ, âMcDonaldâsâ āĻŦāĻž āĻĒā§āϞāĻŋāĻļā§āϰ āĻāĻŽāĻžāϰā§āĻā§āύā§āϏāĻŋ āύāĻŽā§āĻŦāϰ â999â āĻšāϞ⧠āĻāĻāĻāĻŋ IP AddressāĨ¤
- āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻĸāĻžāĻāĻžā§ āĻĻāĻžāĻā§āĻŋā§ā§ âMcDonaldâsâ āĻā§āĻāĻā§āύ, āĻāĻĒāύāĻŋ āĻā§āϞāĻļāĻžāύ āĻŦāĻž āĻŦāύāĻžāύā§āϰ āĻŦā§āϰāĻžāĻā§āĻā§ āϝāĻžāĻŦā§āύāĨ¤
- āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āύāĻŋāĻ āĻā§āϰā§āĻā§ āĻĨāĻžāĻā§āύ, āĻāĻĒāύāĻŋ āϏā§āĻāĻžāύāĻāĻžāϰ āϞā§āĻāĻžāϞ āĻŦā§āϰāĻžāĻā§āĻā§ āϝāĻžāĻŦā§āύāĨ¤
āύāĻžāĻŽ āĻāĻŋāύā§āϤ⧠āĻāĻāĻāĻžāĻââMcDonaldâsâāĨ¤ āĻāĻŋāύā§āϤ⧠āĻāĻĒāύāĻŋ āϏāĻžāϰā§āĻāĻŋāϏ āĻĒāĻžāĻā§āĻā§āύ āĻāĻĒāύāĻžāϰ āϏāĻŦāĻā§ā§ā§ āĻāĻžāĻā§āϰ āĻĻā§āĻāĻžāύāĻāĻŋ āĻĨā§āĻā§āĨ¤ Anycast āĻ āĻŋāĻ āĻāĻāĻžāĻŦā§āĻ āĻāĻžāĻ āĻāϰā§āĨ¤
âī¸ āĻā§āĻāύāĻŋāĻā§āϝāĻžāϞ āĻāĻžāĻ
āϏāĻžāϧāĻžāϰāĻŖāϤ āĻāĻŽāϰāĻž āĻāĻžāύāĻŋ, ā§§āĻāĻŋ IP = ā§§āĻāĻŋ āϏāĻžāϰā§āĻāĻžāϰāĨ¤ āĻāĻŋāύā§āϤ⧠Anycast āĻŽā§āĻĨāĻĄā§, ā§§āĻāĻŋ IP = āĻĒā§āĻĨāĻŋāĻŦā§āϰ āĻļāϤ āĻļāϤ āϏāĻžāϰā§āĻāĻžāϰāĨ¤
āϝā§āĻŽāύ, Cloudflare-āĻāϰ 1.1.1.1 āĻā§āύ⧠āĻāĻāĻāĻŋ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰā§āϰ āĻ āĻŋāĻāĻžāύāĻž āύā§āĨ¤ āĻāĻāĻŋ āϏāĻžāϰāĻž āĻŦāĻŋāĻļā§āĻŦā§ āĻā§āĻŋā§ā§ āĻĨāĻžāĻāĻž āĻšāĻžāĻāĻžāϰ āĻšāĻžāĻāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻāύāĻĢāĻŋāĻāĻžāϰ āĻāϰāĻž āĻāĻā§āĨ¤ āϰā§āĻ āϏāĻžāϰā§āĻāĻžāϰāĻā§āϞā§āĻ (Root Servers) āĻāĻ āĻĒāĻĻā§āϧāϤāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§, āϤāĻžāĻ āĻŽāĻžāϤā§āϰ ā§§ā§ŠāĻāĻŋ āĻāĻāĻĒāĻŋ āĻĻāĻŋā§ā§ āĻŦāĻŋāĻļā§āĻŦāĻā§ā§ā§ ā§§ā§Ŧā§Ļā§Ļ+ āϏāĻžāϰā§āĻāĻžāϰ āĻāϞā§āĨ¤
â āϏā§āĻŦāĻŋāϧāĻž
- āϏā§āĻĒāĻžāϰ āĻĢāĻžāϏā§āĻ: āύā§āĻāĻā§āĻžāϰā§āĻ āĻ āĻā§āĻŽā§āĻāĻŋāĻ āĻāĻĒāύāĻžāĻā§ āϏāĻŦāĻā§ā§ā§ āĻāĻžāĻā§āϰ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻāĻžāύā§āĻā§āĻ āĻāϰ⧠āĻĻā§ā§āĨ¤
- High Availability: āĻā§āύ⧠āĻāĻāĻāĻŋ āϏāĻžāϰā§āĻāĻžāϰ āύāώā§āĻ āĻšā§ā§ āĻā§āϞā§, āĻ āĻā§āĻŽā§āĻāĻŋāĻ āĻ āύā§āϝ āϏāĻžāϰā§āĻāĻžāϰ āĻŦā§āϝāĻžāĻāĻāĻĒ āĻĻā§ā§āĨ¤
āĻā§āϞ āϧāĻžāϰāĻŖāĻž (Myth) vs āĻŦāĻžāϏā§āϤāĻŦāϤāĻž (Reality)
- āĻā§āϞ āϧāĻžāϰāĻŖāĻž: Anycast āĻŽāĻžāύ⧠āĻšāϞ⧠āĻĒā§āϰā§
google.comāĻāϰ āĻāύā§āϝ āĻĒā§āĻĨāĻŋāĻŦā§āϤ⧠āĻŽāĻžāϤā§āϰ ā§§āĻāĻŋ IP āĻĨāĻžāĻāĻŦā§āĨ¤ - āĻŦāĻžāϏā§āϤāĻŦāϤāĻž: Anycast āĻŽāĻžāύ⧠āĻšāϞ⧠āĻāĻāĻāĻŋ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ IP āĻĒā§āĻĨāĻŋāĻŦā§āϰ āĻ āύā§āĻ āĻāĻžā§āĻāĻžā§ āĻĨāĻžāĻāϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻāĻŋāύā§āϤ⧠āϤāĻžāϰ āĻŽāĻžāύ⧠āĻāĻ āύāĻž āϝ⧠āĻā§āĻāϞā§āϰ āĻāĻāĻĒāĻŋ āĻŽāĻžāϤā§āϰ āĻāĻāĻāĻžāĻ āĻšāĻŦā§āĨ¤
āĻā§āĻāϞ āĻāĻāĻžāύ⧠âMultiple Anycast IPsâ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻā§āĨ¤
⥠āĻāĻāύāĻāϰ⧠āϤā§āϞāύāĻž (Comparison Table)
| āĻĢāĻŋāĻāĻžāϰ | Round Robin (āĻĒāĻžāϞāĻžāĻā§āϰāĻŽā§) | GeoDNS (āϞā§āĻā§āĻļāύ āĻāĻŋāϤā§āϤāĻŋāĻ) | Anycast (āύāĻŋāĻāĻāϤāĻŽ āϏāĻžāϰā§āĻāĻžāϰ) |
|---|---|---|---|
| āĻŦā§āĻĻā§āϧāĻŋāĻŽāϤā§āϤāĻž | āύā§āĻ (āĻŦā§āĻāĻž) | āĻāĻā§ (āϞā§āĻā§āĻļāύ āĻŦā§āĻā§) | āĻ āύā§āĻ āĻŦā§āĻļāĻŋ (āύā§āĻāĻā§āĻžāϰā§āĻ āϞā§āĻā§āϞ) |
| IP Address | āĻāĻŋāύā§āύ āĻāĻŋāύā§āύ IP āĻĻā§ā§ | āĻāĻŋāύā§āύ āĻāĻŋāύā§āύ IP āĻĻā§ā§ (āĻĻā§āĻļāĻā§āĻĻā§) | āϏāĻŦāĻžāϰ āĻāύā§āϝ āĻāĻāĻ IP |
| āĻāĻžāĻ | āϞā§āĻĄ āĻŦā§āϝāĻžāϞā§āύā§āϏ āĻāϰ⧠| āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻāϞāĻžāĻāĻžāϰ āĻāύā§āĻā§āύā§āĻ āĻĻā§āĻāĻžā§ | āϏāĻŦāĻā§ā§ā§ āĻĢāĻžāϏā§āĻ āϰā§āϏāĻĒāύā§āϏ āĻĻā§ā§ |
| Failover | āϏāĻžāϰā§āĻāĻžāϰ āĻĄāĻžāĻāύ āĻšāϞ⧠āĻŦā§āĻā§ āύāĻž | āĻāύāĻĢāĻŋāĻāĻžāϰ āĻāϰāϤ⧠āĻšā§ | āĻ āĻā§āĻŽā§āĻāĻŋāĻ (āϏāĻŦāĻā§āϝāĻŧā§ āύāĻŋāϰāĻžāĻĒāĻĻ) |
| āĻāĻĻāĻžāĻšāϰāĻŖ | āĻā§āĻ āĻā§ā§āĻŦāϏāĻžāĻāĻ | āϏā§āĻā§āϰāĻŋāĻŽāĻŋāĻ āϏāĻžāĻāĻ (Netflix) | Google DNS, Cloudflare, Root Servers |
āϏāĻšāĻ āϏāĻžāϰāĻžāĻāĻļ:
- Round Robin: āϞāĻžāĻāύ āϧāϰ⧠āĻāĻāĻāύ āĻāĻāĻāύ āĻāϰ⧠āĻĒāĻžāĻ āĻžāĻāĨ¤
- GeoDNS: āĻĒāĻžāϏāĻĒā§āϰā§āĻ āĻā§āĻ āĻāϰā§, āϤāĻžāϰāĻĒāϰ āϏāĻ āĻŋāĻ āĻĻā§āĻļā§ āĻĒāĻžāĻ āĻžāĻāĨ¤
- Anycast: āϝ⧠āϏāĻŦāĻā§ā§ā§ āĻāĻžāĻā§ āĻāĻā§, āϏ⧠āϏāĻžā§āĻž āĻĻāĻžāĻ (āĻāĻāĻ āύāĻžāĻŽā§āϰ āĻ āύā§āĻ āĻā§āϞā§āύ)āĨ¤
â TOPIC 2: High Availability (HA) with DNS
Production-āĻ High Availability (HA) āĻŽāĻžāύ⧠service always up, even if:
- Server down
- Datacenter down
- Region down
HA DNS āĻāϰāĻžāϰ āϤāĻŋāύāĻāĻž āĻāĻĒāĻžā§:
1ī¸âŖ Failover DNS 2ī¸âŖ Multi-region active-active 3ī¸âŖ CDN-based HA
āϏāĻšāĻ āĻāĻĨāĻžā§: HA āĻŽāĻžāύ⧠āĻšāϞā§, āĻĻā§āύāĻŋā§āĻž āĻāϞā§āĻā§ āĻā§āϞā§āĻ āĻāĻĒāύāĻžāϰ āĻā§ā§āĻŦāϏāĻžāĻāĻ āĻŦāύā§āϧ āĻšāĻŦā§ āύāĻžāĨ¤
āύāĻŋāĻā§ āϤāĻŋāύāĻāĻŋ āĻĒāĻĻā§āϧāϤāĻŋāϰ āϏāĻšāĻ āĻŦā§āϝāĻžāĻā§āϝāĻž āĻĻā§āĻā§āĻž āĻšāϞā§:
1ī¸âŖ FAILOVER DNS (āĻŦā§āϝāĻžāĻāĻāĻĒ āĻŦāĻž Spare Tire)
āĻāĻāĻžāĻā§ āĻāĻžā§āĻŋāϰ Spare Tire-āĻāϰ āϏāĻžāĻĨā§ āϤā§āϞāύāĻž āĻāϰāϤ⧠āĻĒāĻžāϰā§āύāĨ¤
- āϏāĻžāϧāĻžāϰāĻŖ āĻ āĻŦāϏā§āĻĨāĻž: āĻāĻĒāύāĻžāϰ āĻāĻžā§āĻŋāϤ⧠ā§ĒāĻāĻŋ āĻāĻžāĻāĻž (Primary Server) āĻāϞāĻā§āĨ¤ Spare Tire (Secondary Server) āĻĄāĻŋāĻāĻŋāϤ⧠āĻā§āĻĒāĻāĻžāĻĒ āĻŦāϏ⧠āĻāĻā§āĨ¤
- āĻŦāĻŋāĻĒāĻĻ āĻšāϞā§: āĻšāĻ āĻžā§ āϰāĻžāϏā§āϤāĻžā§ āĻŽā§āĻāύ āĻāĻžāĻāĻž āĻĒāĻžāĻāĻāĻžāϰ āĻšā§ā§ āĻā§āϞ (Server Down)āĨ¤ āϤāĻāύ āĻāĻĒāύāĻŋ Spare Tire āϞāĻžāĻāĻžāϞā§āύ āĻāĻŦāĻ āĻāĻžā§āĻŋ āĻāĻŦāĻžāϰ āĻāϞāϤ⧠āĻļā§āϰ⧠āĻāϰāϞāĨ¤
- DNS-āĻāϰ āĻāĻžāĻ: DNS āϏāĻŦāϏāĻŽā§ āĻā§āĻ āĻāϰ⧠âāĻŽā§āĻāύ āϏāĻžāϰā§āĻāĻžāϰ āĻāĻŋ āĻā§āĻŦāĻŋāϤ?â āϝāĻĻāĻŋ āĻĻā§āĻā§ āĻŽāϰ⧠āĻā§āĻā§, āϏ⧠āϏāĻžāĻĨā§ āϏāĻžāĻĨā§ āĻā§āϰāĻžāĻĢāĻŋāĻ āĻā§āϰāĻŋā§ā§ āĻŦā§āϝāĻžāĻāĻāĻĒ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻĒāĻžāĻ āĻŋā§ā§ āĻĻā§ā§āĨ¤
Note: āĻāĻāĻžāύ⧠āϏāĻŦāϏāĻŽā§ āĻāĻāĻāĻŋ āϏāĻžāϰā§āĻāĻžāϰ āĻāϞā§, āĻ āύā§āϝāĻāĻŋ āĻŦāĻŋāĻĒāĻĻā§āϰ āĻāύā§āϝ āĻŦāϏ⧠āĻĨāĻžāĻā§āĨ¤
2ī¸âŖ MULTI-REGION ACTIVE-ACTIVE (āĻāĻāĻžāϧāĻŋāĻ āĻŦā§āϰāĻžāĻā§āĻ)
āĻāĻāĻžāĻā§ āĻŦā§āϝāĻžāĻāĻā§āϰ āĻŦāĻž āϏā§āĻĒāĻžāϰāĻļāĻĒā§āϰ āĻāĻāĻžāϧāĻŋāĻ āĻŦā§āϰāĻžāĻā§āĻā§āϰ āϏāĻžāĻĨā§ āϤā§āϞāύāĻž āĻāϰā§āύāĨ¤
- āĻŦā§āϝāĻŦāϏā§āĻĨāĻž: āϧāϰā§āύ āĻĸāĻžāĻāĻžā§ āĻāĻĒāύāĻžāϰ āĻ āĻĢāĻŋāϏā§āϰ āĻĻā§āĻāĻŋ āĻŦā§āϰāĻžāĻā§āĻ āĻāĻā§âāĻāĻāĻāĻŋ āĻā§āϞāĻļāĻžāύ, āĻāϰā§āĻāĻāĻŋ āϧāĻžāύāĻŽāύā§āĻĄāĻŋāĨ¤
- āϏāĻžāϧāĻžāϰāĻŖ āĻ āĻŦāϏā§āĻĨāĻž: āĻĻā§āĻāĻŋ āĻŦā§āϰāĻžāĻā§āĻāĻ āϏāĻŦāϏāĻŽā§ āĻā§āϞāĻž (Active)āĨ¤ āĻā§āϞāĻļāĻžāύā§āϰ āĻŽāĻžāύā§āώ āĻā§āϞāĻļāĻžāύ⧠āϝāĻžā§, āϧāĻžāύāĻŽāύā§āĻĄāĻŋāϰ āĻŽāĻžāύā§āώ āϧāĻžāύāĻŽāύā§āĻĄāĻŋāϤā§āĨ¤
- āĻŦāĻŋāĻĒāĻĻ āĻšāϞā§: āĻšāĻ āĻžā§ āĻā§āϞāĻļāĻžāύ āĻŦā§āϰāĻžāĻā§āĻā§ āĻāĻā§āύ āϞāĻžāĻāϞ (Region Down)āĨ¤ āϤāĻāύ āĻā§āϞāĻļāĻžāύā§āϰ āĻāĻžāϏā§āĻāĻŽāĻžāϰāϰāĻž āĻāĻŋ āϏā§āĻŦāĻž āĻĒāĻžāĻŦā§ āύāĻž? āĻ āĻŦāĻļā§āϝāĻ āĻĒāĻžāĻŦā§, āϤāĻžāϰāĻž āϤāĻāύ āϧāĻžāύāĻŽāύā§āĻĄāĻŋ āĻŦā§āϰāĻžāĻā§āĻā§ āĻāĻŋā§ā§ āĻāĻžāĻ āĻāϰāĻŦā§āĨ¤
- DNS-āĻāϰ āĻāĻžāĻ: āĻā§āϰāĻžāĻĢāĻŋāĻ āĻāĻžāĻ āĻāϰ⧠āĻĻā§ā§āĨ¤ āĻāĻ āĻāĻžā§āĻāĻž āĻŦāύā§āϧ āĻšāϞā§, āĻ āύā§āϝ āĻāĻžā§āĻāĻž āĻĨā§āĻā§ āϏāĻžāϰā§āĻāĻŋāϏ āĻĻā§ā§āĨ¤
Note: āĻāĻāĻžāύ⧠āϏāĻŦāĻā§āϞ⧠āϏāĻžāϰā§āĻāĻžāϰ āĻāĻāϏāĻžāĻĨā§ āĻāϞā§āĨ¤
3ī¸âŖ CDN BASED HA (āĻĻā§āĻāĻžāύā§āϰ āϏā§āĻāĻ)
āĻāĻāĻžāĻā§ āĻĢā§āϝāĻžāĻā§āĻāϰāĻŋ āĻāĻŦāĻ āϰāĻŋāĻā§āĻāϞ āĻĻā§āĻāĻžāύā§āϰ āϏāĻžāĻĨā§ āϤā§āϞāύāĻž āĻāϰā§āύāĨ¤
- āĻŦā§āϝāĻŦāϏā§āĻĨāĻž: āĻĢā§āϝāĻžāĻā§āĻāϰāĻŋ (Origin Server) āĻŽāĻžāϞ āĻŦāĻžāύāĻŋā§ā§ āĻĻā§āĻāĻžāύ⧠(CDN) āĻĒāĻžāĻ āĻžā§āĨ¤
- āĻŦāĻŋāĻĒāĻĻ āĻšāϞā§: āĻšāĻ āĻžā§ āĻĢā§āϝāĻžāĻā§āĻāϰāĻŋāϤ⧠āϧāϰā§āĻŽāĻāĻ āĻšāϞ⧠āĻŦāĻž āĻā§āĻĒāĻžāĻĻāύ āĻŦāύā§āϧ āĻšā§ā§ āĻā§āϞ (Server Down)āĨ¤
- āĻāĻžāϏā§āĻāĻŽāĻžāϰ āĻāĻŋ āĻĢāĻŋāϰāĻŦā§? āύāĻžāĨ¤ āĻāĻžāϰāĻŖ āĻĻā§āĻāĻžāύā§āϰ āϤāĻžāĻā§ (Cache) āĻāĻā§āϰ āĻ āύā§āĻ āĻŽāĻžāϞ āĻāĻŽāĻžāύ⧠āĻāĻā§āĨ¤ āĻĢā§āϝāĻžāĻā§āĻāϰāĻŋ āĻ āĻŋāĻ āĻšāĻā§āĻžāϰ āĻāĻ āĻĒāϰā§āϝāύā§āϤ āĻĻā§āĻāĻžāύāĻĻāĻžāϰ āϏā§āĻ āĻāĻŽāĻžāύ⧠āĻŽāĻžāϞ (Cached Page) āĻĻāĻŋā§ā§ āĻāĻžāϏā§āĻāĻŽāĻžāϰ āϏāĻžāĻŽāϞāĻžāĻŦā§āĨ¤
- Cloudflare-āĻāϰ āĻāĻžāĻ: āĻāĻĒāύāĻžāϰ āĻŽā§āĻāύ āϏāĻžāϰā§āĻāĻžāϰ āĻā§āϰā§āϝāĻžāĻļ āĻāϰāϞā§āĻ, Cloudflare āϤāĻžāϰ āĻŽā§āĻŽā§āϰāĻŋ āĻĨā§āĻā§ āĻāĻĒāύāĻžāϰ āϏāĻžāĻāĻā§āϰ āĻāĻāĻāĻŋ āĻāĻĒāĻŋ āĻāĻāĻāĻžāϰāĻā§ āĻĻā§āĻāĻžāĻŦā§āĨ¤ āĻāĻāĻāĻžāϰ āĻŦā§āĻāϤā§āĻ āĻĒāĻžāϰāĻŦā§ āύāĻž āĻāĻĒāύāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰ āĻŦāύā§āϧāĨ¤
⥠āĻāĻāύāĻāϰ⧠āĻĒāĻžāϰā§āĻĨāĻā§āϝ
| āĻĒāĻĻā§āϧāϤāĻŋ | āĻāĻĻāĻžāĻšāϰāĻŖ | āĻāĻāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻšā§? |
|---|---|---|
| Failover | āĻā§āύāĻžāϰā§āĻāϰ (āĻāĻžāϰā§āύā§āĻ āĻā§āϞ⧠āĻāϞā§) | āĻā§āĻ āĻŦāĻž āĻŽāĻžāĻāĻžāϰāĻŋ āϏāĻžāĻāĻ, āĻāϰāĻ āĻŦāĻžāĻāĻāĻžāϤā§āĨ¤ |
| Active-Active | āĻŦā§āϝāĻžāĻāĻā§āϰ āĻĻā§āĻ āĻŦā§āϰāĻžāĻā§āĻ (āĻĻā§āĻā§āĻ āĻā§āϞāĻž) | āĻā§āĻāϞ/āĻĢā§āϏāĻŦā§āĻā§āϰ āĻŽāϤ⧠āĻā§āϞā§āĻŦāĻžāϞ āϏāĻžāĻāĻāĨ¤ |
| CDN HA | āĻĻā§āĻāĻžāύā§āϰ āĻāĻŽāĻžāύ⧠āĻŽāĻžāϞ | āύāĻŋāĻāĻ āϏāĻžāĻāĻ āĻŦāĻž āĻŦā§āϞāĻ, āϝā§āĻāĻžāύ⧠āĻĄāĻžāĻāĻž āϏāĻŦāϏāĻŽā§ āĻā§āĻā§āĻ āĻšā§ āύāĻžāĨ¤ |
đĨ Real-World Example: Netflix
Netflix uses:
- GeoDNS
- Anycast
- Multi-region HA
- CDN (Open Connect)
Thatâs why Netflix never goes down.
â TOPIC 3: How CDNs Use DNS
CDN āĻā§āĻāĻžāĻŦā§ DNS āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§, āĻŦāĻŋāώā§āĻāĻŋ āĻā§āĻŦāĻ āĻāύā§āĻāĻžāϰā§āϏā§āĻāĻŋāĻāĨ¤ āĻāĻā§ âPizza Deliveryâ āϏāĻŋāϏā§āĻā§āĻŽā§āϰ āϏāĻžāĻĨā§ āϤā§āϞāύāĻž āĻāϰāϞ⧠āĻŦā§āĻāĻž āϏāĻŦāĻā§ā§ā§ āϏāĻšāĻ āĻšāĻŦā§āĨ¤
đ āĻĒāĻŋāĻā§āĻāĻž āĻĄā§āϞāĻŋāĻāĻžāϰāĻŋ āĻāύāĻžāϞāĻāĻŋ (āϏāĻšāĻ āĻāĻĻāĻžāĻšāϰāĻŖ)
āĻŽāύ⧠āĻāϰā§āύ yourdomain.com āĻšāϞ⧠âPizza HutâāĨ¤
- ā§§. āĻāĻĒāύāĻŋ āϝāĻāύ āĻĒāĻŋāĻā§āĻāĻž āĻ āϰā§āĻĄāĻžāϰ āĻāϰā§āύ (āĻā§ā§āĻŦāϏāĻžāĻāĻā§ āĻĸā§āĻā§āύ), āĻāĻĒāύāĻŋ āĻāĻŋāύā§āϤ⧠āĻāĻŽā§āϰāĻŋāĻāĻžāϰ āĻšā§āĻĄ āĻ āĻĢāĻŋāϏ⧠āĻ āϰā§āĻĄāĻžāϰ āĻĻā§āύ āύāĻžāĨ¤
- ⧍. āĻāĻĒāύāĻŋ āĻāĻāĻāĻŋ āĻāĻŽāύ āύāĻžāĻŽā§āĻŦāĻžāϰ⧠āĻāϞ āĻĻā§āύ (DNS Query)āĨ¤
- ā§Š. āϏā§āĻ āϏāĻŋāϏā§āĻā§āĻŽ āĻā§āĻ āĻāϰ⧠āĻāĻĒāύāĻžāϰ āĻŦāĻžāϏāĻž āĻā§āĻĨāĻžā§ (User Location)āĨ¤
- ā§Ē. āĻāϰāĻĒāϰ āϏ⧠āĻāĻĒāύāĻžāϰ āϏāĻŦāĻā§ā§ā§ āĻāĻžāĻā§āϰ āĻŦāĻžāĻĄā§āĻĄāĻžāϰ āĻŦāĻž āĻā§āϞāĻļāĻžāύā§āϰ āĻŦā§āϰāĻžāĻā§āĻ āĻĨā§āĻā§ āĻĒāĻŋāĻā§āĻāĻž āĻĒāĻžāĻ āĻžā§ (Nearest PoP)āĨ¤
CDN āĻ āĻŋāĻ āĻāĻ āĻāĻžāĻāĻāĻŋāĻ āĻāϰ⧠DNS-āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§āĨ¤
âī¸ āĻā§āĻāύāĻŋāĻā§āϝāĻžāϞ āĻĒā§āϰāϏā§āϏ (āĻāĻŋāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§?)
āϏāĻžāϧāĻžāϰāĻŖ DNS āĻŦā§āĻāĻž (Static IP āĻĻā§ā§), āĻāĻŋāύā§āϤ⧠CDN-āĻāϰ DNS āĻ āύā§āĻ āĻāĻžāϞāĻžāĻ (Smart)āĨ¤
āϝāĻāύ āĻāĻĒāύāĻŋ yourdomain.com āĻ āĻšāĻŋāĻ āĻāϰā§āύ:
- ā§§. āĻĄāĻŋāĻā§āĻāĻāĻŋāĻ āĻŽā§āĻĄ āĻ āύ: CDN-āĻāϰ DNS āϏāĻžāϰā§āĻāĻžāϰ āĻĒā§āϰāĻĨāĻŽā§ āĻāĻĒāύāĻžāϰ IP āĻ ā§āϝāĻžāĻĄā§āϰā§āϏ āĻā§āĻ āĻāϰā§āĨ¤
- ⧍. āĻšāĻŋāϏāĻžāĻŦ-āύāĻŋāĻāĻžāĻļ: āϏ⧠āύāĻŋāĻŽā§āώā§āĻ āύāĻŋāĻā§āϰ āĻŦāĻŋāώā§āĻā§āϞ⧠āĻā§āĻ āĻāϰ⧠āĻĢā§āϞā§â
- āĻāĻĒāύāĻŋ āĻā§āύ āĻĻā§āĻļā§ āĻāĻā§āύ? (Location)
- āĻāĻĒāύāĻžāϰ āĻāύā§āĻāĻžāϰāύā§āĻ āϏā§āĻĒāĻŋāĻĄ āĻā§āĻŽāύ? (Latency)
- āĻāĻĒāύāĻžāϰ āĻāĻžāĻā§āϰ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻāĻŋ āĻāĻŋā§ āĻāĻā§? (Server Load)
- āĻā§āύ āϰāĻžāϏā§āϤāĻž āĻĻāĻŋā§ā§ āĻā§āϞ⧠āĻĻā§āϰā§āϤ āϝāĻžāĻā§āĻž āϝāĻžāĻŦā§? (Route)
- ā§Š. āĻĢāĻžāĻāύāĻžāϞ āϏāĻŋāĻĻā§āϧāĻžāύā§āϤ: āϏāĻŦ āĻšāĻŋāϏāĻžāĻŦ āĻāϰ⧠āϏ⧠āĻāĻĒāύāĻžāĻā§ āĻāĻŽā§āϰāĻŋāĻāĻžāϰ āĻŽā§āĻāύ āϏāĻžāϰā§āĻāĻžāϰā§āϰ IP āύāĻž āĻĻāĻŋā§ā§, āĻĸāĻžāĻāĻž āĻŦāĻž āϏāĻŋāĻā§āĻāĻžāĻĒā§āϰā§āϰ (āĻāĻĒāύāĻžāϰ āĻāĻžāĻā§āϰ) āϏāĻžāϰā§āĻāĻžāϰā§āϰ IP āϧāϰāĻŋā§ā§ āĻĻā§ā§āĨ¤
đ āĻĢā§āϞ⧠āĻĄāĻžā§āĻžāĻā§āϰāĻžāĻŽ (Real-World Flow)
User (āĻāĻĒāύāĻŋ āĻĸāĻžāĻāĻžā§)
â
DNS Query (āϏāĻžāĻāĻ āĻā§āĻĨāĻžā§?)
â
Cloudflare DNS (āϏā§āĻŽāĻžāϰā§āĻ āĻĒā§āϞāĻŋāĻļ)
â
Cloudflare āĻĻā§āĻāϞ: "āĻāĻāĻāĻžāϰ āĻŦāĻžāĻāϞāĻžāĻĻā§āĻļ āĻĨā§āĻā§ āĻāϏā§āĻā§"
â
Cloudflare āĻā§āĻ āĻāϰāϞ: "āĻāĻŽāĻžāϰ āĻĸāĻžāĻāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰ āĻāĻŋ āĻĢā§āϰāĻŋ āĻāĻā§?"
â
Result: "āĻšā§āϝāĻžāĻ, āĻĢā§āϰāĻŋ āĻāĻā§āĨ¤"
â
Response: āĻĸāĻžāĻāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰā§āϰ IP āĻĻāĻŋāϞ (āĻāĻŽā§āϰāĻŋāĻāĻžāϰ āύā§)
â
Website Load (āϏā§āĻĒāĻžāϰ āĻĢāĻžāϏā§āĻ, āĻāĻžāϰāĻŖ āϏāĻžāϰā§āĻāĻžāϰ āĻāĻĒāύāĻžāϰ āĻĒāĻžāĻļā§āĻ)āϏāĻžāϰāĻŽāϰā§āĻŽ: CDN āĻŽā§āϞāϤ DNS-āĻā§ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻĒāύāĻžāĻā§ āĻļāϰā§āĻāĻāĻžāĻ āϰāĻžāϏā§āϤāĻž āĻĻā§āĻāĻŋā§ā§ āĻĻā§ā§āĨ¤ āĻŽā§āĻāύ āϏāĻžāϰā§āĻāĻžāϰ āĻĻā§āϰ⧠āĻĨāĻžāĻāϞā§āĻ, DNS-āĻāϰ āĻŦā§āĻĻā§āϧāĻŋāĻŽāĻžāύ āϰāĻžāĻāĻāĻŋāĻā§ā§āϰ āĻāĻžāϰāĻŖā§ āĻŽāύ⧠āĻšā§ āϏāĻžāϰā§āĻāĻžāϰ āĻāĻĒāύāĻžāϰ āĻĒāĻžāĻļā§āĻ āĻāĻā§āĨ¤
āĻāĻŽāĻžāϰ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰ āĻŦāĻž āĻŦā§āϰāĻžāĻāĻāĻžāϰ āĻŦā§āĻāϞ⧠āĻāĻŋāĻāĻžāĻŦā§ āϝ⧠āϤāĻžāĻā§ Cloudflare (1.1.1.1)-āĻāϰ āĻāĻžāĻā§āĻ āϝā§āϤ⧠āĻšāĻŦā§?
āĻāĻāĻž āĻāϏāϞ⧠āĻā§āύ⧠āĻŽā§āϝāĻžāĻāĻŋāĻ āύā§, āĻāĻāĻž āϏāĻŽā§āĻĒā§āϰā§āĻŖ āĻāĻĒāύāĻžāϰ āĻŦāĻž āĻāĻĒāύāĻžāϰ āϰāĻžāĻāĻāĻžāϰā§āϰ âāϏā§āĻāĻŋāĻāϏâ (Configuration)-āĻāϰ āĻāĻĒāϰ āύāĻŋāϰā§āĻāϰ āĻāϰā§āĨ¤
ā§§. āĻĄāĻŋāĻĢāϞā§āĻ āĻ āĻŦāϏā§āĻĨāĻž (ISP-āĻāϰ āĻāĻžāĻā§ āϝāĻžāĻā§āĻž)
āĻāĻĒāύāĻŋ āϝāĻāύ āĻāύā§āĻāĻžāϰāύā§āĻ āĻāĻžāύā§āĻāĻļāύ āύā§āύ, āϤāĻāύ āϏāĻžāϧāĻžāϰāĻŖāϤ DHCP (Dynamic Host Configuration Protocol) āύāĻžāĻŽā§āϰ āĻāĻāĻāĻŋ āϏāĻŋāϏā§āĻā§āĻŽā§ āϏāĻŦāĻāĻŋāĻā§ âAutoâ āĻāϰāĻž āĻĨāĻžāĻā§āĨ¤
- āĻāĻĒāύāĻžāϰ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰ: âāĻāĻžāĻ āϰāĻžāĻāĻāĻžāϰ, āĻāĻŽāĻŋ āĻāĻžāϰ āĻāĻžāĻā§ DNS āĻā§ā§ā§āϰāĻŋ āĻĒāĻžāĻ āĻžāĻŦā§?â
- āϰāĻžāĻāĻāĻžāϰ (ISP āĻĨā§āĻā§ āĻĒāĻžāĻā§āĻž): âāϤā§āĻŽāĻŋ āĻāĻŽāĻžāϰ āĻāĻžāĻā§āĻ āĻĒāĻžāĻ āĻžāĻ, āĻ āĻĨāĻŦāĻž ISP-āĻāϰ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻĒāĻžāĻ āĻžāĻāĨ¤â
āϤāĻžāĻ āĻĄāĻŋāĻĢāϞā§āĻ āĻ āĻŦāϏā§āĻĨāĻžā§ āĻāĻĒāύāĻžāϰ āĻā§ā§ā§āϰāĻŋ Cloudflare-āĻ āϝāĻžā§ āύāĻž, ISP-āĻāϰ āĻāĻžāĻā§ āϝāĻžā§āĨ¤
⧍. Cloudflare-āĻ āϝāĻžāĻā§āĻžāϰ āύāĻŋā§āĻŽ (Manual Setup)
DNS āĻā§ā§ā§āϰāĻŋ Cloudflare-āĻāϰ āĻāĻžāĻā§ āϤāĻāύāĻ āϝāĻžāĻŦā§, āϝāĻāύ āĻāĻĒāύāĻŋ âāĻŽā§āϝāĻžāύā§ā§āĻžāϞāĻŋâ āĻāĻĒāύāĻžāϰ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰ āĻŦāĻž āϰāĻžāĻāĻāĻžāϰ⧠āĻŦāϞ⧠āĻĻā§āĻŦā§āύāĨ¤
āĻāĻāĻž āĻĻā§āĻāĻāĻžāĻŦā§ āĻšāϤ⧠āĻĒāĻžāϰā§:
āĻ) āĻāĻĒāύāĻžāϰ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰ⧠āϏā§āĻ āĻāϰāĻž
āĻāĻĒāύāĻŋ āϝāĻāύ āĻāĻāύā§āĻĄā§āĻ āĻŦāĻž āϞāĻŋāύāĻžāĻā§āϏā§āϰ Network Settings-āĻ āĻāĻŋā§ā§ DNS āĻ
āĻĒāĻļāύ⧠1.1.1.1 āĻŦāϏāĻžāύ, āϤāĻāύ āĻāĻĒāύāĻŋ āĻŽā§āϞāϤ āĻāĻĒāύāĻžāϰ āĻ
āĻĒāĻžāϰā§āĻāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽāĻā§ (OS) āĻāĻāĻāĻŋ āĻā§āĻž āύāĻŋāϰā§āĻĻā§āĻļ āĻĻāĻŋāĻā§āĻā§āύ:
âāĻļā§āύ⧠OS, āĻŦā§āϰāĻžāĻāĻāĻžāϰ āϝāĻāύāĻ āĻā§āύ⧠āĻā§ā§āĻŦāϏāĻžāĻāĻā§āϰ āĻā§āĻāĻ āĻāϰāĻŦā§, āϤā§āĻŽāĻŋ ISP-āĻā§ āĻāĻŋāĻā§āĻā§āϏ āĻāϰāĻŦā§ āύāĻžāĨ¤ āϏā§āĻāĻž 1.1.1.1 (Cloudflare) āĻāϰ āĻāĻžāĻā§ āĻāĻŋāĻ āĻŋ āĻĒāĻžāĻ āĻžāĻŦā§āĨ¤â
āĻ) āĻāĻĒāύāĻžāϰ āĻā§āĻžāĻāĻĢāĻžāĻ āϰāĻžāĻāĻāĻžāϰ⧠āϏā§āĻ āĻāϰāĻž
āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āϰāĻžāĻāĻāĻžāϰ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ⧠1.1.1.1 āĻŦāϏāĻŋā§ā§ āĻĻā§āύ, āϤāĻŦā§ āĻāĻ āĻā§āĻžāĻāĻĢāĻžāĻ-āĻ āĻāĻžāύā§āĻā§āĻ āĻšāĻā§āĻž āĻŽā§āĻŦāĻžāĻāϞ, āϞā§āϝāĻžāĻĒāĻāĻĒ, āĻāĻŋāĻāĻŋâāϏāĻŦāĻžāĻ āĻ
āĻā§āĻŽā§āĻāĻŋāĻ Cloudflare āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻŦā§āĨ¤
đ āĻĒā§āϰāϏā§āϏāĻāĻŋ āĻāϏāϞ⧠āϝā§āĻāĻžāĻŦā§ āĻāĻā§ (The Journey)
āϧāϰā§āύ āĻāĻĒāύāĻŋ āϏā§āĻāĻŋāĻāϏ⧠1.1.1.1 āϏā§āĻ āĻāϰā§āĻā§āύāĨ¤ āĻāĻāύ āĻĢā§āϞā§-āĻāĻž āĻĻā§āĻā§āύ:
- ā§§. Browser:
google.comāĻāϰ IP āĻĻāϰāĻāĻžāϰāĨ¤ āϏ⧠OS-āĻā§ āĻŦāϞāϞāĨ¤ - ⧍. OS (āĻ
āĻĒāĻžāϰā§āĻāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽ): āϏ⧠āύāĻŋāĻā§āϰ āύā§āĻāĻā§āĻžāϰā§āĻ āϏā§āĻāĻŋāĻāϏ āĻĄāĻžā§ā§āϰāĻŋ āĻā§āĻ āĻāϰāϞāĨ¤ āĻĻā§āĻāϞ āϏā§āĻāĻžāύ⧠āϞā§āĻāĻž āĻāĻā§:
DNS Server: 1.1.1.1āĨ¤ - ā§Š. āĻĒā§āϝāĻžāĻā§āĻ āϤā§āϰāĻŋ: OS āĻāĻāĻāĻŋ āĻāĻžāĻŽ (Data Packet) āĻŦāĻžāύāĻžāϞāĨ¤ āĻāĻžāĻŽā§āϰ āĻāĻĒāϰ⧠āĻĒā§āϰāĻžāĻĒāĻā§āϰ āĻ āĻŋāĻāĻžāύāĻž āϞāĻŋāĻāϞ:
To: 1.1.1.1āĨ¤ - ā§Ē. ISP-āĻāϰ āĻā§āĻŽāĻŋāĻāĻž (āĻĄāĻžāĻāĻĒāĻŋāϝāĻŧāύ): āĻāĻ āĻĒā§āϝāĻžāĻā§āĻāĻāĻŋ āϤāĻžāϰ āĻŦāĻž āĻā§āĻŦāϞ āĻĻāĻŋā§ā§ āĻāĻĒāύāĻžāϰ ISP-āĻāϰ āĻāĻžāĻā§ āĻā§āϞāĨ¤
- ā§Ģ. ISP-āĻāϰ āϰāĻžāĻāĻāĻžāϰ: ISP āĻāĻžāĻŽā§āϰ āĻāĻĒāϰ āĻĻā§āĻāϞ āĻ āĻŋāĻāĻžāύāĻž
1.1.1.1āĨ¤ ISP āĻŦā§āĻāϞ āĻāĻāĻž āϤāĻžāϰ āύāĻŋāĻā§āϰ āĻāĻŋāĻ āĻŋ āύāĻžāĨ¤ āϏ⧠āϤāĻāύ āĻāύā§āĻāĻžāϰāύā§āĻā§āϰ āϰāĻžāϏā§āϤāĻž āĻĻāĻŋā§ā§ āĻāĻŋāĻ āĻŋāĻāĻž Cloudflare-āĻāϰ āĻĻāĻŋāĻā§ āĻ ā§āϞ⧠āĻĻāĻŋāϞāĨ¤
đ āϏāĻšāĻ āϏāĻžāϰāĻžāĻāĻļ
āĻĒā§āϰāĻļā§āύ: âDNS āĻĨā§āĻā§ Cloudflare-āĻ āĻāĻŋāĻāĻžāĻŦā§ āϝāĻžā§?â
āĻāϤā§āϤāϰ: āĻāĻāĻŋ āĻ āĻā§āĻŽā§āĻāĻŋāĻ āϝāĻžā§ āύāĻžāĨ¤ āĻāĻĒāύāĻžāϰ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰ āĻāĻāĻāĻŋ âāĻ āĻŋāĻāĻžāύāĻžāϰ āĻŦāĻâ (Network Settings) āĻŽā§āĻāύāĻā§āĻāύ āĻāϰā§āĨ¤
- āϝāĻĻāĻŋ āϏā§āĻāĻžāύ⧠ISP-āĻāϰ āĻ āĻŋāĻāĻžāύāĻž āĻĨāĻžāĻā§ â āĻā§ā§ā§āϰāĻŋ ISP-āĻāϰ āĻāĻžāĻā§ āϝāĻžā§āĨ¤
- āϝāĻĻāĻŋ āϏā§āĻāĻžāύ⧠Cloudflare-āĻāϰ āĻ āĻŋāĻāĻžāύāĻž (
1.1.1.1) āϞāĻŋāĻā§ āĻĻā§āύ â āĻā§ā§ā§āϰāĻŋ Cloudflare-āĻāϰ āĻāĻžāĻā§ āϝāĻžā§āĨ¤
āĻ āϰā§āĻĨāĻžā§, âāĻāύā§āϤāĻŦā§āϝâ āĻāĻĒāύāĻŋ āĻāĻā§āĻ āϏā§āĻāĻŋāĻāϏ⧠āĻ āĻŋāĻ āĻāϰ⧠āϰā§āĻā§āĻā§āύ āĻŦāϞā§āĻ āϰāĻŋāĻā§ā§ā§āϏā§āĻāĻāĻŋ āϏā§āĻāĻžāύ⧠āĻĒā§āĻāĻā§āĻā§āĨ¤
âāϏāĻŦ āϰāĻŋāĻā§ā§ā§āϏā§āĻ āϝāĻĻāĻŋ āĻāĻŽāĻžāϰ āϞā§āĻāĻžāϞ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰ āĻĨā§āĻā§āĻ āϝāĻžā§, āϤāĻžāĻšāϞ⧠āĻāĻŋāĻā§āĻĻāĻŋāύ āĻāĻā§ Cloudflare āĻĄāĻžāĻāύ āĻĨāĻžāĻāĻžāϰ āĻāĻžāϰāĻŖā§ āĻ
āϧāĻŋāĻāĻžāĻāĻļ āĻā§ā§āĻŦāϏāĻžāĻāĻ āĻŦāύā§āϧ āĻāĻŋāϞ āĻā§āύ? āϤāĻžāϰ āĻŽāĻžāύ⧠āĻāĻŋ āĻāĻŽāĻŋ āϝāĻĻāĻŋ āĻāĻŽāĻžāϰ āϞā§āĻāĻžāϞ āĻĒāĻŋāϏāĻŋāϰ DNS āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāϰāĻŋ, āϤāĻžāĻšāϞā§āĻ āĻāĻŋ āĻāĻ āϏāĻŽāϏā§āϝāĻžāϰ āϏāĻŽāĻžāϧāĻžāύ āĻšā§ā§ āϝāĻžāĻŦā§? āϤāĻžāĻāĻžā§āĻž āϞā§āĻāĻžāϞ āĻĒāĻŋāϏāĻŋ āĻāĻžā§āĻž āĻ
āύā§āϝ āĻā§āĻŽā§āĻĒāĻžāύāĻŋāĻā§āϞ⧠Cloudflare-āĻā§ āĻāϰ āĻā§āĻāĻžāĻŦā§ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§?â
āϏāĻšāĻ āĻāϤā§āϤāϰ āĻšāϞā§: āύāĻž, āϞā§āĻāĻžāϞ āĻĒāĻŋāϏāĻŋāϰ DNS āĻā§āĻā§āĻ āĻāϰāϞā§āĻ āϏāĻŦ āϏāĻŽāϏā§āϝāĻžāϰ āϏāĻŽāĻžāϧāĻžāύ āĻšāĻŦā§ āύāĻžāĨ¤
āĻā§āύ āĻšāĻŦā§ āύāĻž, āϏā§āĻāĻž āĻŦā§āĻāĻžāϰ āĻāύā§āϝ āĻāĻŽāĻžāĻĻā§āϰ āĻāĻžāύāϤ⧠āĻšāĻŦā§ Cloudflare āĻāϏāϞ⧠āĻĻā§āĻ āϧāϰāύā§āϰ āϏāĻžāϰā§āĻāĻŋāϏ āĻĻā§ā§āĨ¤ āĻāĻĒāύāĻžāϰ āĻāύāĻĢāĻŋāĻāĻļāύ āĻĻā§āϰ āĻāϰāĻžāϰ āĻāύā§āϝ āĻāĻŽāĻŋ āĻŦāĻŋāώā§āĻāĻŋāĻā§ āĻĻā§āĻ āĻāĻžāĻā§ āĻāĻžāĻ āĻāϰāĻāĻŋāĨ¤
ā§§. āĻāĻĒāύāĻžāϰ āĻĻāĻŋāĻ (User Side) - Recursive DNS
āĻāĻāĻŋ āĻšāϞ⧠1.1.1.1 āϝāĻž āĻāĻĒāύāĻŋ āĻāĻĒāύāĻžāϰ āĻĒāĻŋāϏāĻŋāϤ⧠āϏā§āĻ āĻāϰā§āύāĨ¤
- āĻāĻžāĻ: āĻāĻāĻŋ āĻļā§āϧ⧠āĻāĻāĻāĻŋ āĻĢā§āύāĻŦā§āĻ āĻŦāĻž āĻĄāĻŋāϰā§āĻā§āĻāϰāĻŋ āĻšāĻŋāϏā§āĻŦā§ āĻāĻžāĻ āĻāϰā§āĨ¤ āĻā§ā§āĻŦāϏāĻžāĻāĻā§āϰ IP āĻā§āĻāĻā§ āĻĻā§ā§āĨ¤
- āϏāĻŽāϏā§āϝāĻž: āϝāĻĻāĻŋ āĻļā§āϧ⧠āĻāĻ āϏāĻžāϰā§āĻāĻŋāϏāĻāĻŋ āĻĄāĻžāĻāύ āĻĨāĻžāĻā§, āϤāĻŦā§ āĻāĻĒāύāĻŋ āĻĒāĻŋāϏāĻŋāϰ DNS āĻā§āĻā§āĻ āĻāϰ⧠Google (8.8.8.8) āĻĻāĻŋāϞā§āĻ āĻāύā§āĻāĻžāϰāύā§āĻ āĻ āĻŋāĻ āĻšā§ā§ āϝāĻžāĻŦā§āĨ¤
⧍. āĻā§ā§āĻŦāϏāĻžāĻāĻā§āϰ āĻŽāĻžāϞāĻŋāĻā§āϰ āĻĻāĻŋāĻ (Server Side) - CDN & Authoritative DNS
āĻŦāĻŋāĻļā§āĻŦā§āϰ āĻŦā§ āĻŦā§ āĻā§āĻŽā§āĻĒāĻžāύāĻŋ (āϝā§āĻŽāύ Discord, Udemy, Shopify, Medium) āϤāĻžāĻĻā§āϰ āĻā§ā§āĻŦāϏāĻžāĻāĻ āϰāĻā§āώāĻž āĻāϰāĻžāϰ āĻāύā§āϝ Cloudflare āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āĨ¤ āĻāĻā§ āĻŦāϞāĻž āĻšā§ Reverse Proxy āĻŦāĻž CDNāĨ¤
- āĻāĻžāĻ: āĻāĻāĻžāύ⧠Cloudflare āĻā§ā§āĻŦāϏāĻžāĻāĻā§āϰ âāĻĻāĻžāϰā§āϝāĻŧāĻžāύâ āĻŦāĻž âāĻŦāĻĄāĻŋāĻāĻžāϰā§āĻĄâ āĻšāĻŋāϏā§āĻŦā§ āĻāĻžāĻ āĻāϰā§āĨ¤
- āĻŦāĻžāϏā§āϤāĻŦāϤāĻž: āĻāĻĒāύāĻŋ āϝāĻāύ
udemy.comāĻ āĻĸā§āĻā§āύ, āĻāĻĒāύāĻŋ āĻāϏāϞ⧠Udemy-āϰ āĻāϏāϞ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻĸā§āĻā§āύ āύāĻžāĨ¤ āĻāĻĒāύāĻŋ Cloudflare-āĻāϰ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻĸā§āĻā§āύ, āϤāĻžāϰāĻĒāϰ Cloudflare āĻāĻĒāύāĻžāĻā§ Udemy-āϰ āĻĄāĻžāĻāĻž āĻĻā§āĻāĻžā§āĨ¤
đ¨ āϏā§āĻĻāĻŋāύ āĻāϏāϞ⧠āĻā§ āĻāĻā§āĻāĻŋāϞ? (āĻā§āύ āϏāĻžāĻāĻ āĻĄāĻžāĻāύ āĻāĻŋāϞ?)
āϏā§āĻĻāĻŋāύ Cloudflare-āĻāϰ āĻŦāĻĄāĻŋāĻāĻžāϰā§āĻĄ āϏāĻžāϰā§āĻāĻŋāϏ (CDN/Proxy) āĻĄāĻžāĻāύ āĻāĻŋāϞāĨ¤
āĻĻā§āĻļā§āϝāĻĒāĻ:
- ā§§. āĻāĻĒāύāĻŋ āĻĒāĻŋāϏāĻŋāϤ⧠Google DNS (8.8.8.8) āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻā§āύ (Cloudflare āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻā§āύ āύāĻž)āĨ¤
- ⧍. āĻāĻĒāύāĻŋ
discord.comāĻ āϝā§āϤ⧠āĻāĻžāĻāϞā§āύāĨ¤ - ā§Š. Google DNS āĻāĻĒāύāĻžāĻā§
discord.comāĻāϰ IP āĻā§āĻāĻā§ āĻĻāĻŋāϞāĨ¤ - ā§Ē. āĻāĻŋāύā§āϤā§
discord.comāĻāϰ āϏā§āĻ IP āĻāĻŋ āĻāϏāϞ⧠Cloudflare āĻāϰ IP (āĻāĻžāϰāĻŖ Discord āĻā§āϞāĻžāĻāĻĄāĻĢā§āϞā§ā§āĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§)āĨ¤ - ā§Ģ. āϝāĻāύāĻ āĻāĻĒāύāĻŋ āϏā§āĻ IP-āϤ⧠āĻāĻžāύā§āĻā§āĻ āĻāϰāϤ⧠āĻā§āϞā§āύ, āĻĻā§āĻāϞā§āύ āϏā§āĻāĻžāύ⧠āĻāĻā§āύ āĻā§āĻŦāϞāĻā§ (Server Down)āĨ¤
āĻĢāϞāĻžāĻĢāϞ: āĻāĻĒāύāĻžāϰ āĻĒāĻŋāϏāĻŋāϰ DNS āĻ āĻŋāĻ āĻĨāĻžāĻāϞā§āĻ, āĻāύā§āϤāĻŦā§āϝāϏā§āĻĨāϞ (Destination) āύāĻŋāĻā§āĻ āύāώā§āĻ āĻšā§ā§ āĻāĻā§āĨ¤ āϤāĻžāĻ āĻāĻĒāύāĻŋ āϏāĻžāĻāĻā§ āĻĸā§āĻāϤ⧠āĻĒāĻžāϰāĻā§āύ āύāĻžāĨ¤
đ āϏāĻšāĻ āĻāĻĻāĻžāĻšāϰāĻŖ: āĻā§āϰāĻŋā§āĻžāϰ āϏāĻžāϰā§āĻāĻŋāϏ
āϧāϰā§āύ Cloudflare āĻšāϞ⧠âāϏā§āύā§āĻĻāϰāĻŦāύ āĻā§āϰāĻŋā§āĻžāϰ āϏāĻžāϰā§āĻāĻŋāϏâāĨ¤
Scenario 1 (āĻāĻĒāύāĻžāϰ āĻĒāĻŋāϏāĻŋ): āĻāĻĒāύāĻŋ āϏā§āύā§āĻĻāϰāĻŦāύ āĻā§āϰāĻŋā§āĻžāϰā§āϰ āĻ āĻĢāĻŋāϏ⧠āĻāĻŋā§ā§ āĻŦāϞāϞā§āύ, âāĻ āĻŽā§āĻā§āϰ āĻŦāĻžā§āĻŋ āĻā§āĻĨāĻžā§?â (DNS Lookup)āĨ¤
- āϝāĻĻāĻŋ āϏā§āύā§āĻĻāϰāĻŦāύā§āϰ āĻ āĻĢāĻŋāϏ āĻŦāύā§āϧ āĻĨāĻžāĻā§, āĻāĻĒāύāĻŋ āĻāϏ.āĻ āĻĒāϰāĻŋāĻŦāĻšāύ (Google DNS) āĻāϰ āĻāĻžāĻā§ āĻāĻŋā§ā§ āĻ āĻŋāĻāĻžāύāĻž āĻā§āύ⧠āύāĻŋāϤ⧠āĻĒāĻžāϰāĻŦā§āύāĨ¤ āϏāĻŽāϏā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύāĨ¤
Scenario 2 (āĻā§ā§āĻŦāϏāĻžāĻāĻ āĻā§āĻŽā§āĻĒāĻžāύāĻŋ): āĻĻāĻžāϰāĻžāĻ āĻŦāĻž āĻāĻŽāĻžāĻāύ āϤāĻžāĻĻā§āϰ āϏāĻŦ āĻĒāĻžāϰā§āϏā§āϞ āĻļā§āϧā§āĻŽāĻžāϤā§āϰ āϏā§āύā§āĻĻāϰāĻŦāύ āĻā§āϰāĻŋā§āĻžāϰ āĻĻāĻŋā§ā§āĻ āĻĒāĻžāĻ āĻžā§āĨ¤
- āĻāĻāύ āϝāĻĻāĻŋ āϏā§āύā§āĻĻāϰāĻŦāύā§āϰ āĻā§āϰāĻžāĻ āύāώā§āĻ (CDN Down) āĻšā§ā§ āϝāĻžā§, āĻāĻĒāύāĻŋ āĻāϏ.āĻ āĻĒāϰāĻŋāĻŦāĻšāύā§āϰ āĻāĻžāĻā§ āĻāĻŋā§ā§ āĻ āĻŋāĻāĻžāύāĻž āĻāĻžāύāϞā§āĻ āϞāĻžāĻ āύā§āĻāĨ¤ āĻāĻžāϰāĻŖ āĻĒāĻžāϰā§āϏā§āϞ āϤ⧠āϏā§āύā§āĻĻāϰāĻŦāύā§āϰ āĻā§āϰāĻžāĻā§ āĻāĻāĻāĻž āĻĒā§ā§ āĻāĻā§āĨ¤
- āϤāĻāύ āĻāĻĒāύāĻŋ āĻŦāĻž āĻĻāĻžāϰāĻžāĻâāĻā§āĻāĻ āĻāĻŋāĻā§ āĻāϰāϤ⧠āĻĒāĻžāϰāĻŦā§āύ āύāĻž āϝāϤāĻā§āώāĻŖ āύāĻž āϏā§āύā§āĻĻāϰāĻŦāύ āĻā§āϰāĻŋā§āĻžāϰ āĻ āĻŋāĻ āĻšā§āĨ¤
đĸ āĻā§āĻŽā§āĻĒāĻžāύāĻŋāϰāĻž Cloudflare āĻāĻžā§āĻž āĻā§āĻāĻžāĻŦā§ āĻāϞā§?
āĻāĻĒāύāĻžāϰ āĻĒā§āϰāĻļā§āύā§āϰ āĻļā§āώ āĻ āĻāĻļ: âLocally call āĻāĻžā§āĻžāĻ different company cloud fare use kore āĻāĻŋāĻāĻžāĻŦā§â
āĻā§āĻŽā§āĻĒāĻžāύāĻŋāϰāĻž āĻŽā§āϞāϤ ā§ŠāĻāĻŋ āĻāĻžāϰāĻŖā§ Cloudflare āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§, āϝāĻž āϞā§āĻāĻžāϞ āĻāϞā§āϰ āϏāĻžāĻĨā§ āϏāĻŽā§āĻĒāϰā§āĻāĻŋāϤ āύā§:
- ā§§. Security (WAF/DDoS Protection): āĻšā§āϝāĻžāĻāĻžāϰāϰāĻž āϝāĻžāϤ⧠āĻŽā§āĻāύ āϏāĻžāϰā§āĻāĻžāϰ āĻā§āϰā§āϝāĻžāĻļ āĻāϰāĻžāϤ⧠āύāĻž āĻĒāĻžāϰā§, āϤāĻžāĻ āϤāĻžāϰāĻž āĻā§āϰāĻžāĻĢāĻŋāĻ āĻāĻā§ Cloudflare-āĻ āĻĒāĻžāĻ āĻžā§āĨ¤ Cloudflare āĻĢāĻŋāϞā§āĻāĻžāϰ āĻāϰ⧠āĻāĻžāϞ⧠āĻāĻāĻāĻžāϰāĻĻā§āϰ āĻŽā§āĻāύ āϏāĻžāϰā§āĻāĻžāϰ⧠āĻĒāĻžāĻ āĻžā§āĨ¤
- ⧍. CDN (Speed): āĻāĻŽā§āϰāĻŋāĻāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰā§āϰ āĻĄāĻžāĻāĻž āĻŦāĻžāĻāϞāĻžāĻĻā§āĻļā§ āĻŦāϏ⧠āĻĢāĻžāϏā§āĻ āĻĒāĻžāĻā§āĻžāϰ āĻāύā§āϝ Cloudflare-āĻāϰ āĻĸāĻžāĻāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āĻšā§āĨ¤
- ā§Š. Free SSL: āĻā§ā§āĻŦāϏāĻžāĻāĻā§āϰ āύāĻžāĻŽā§āϰ āĻĒāĻžāĻļā§ āϝ⧠āϤāĻžāϞāĻž (Lock Icon) āĻĨāĻžāĻā§, āϏā§āĻāĻž Cloudflare āĻĢā§āϰāĻŋāϤ⧠āĻĻā§ā§āĨ¤
đ āϏāĻžāϰāĻŽāϰā§āĻŽ
- āϝāĻĻāĻŋ Cloudflare-āĻāϰ 1.1.1.1 (DNS) āύāώā§āĻ āĻšā§ â āĻāĻĒāύāĻŋ Google DNS (8.8.8.8) āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϞ⧠āĻāύā§āĻāĻžāϰāύā§āĻ āĻāϞāĻŦā§āĨ¤
- āϝāĻĻāĻŋ Cloudflare-āĻāϰ CDN/Server āύāώā§āĻ āĻšā§ â āĻāĻĒāύāĻŋ āϝā§āĻ DNS-āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύ āύāĻž āĻā§āύ, āϝā§āϏāĻŦ āϏāĻžāĻāĻ Cloudflare āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§, āϏā§āĻā§āϞ⧠āĻāϞāĻŦā§ āύāĻžāĨ¤
āϏā§āĻĻāĻŋāύ CDN āĻĄāĻžāĻāύ āĻāĻŋāϞ, āϤāĻžāĻ āĻŦāĻŋāĻļā§āĻŦā§āϰ āĻ āϰā§āϧā§āĻ āĻāύā§āĻāĻžāϰāύā§āĻ āĻ āĻāϞ āĻšā§ā§ āĻĒā§ā§āĻāĻŋāϞāĨ¤
â INTERVIEW QUESTIONS
- DNS Load Balancing āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§?
- Anycast āĻā§āύ faster?
- Round Robin āĻāϰ limitations āĻā§?
- GeoDNS āĻāĻāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āĻāĻāĻŋāϤ?
- DNS Failover āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§?
- Authoritative DNS āĻāĻŦāĻ Resolver āĻāϰ āĻĒāĻžāϰā§āĻĨāĻā§āϝ?
- CDN āĻā§āĻāĻžāĻŦā§ DNS āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§?
- What is CNAME flattening?
- Cloudflare āĻā§āĻāĻžāĻŦā§ Anycast use āĻāϰā§?
- TTL āĻāĻŽ āĻĻāĻŋāϞ⧠āϏāĻŽāϏā§āϝāĻž āĻā§?
- Multi-region HA āĻā§āĻāĻžāĻŦā§ achieve āĻāϰāĻŦā§?
- CDN PoP āĻā§?
- OCSP Stapling āĻā§?
- HSTS āĻā§?
- DNS latency āĻāĻŽāĻžāύā§āϰ āĻāĻĒāĻžā§?
- Why is Anycast better for DDoS protection?