Content Delivery Networks (CDNs) ááᯠstatic element áá»á¬ážáááºááŒááºážááᯠá¡ááŸáááºááŒáŸáá·áºáááºá¡ááœáẠá¡áááá¡á¬ážááŒáá·áº áááºááá¯ááºáá»á¬ážááŸáá·áº á¡ááá®áá±ážááŸááºážáá»á¬ážááœáẠá¡áá¯á¶ážááŒá¯áá«áááºá ááœá²ááŒá¬ážáá±á¬ áááá®áááºáá±ááá»á¬ážááŸá CDN áá¬áá¬áá»á¬ážáá±á«áºááœáẠááá¯ááºáá»á¬ážááᯠááááºážáááºážáá¬ážááŒááºážááŒá±á¬áá·áº ááŒá áºáá±á«áºáá¬ááŒááºážááŒá áºáááºá CDN ááŸáá áºááá·áº áá±áá¬áá±á¬ááºážáá¶ááŒááºážááŒáá·áº áá¯á¶ážá áœá²áá°ááẠáááºážááᯠá¡áá®ážáá¯á¶ážáá¬áá¬á០áááºáá¶áááŸááááºááŒá áºáááºá
á¡ááŒá±á¬ááºážá¡áá¬áá±ážááá¯á·ááŒááºážááœááºáááºá¡á¬ážáá¯á¶ážá áá¯ááºáá±á¬ááºáá»ááºááŸáá·áº áá¯ááºáá±á¬ááºááá¯ááºá áœááºážááẠááá·áºááŸááºážááŒá±á¡á¬ážááŒáá·áº áá°áá®áá«áááºá ááá¯ááºáá áºáá¯ááᯠáá±á«ááºážáá¯ááºáá¯ááºááẠáá±á¬ááºážááá¯áá»ááºáá áºáá¯ááᯠáááºáá¶áááŸáááŒá®ážáá±á¬áẠCDN áá¬áá¬ááẠáááºážá¡á¬áž áá°áááºážáá¬áá¬á០áá áºááŒáááºáá°á áááºááŸááºáá¬ááá áºáá¯á¡ááœááºáž áááºážááᯠááááºážáááºážáá¬ážááŒá®áž áá áºáá»áááºáááºážááœáẠáááºážááᯠáá¯á¶ážá áœá²áá°á¡á¬áž áá±ážáá±á¬ááºáááºá áá±á¬ááºáááºááœá²áá±á¬ááºážááá¯ááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááᯠáááºááŸáºá០á¡ááŒá±áá±ážáá«áááºá CDN áá»á¬ážá¡á¬ážáá¯á¶ážááœáẠááá¯ááºáá»á¬ážááá¯ááŒáá¯áááºáááºáááºá áááºááŸáºááá¯ááŸááºážáááºážáááºá áááºáááºážáá¯ááºáá¯á¶ážáááºááᯠáááºááŸááºáááºááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬ážá¡ááœáẠááœá±ážáá»ááºá áá¬áá»á¬ážááŸááááºá
á¡ááŒá±á¬ááºážáááºážáá áºáᯠááá¯á·ááá¯áẠá¡ááŒá¬ážáá áºáá¯ááŒá±á¬áá·áº áááºááẠáááºáááá¯ááºááá¯ááºá¡ááŒá±á¬ááºážá¡áá¬áá±ážááá¯á·ááŒááºážááœááºáááºááᯠá á¯á ááºážáááºááá¯á¡ááºááŒá®áž áá±á¬ááºá ááºáá®ážáááºáááºááŒááºážááá¯ááºáᬠáááºážááœáŸááºáá»ááºáá»á¬ážááᯠáá»áœááºá¯ááºááá¯á·á¡ááœáẠá¡áá±á¬ááºá¡áá°ááŒá áºáá«á á±á
source:
ááá·áºááá¯ááºááá¯áẠCDN ááá¯á¡ááºááá·áºá¡áá«
ááá·áºááá¯ááºááá¯áẠCDN áá¯ááºáá±á¬ááºááŒááºážááẠá¡áááá¹áá¬ááºááŸáá á±ááá·áº ááá á¹á áá»á¬ážááᯠáá¯á¶ážáááºááŒáá·áºáá«-
- ááœá±áá»áœá±áá¬ááá¯áá±á¬ááá¹áááŸááá±á¬á¡áá«á á
á»á±ážáááŒá®ážáá±á¬ CDNs áá»á¬ážááá¯á¡áá¯á¶ážááŒá¯ááá·áºááá¯áẠáá¯ááºáá»á
ááááºáá»á¬ážáááºá
BunnyCDN áá áºááá»áŸáẠáá±á«áºáᬠáá¬ááááºážá¡áá ááŸááááºá - áá¬áá¬ááŸáá·áº áá»ááºáááºá¡áááºáá®ážáá¬ážáá»ááºážáá»á¬ážááá«áá² á¡ááŒá²áááºáž cache ááá¯á·ááá¯áẠcache áá áºáá¯ááᯠááá°ááá¯áá«á
- CDN áááºáá±á¬ááºááŸá¯áá»á¬ážááẠáááºááá¯á¡ááºáá±á¬ áá±áááœáẠááŸááá±ááá·áºáá±áá¬áá»á¬áž áááŸááá«á
- á¡áá°ážá¡ááŒá±á¬ááºážá¡áá¬áá±ážááá¯á·ááŒááºáž áááºáááºáá»á¬áž ááá¯á¡ááºáááºá
- áá¯ááºáá¯ááºááŸá¯áá¬áá¬ááᯠá¡áá¯á¶ážááŒá¯áá°áá»á¬ážááŸáá·áº ááá¯ááá¯áá®ážáááºá áœá¬áá¬ážááŸáááŒááºážááŒáá·áº áááºááŒáœáá±á¬á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážáá±ážááá¯á·ááŸá¯ááᯠá¡ááŸáááºááŒáŸáá·áºááá¯áá«áááºá
- ááŒááºáá¡ááœá²á·á¡á ááºáž CDN ââáááºáá±á¬ááºááŸá¯ááẠá¡áá¯á¶ážááŒá¯áá°á¡ááŒá¯á¡áá°ááá¯ááºáᬠá¡áá»ááºá¡áááºáá»á¬ážááᯠááá¬ážááááºá á¯áá±á¬ááºážááŒááºáž ááá¯á·ááá¯áẠá¡áá¯á¶ážááŒá¯ááŒááºáž (áááºááá¯-GDPR ááá¯ááºáá®ááŸá¯áááŸááá±á¬ áááºáá±á¬ááºááŸá¯áá»á¬áž) ááá¯á·ááá¯áẠá¡ááŒá¬ážááá¬ážááááºáá¯ááºáá±á¬ááºááŸá¯áá»á¬ážááœáẠáá«áááºááŒááºážá¡ááœáẠá áá¯ážááááºá áá¬ááŸááá«áááºá
á¡ááŒá¬ážááá á¹á áá»á¬ážááœááºá ááŸáááŒá®ážáá¬áž á¡áááºááá·áºáá¯ááºáá¬ážáá±á¬ ááŒá±ááŸááºážáá»ááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááẠááá¯áááá·áºáá»á±á¬áºáá«áááºá
áááºáá¬ááá¯á áááºáááºááá¯á¡ááºááááºážá
ááá·áºááœáẠááá¯ááºááá¯ááºá¡á¯ááºáá»á¯ááºááœáá·áºáá
áá
Ạ(AS) ááŸááá»áŸáẠá¡á¶á·ááŒá
áá¬áá±á¬ááºážáá«áááºá áááºážááŸáá·áºá¡áá°á áááºáááºáá°áá®áá±á¬ IP ááá¯áá¬áá¬áá»á¬ážá
áœá¬ááŸáá·áºáááºááŸááºááá¯ááºáááºá
á¡áááºá áááºááẠIP ááááºá á¬áá»á¬ážááááºááá¯á·ááŒááºážááᯠáá»á±á¬áºááœáŸááºá áœá¬ááá¯ááºááá¯ááºáá°ááá¯ááºáá«áá ááá¯ážááŸááºážáá±á¬ CDN ááᯠrun ááẠáááºááá¯á¡ááºáááá·áºáááº-
- ááá¯ááááºážá¡ááẠááá¯á·ááá¯áẠááá¯ááááºážááœá²
- ááá°áá®áá±á¬ áá±ááá»á¬ážááœáẠá¡áááºážáá¯á¶áž áá¬áá¬ááŸá áºáá¯á áá¬áá¬ááẠáá®ážááá·áºááŒá áºá á± ááá¯á·ááá¯áẠá¡áá¯ááŒá áºá á±ááá¯ááºáááºá
- geoDNS áááááá¬á áááºážááŸáá·áºá¡áá°á á¡áá¯á¶ážááŒá¯áá°ááẠááá¯ááááºážááᯠááááºáá°ááŒá®ážáá«á á¡áá®ážáá¯á¶ážáá¬áá¬ááá¯á· ááœáŸááºááŒá¬ážáááºááŒá áºáááºá
ááá¯ááááºážáá áºáá¯ááᯠááŸááºáá¯á¶áááºááŒá®áž áá¬áá¬áá»á¬ážááᯠááŸá¬áá°áá«á
ááá¯ááááºážááŸááºáá¯á¶áááºááŒááºážááŒáá·áº á¡áá¬á¡á¬ážáá¯á¶ážááẠááá¯ážááŸááºážááẠ- áá»áœááºá¯ááºááá¯á·ááẠáááºááá·áºáá¯ááºááœááºáááᯠááŸááºáá¯á¶áááºá¡áá¬ááŸáááŸáá·áº ááŸááºáá¯á¶áááºáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áº CDN áá áºáá¯á¡ááœáẠsubdomain áá áºáá¯ááá¯áááºáž áá¯á¶ážááá¯ááºáááºá cdn.domainname.com. ááááºáá±á¬á·á áá«ááá¯á·áá²á·á¥ááá¬ááŸá¬á áá«ááá¯á·áá®ááá¯áá¯ááºáááºá
áá¬áá¬áá»á¬ážááᯠááŸá¬áá°ááŒááºážá¡ááœáẠáááºážááá¯á·ááᯠááá·áºá¡áá¯á¶ážááŒá¯áá° ááááááºáááºááŸááᬠáá±ááá»á¬ážááŸáá·áº ááá¯ááºáá¶áá»á¬ážááœáẠááŸá¬ážáááºážááá·áºáá«áááºá ááá±á¬áá»ááºááẠááá¯ááºááŒá®ážááá¯ááºáááºááŒá
áºáá±áá«áá ááá¹áá¬áá
áºááŸááºážááŸá áá¬áá¬áá»á¬ážááᯠáá
áºááŒáááºáááºážáá±ážáá±á¬ááºááá·áº hosting áááºáá±á¬ááºááŸá¯áá±ážáá°áá»á¬ážááᯠááœá±ážáá»ááºááẠá¡áááºááŒá±áááºá á¥ááá¬áá»á¬áž-
áá»áœááºá¯ááºááá¯á·á áá®ážááá·áº CDN á¡ááœááºá ááá°áá®áá±á¬ ááá¯ááºááŒá®ážáá»á¬ážááŸá virtual server 3 áá¯ááᯠááŸá¬áá°áá«áááºá ááŸá¬ Vultr server áá±á«áºááŸá¬ $5/á áá«ááá¯á·ááááá·áºáááºá 25GB SSD ááᯠáá±áá¬áá»á¬ážááŸáá·áº 1TB áááºážááŒá±á¬ááºáž. ááá·áºááœááºážááá·áºá¡áá«á áá±á¬ááºáá¯á¶ážááœáẠDebian ááá¯ááœá±ážáá»ááºáá«á áá»áœááºá¯ááºááá¯á·ááá¬áá¬áá»á¬áž-
Frankfurt, ip: 199.247.18.199
áá»á®áá¬ááá¯, ip: 149.28.121.123
СОМгапÑÑ, ip: 157.230.240.216
*Vultr ááŸáá·áº DigitalOcean ááẠááœá±áá±ážáá»á±ááŸá¯áááºážáááºážááᯠááá·áºááœááºážááŒá®ážáá±á¬áẠáá±á¬ááºážáá«ážááŸáááá·áºááºáá»á¬ážááŸáá áºááá·áº á á¬áááºážááœááºážáá±á¬ áá¯á¶ážá áœá²áá°áá»á¬ážá¡á¬áž $100 ááááºáá áºáá±ážáááºáᯠáááááŒá¯áá«áááºá á á¬áá±ážáá°ááẠá€á¡áá»ááºá០áá»á®ážááœááºážááŸá¯ áá±ážáá±ážáá±ážááá¯áááºáž áááŸááá²á·ááŒá®áž ááᯠáá°á·á¡ááœáẠá¡ááœááºá¡áá±ážááŒá®ážáá«áááºá áá»á±ážáá°ážááŒá¯á áá¬ážáááºáá±ážáá«á
GeoDNS ááᯠá áá áºááá·áºááœááºážááŒááºážá
ááá¯ááááºáž ááá¯á·ááá¯áẠCDN ááœá²ááá¯ááááºážááᯠáááºáá±á¬ááºááá·áºá¡áá« á¡áá¯á¶ážááŒá¯áá°ááᯠá¡ááá¯ááŸááá±á¬ (á¡áá®ážá ááºáá¯á¶áž) áá¬áá¬ááá¯á· ááœáŸááºááŒá¬ážááá¯ááºáááºá áá»áœááºá¯ááºááá¯á·ááẠgeoDNS áá¯ááºáá±á¬ááºáá»ááºáá«ááŸááá±á¬ DNS áá¬áá¬áá áºáᯠááá¯á¡ááºáá«áááºá
geoDNS á áááá¬áááŸáá·áº áá¯ááºáá±á¬ááºáá»ááºááŸá¬ á¡á±á¬ááºáá«á¡ááá¯ááºážááŒá áºáááºá
- DNS áá±á¬ááºážááá¯ááŸá¯ááᯠáá±ážááá¯á·áá±á¬ áááá¯ááºážááá·áºá IP ááá¯á·ááá¯áẠáááá¯ááºážááá·áºáá±á¬ááºážááá¯ááŸá¯á¡á¬áž áá¯ááºáá±á¬ááºáá¬ááœáẠá¡áá¯á¶ážááŒá¯ááá·áº áááºáá°áááºáá»áŸáá±á¬ DNS áá¬áá¬á IP ááᯠââáááºááŸááºáááºá ááá¯ááá¯á·áá±á¬ recursive áá¬áá¬áá»á¬ážááẠáá»á¬ážáá±á¬á¡á¬ážááŒáá·áº áááºáá±á¬ááºááŸá¯áá±ážáá°áá»á¬ážá DNS áá»á¬ážááŒá áºáááºá
- áá¯á¶ážá
áœá²áá°á IP ááẠáááºážáááá¯ááºáᶠááá¯á·ááá¯áẠáá±áááᯠá¡ááá¡ááŸááºááŒá¯áááºá áááºážá¡ááœáẠGeoIP áá±áá¬áá±á·á
áºáá»á¬ážááᯠááá±á·áá±ááºáá»á¬ážá
áœá¬ááŸááá±ááŒá®ááŒá
áºáááºá áá±á¬ááºážáá¬ááœá±ááŸááááºá
á¡ááá²á·ááœá±ážáá»ááºááŸá¯áá»á¬áž . - client ááááºáá±áá¬áá±á«áº áá°áááºá á¡áá®ážáá¯á¶áž CDN ââáá¬áá¬á IP ááááºá á¬ááá¯áá±ážáááºá
geoDNS áá¯ááºáá±á¬ááºáá»ááºááŒáá·áº DNS server ááŒá
áºááá¯ááºáá«áááºá
CloudDNS ÐŸÑ $9.95/á, GeoDNS tariff , default á¡áá±áá²á· DNS Failover áá áºáá¯ááŸááá«áááºáZilore ÐŸÑ $25/áDNS Failover ááᯠááœáá·áºáá¬ážáááºáAmazon áááºážááŒá±á¬ááºáž 53 ÐŸÑ $35/á á¡áá¬ážááẠ50M áááá®áá±á¬ááºážááá¯áá»ááºáá»á¬ážá¡ááœááºá DNS Failover ááᯠáá®ážááŒá¬ážá á® áá±á¬ááºáá¶áá«áááºáDNS áá¯ááºáááºááœááºáá°áááº ÐŸÑ $125/áDNS Failovers 10 áá±á¬ááºááŸááá«áááºáCloudFlare "Geo Steering" á¡ááºá¹áá«áááºááᯠáá¯ááºáááºážá¡á á®á¡á ááºáá»á¬ážááœáẠáááá¯ááºáá«áááºá
geoDNS ááᯠááŸá¬áá°ááá·áºá¡áá«á áááºááẠá¡áá±á¬ááºááœááºááœáẠáá«áááºáá±á¬ áá±á¬ááºážááá¯ááŸá¯ á¡áá±á¡ááœááºááᯠá¡á¬áá¯á¶á áá¯ááºááá·áºááŒá®áž ááá¯ááááºážááá¯á· á¡ááŸááºáááẠáá±á¬ááºážááá¯ááŸá¯ á¡áá±á¡ááœááºááẠáá»áŸá±á¬áºááŸááºážáá»ááºááẠá¡ááá»á¬ážá áœá¬ áá»á±á¬áºááœááºááá¯ááºáááºááᯠáááááá«á áááºážáá±á«ááºážáá»á¬ážá áœá¬áá±á¬ ááá·áºáá°áá»á¬ážá á áááºáááºá ááºáá»á¬ážá spammers áá»á¬ážááŸáá·áº á¡ááŒá¬ážáááºááá¯ážáá»á¬ážááẠááá±á¬ááááºáž á¡áá¯ááºáá¯ááºááŒáááºá
DNS áááºáá±á¬ááºááŸá¯á¡á¬ážáá¯á¶ážáá®ážáá«ážááœáẠCDN áá áºáá¯áááºáá±á¬ááºáááºá¡ááœáẠáááŸááááŒá áºááá¯á¡ááºáá±á¬áááºáá±á¬ááºááŸá¯áá áºáá¯áá«áááºááẠ- DNS Failoverá áááºážáá¡áá°á¡áá®ááŒáá·áºá áááºááẠáááºááá¬áá¬áá»á¬ážá áááºáááºááŸá¯ááᯠá á±á¬áá·áºááŒáá·áºááŒááºážá¡á¬áž áááºááŸááºááá¯ááºááŒá®ážá á¡áááºááá¹ááá¬áá»á¬áž áááŸááá±á¬á·áá«áá DNS áá¯á¶á·ááŒááºááŸá¯áá»á¬ážááœáẠá¡áááºáá áºáá¯ááŒáá·áº á¡áá¯ááºááá¯ááºáá±á¬ áá¬áá¬áááááºá á¬ááᯠá¡ááá¯á¡áá»á±á¬áẠá¡á á¬ážááá¯ážááá¯ááºáááºá
áá»áœááºá¯ááºááá¯á·á CDN áááºáá±á¬ááºáááºá¡ááœáẠáá»áœááºá¯ááºááá¯á· á¡áá¯á¶ážááŒá¯áá«áááºá
ááá·áºááá¯ááááºážááᯠáááºááŸááºáá±ážááŒááºážááŒáá·áº ááá·áºááá¯ááºááá¯ááºá¡áá±á¬áá·áºááœáẠDNS áá¯ááºá¡áá áºáá áºáᯠááá·áºááŒáá«á áá¯á·á á¡áááºá áá»áœááºá¯ááºááá¯á·ááẠááá¯ááááºážááœá²áá áºáá¯ááœáẠCDN áá áºáá¯ááᯠáááºáá±á¬ááºáá±ááŒá®áž áááºáááá¯ááááºážááᯠá¡áá¯á¶ážááŒá¯áá±ááŒá®ááá¯áá»áŸááºá áá¯ááºááᯠáá±á«ááºážááá·áºááŒá®ážáá±á¬áẠáá»ááºáá»ááºážáááºá ááŸáááŒá®ážáá¬áž á¡áá¯ááºáá¯ááºáá±áá±á¬ DNS ááŸááºáááºážáá»á¬ážááᯠááá·áºááẠááá±á·áá«ááŸáá·áºá áá±á¬ááºáá áºááá·áºááŸá¬ CDN domain/subdomain á¡ááœáẠA-records á¡áá»á¬ážá¡ááŒá¬ážááᯠáááºáá®ážáááºááŒá áºááŒá®áž áá áºáá¯á á®ááẠáá»áœááºá¯ááºááá¯á·áááºááŸááºáá¬ážáá±á¬ áá±áá¡ááœáẠá¡áá¯á¶ážáá»áááºááŒá áºáááºá ááá¯ááºááŒá®ážáá»á¬áž ááá¯á·ááá¯áẠááá¯ááºáá¶áá»á¬ážááᯠáá±ááá»á¬ážá¡ááŒá ẠáááºááŸááºááá¯ááºáááºá áá±áááœá²áá»á¬ážááẠUSA ááŸáá·áº Canada á¡ááœáẠáááá¯ááºáá«áááºá
áá»áœááºá¯ááºááá¯á·áá¡ááŒá±á¡áá±ááœááºá CDN ááẠááá¯ááááºážááœá²áá áºáá¯áá±á«áºááœáẠáá±á«áºááœááºážáááºááŒá áºáááºá cdn.sayt.in. áá¯ááºáá áºáá¯ááá·áºááŒááºážááŒáá·áº sayt.inááá¯ááááºážááœá²á¡ááœáẠááááá¯á¶áž A-record ááᯠáááºáá®ážááŒá®áž ááŒá±á¬ááºá¡áá±ááá á¡á¬ážáá¯á¶ážááᯠáá»á®áá¬ááá¯ááŸá áá¬áá¬ááá¯á· ááœáŸááºááŒáá«-
áá°áááºážáá±ááá»á¬ážá¡ááœáẠáááºááœáá·áºáá
áºáá¯áááºáá®ážááẠáááááᬠá¡ááŒá¬ážáá±ááá»á¬ážá¡ááœáẠáá¯ááºáá±á¬ááºáá»ááºááᯠááŒááºáá¯ááºááŒáá«á
áá¯á·á á€áááºááŸá¬ á¡áá¯á¶ážááœáẠááŒá
áºáá»ááºáá±ááẠá
áááºáá¬ážááŒááºáá¬ááºáá¯á¶ááŸá áá±á¬ááºáá¯á¶ážáá¯á¶áá±ááá·áºááœááºážááŸá¯ááŸá¬ áááºááŸááºáá¬ážáá±á¬ááááºááŸááºáá¬ážáá±á¬áá±ááá»á¬ážá¡á¬ážáá¯á¶ážááᯠ(áááºážááá¯á·ááẠá¥áá±á¬áá á¡á¬ááááá ááŒáá¯ááºáá¯á¡ááºáá¬áááºá¡áá¯á¶ážááŒá¯áá°áá»á¬ážá á áááºááŒáá·áº) Frankfurt ááŸá áá¬áá¬ááá¯á· ááá¯á·ááá¯ááºáááºááŒá áºáááºá
áááºážááẠá¡ááŒá±áᶠDNS á áá áºááá·áºááœááºážááŸá¯ááᯠááŒá®ážááŒá±á¬ááºá á±áááºá ááá¯ááááºážááŸááºáá¯á¶áááºáá°ááááºááá¯ááºááá¯á·ááœá¬ážáᬠáááºááŸáááá¯ááááºáž NS áá»á¬ážááᯠClouDNS ááŸáá¯ááºáá±ážááá·áºá¡áá¬áá»á¬ážááŒáá·áº á¡á á¬ážááá¯ážááẠáá»ááºááŸááá±áá«áááºá NSs áá»á¬ážááᯠááœááºážáá¶áá±áá»áááºááœááºá áá»áœááºá¯ááºááá¯á·ááẠáá¬áá¬áá»á¬ážááᯠááŒááºáááºáá±ážáá«áááºá
SSL áááºááŸááºáá»á¬áž áááºáááºááŒááºážá
áá»áœááºá¯ááºááá¯á·á CDN ááẠHTTPS ááẠá¡áá¯ááºáá¯ááºáááºááŒá áºáá±á¬ááŒá±á¬áá·áº ááá·áºááœáẠááá¯ááááºáž ááá¯á·ááá¯áẠááá¯ááááºážááœá²á¡ááœáẠSSL áááºááŸááºáá»á¬áž ááŸáááŸáá·áºááŒá®ážáá«á áááºážááá¯á·ááᯠáá¬áá¬áá»á¬ážá¡á¬ážáá¯á¶ážááá¯á· á¡ááºáá¯ááºáá¯ááºáá«á á¥ááá¬á áááºážááœáŸááºááá¯á· á¡ááºáá¯ááºáá¯ááºáá«á /etc/ssl/yourdomain/
áááºááŸááºáá»á¬ážáááŸááá«áá Let's Encrypt á០á¡ááá²á·áá
áºáá¯áááá¯ááºáááºá áá®á¡ááœáẠááŒá®ážááŒáá·áºá
á¯á¶áááºá
áá»áœááºá¯ááºááá¯á·ááẠacme.sh ááᯠáá¬áá¬áá»á¬ážá¡áááºá០áá áºáá¯áᬠáááºáááºáá«ááẠ- á¥áá±á¬á 199.247.18.199 áááºááŸááºáá»á¬ážááᯠá¡ááŒá¬ážáá°áá»á¬ážáᶠáá°ážáá°ááœá¬ážáá«áááºá ááá·áºááœááºážáááºá áá¯ááºáá±á¬ááºáááº-
root@cdn:~# wget -O - https://get.acme.sh | bash; source ~/.bashrc
script ááá¯ááá·áºááœááºážá ááºá¡ááœááºáž áá»áœááºá¯ááºááá¯á·ááá«áááºááŸá¯áááŸááá² áááºááŸááºáá»á¬ážáááºáá¶áááºáááºážááá¯ážáááºá¡ááœáẠCRON á¡áá¯ááºáá áºáá¯áááºáá®ážáá«áááºá
áááºááŸááºáá¯ááºáá±ážáá±á¬á¡áá«á API ááá¯á¡áá¯á¶ážááŒá¯á DNS ááá¯á¡áá¯á¶ážááŒá¯á ááá¯ááááºážááᯠá á áºáá±ážáááºááŒá áºáááºá ááá¯á·ááŒá±á¬áá·áº ááŒááºáááºáá±á¬ááºážáá»áá° API áá®áá°ážááŸá ClouDNS ááá¯ááºáá±ážááá¯ááºáá¬á¡áá±á¬áá·áºááœááºá á¡áá¯á¶ážááŒá¯áá° API á¡áá áºáá áºáá¯áááºáá®ážááŒá®áž áááºážá¡ááœáẠá áá¬ážááŸááºáá áºáá¯áááºááŸááºááẠááá¯á¡ááºáá«áááºá á áá¬ážááŸááºááŒáá·áº áááŸááá¬áá±á¬ auth-id ááᯠááá¯ááºááœáẠáá±ážáá¬ážáá«áááºá ~/.acme.sh/dnsapi/dns_cloudns.sh (ááá¯ááºááŸáá·áº ááá±á¬ááœá±ážááá«á dns_clouddns.sh) á€áááºááŸá¬ ááŸááºáá»ááºááá±ážáá² áááºážááŒááºááẠááá¯á¡ááºáá±á¬ ááá¯ááºážáá»á¬ážááŒá áºáááº-
CLOUDNS_AUTH_ID=<auth-id>
CLOUDNS_AUTH_PASSWORD="<паÑПлÑ>"
ááᯠáá»áœááºá¯ááºááá¯á·ááẠSSL áááºááŸááºááᯠáá±á¬ááºážááá¯áá«áááºá cdn.sayt.in
root@cdn:~# acme.sh --issue --dns dns_cloudns -d cdn.sayt.in --reloadcmd "service nginx reload"
ááœá±ážáá»ááºááŸá¯áá»á¬ážááœááºá á¡áá¬áááºááœááºá áá±á¬ááºááœáẠáááºááŸááºááá¬ážáááºááŸá¯áá¬áááᯠáááºáááºážááá¯ážááá¯ááºáž áááºáááºážááá¯ážááŒá®ážáá±á¬ááºááœáẠáááºáá¬áᬠááœá²á·á ááºážááŸá¯áá¯á¶á á¶ááᯠá¡ááá¯á¡áá»á±á¬áẠááŒááºáááºá áááºááẠá¡áááá·áºáá±ážáá¬ážáá«áááºá
áááºááŸááºáááŸááá±áž áá¯ááºáááºážá ááºáá áºáá¯áá¯á¶ážááẠ2 áááá áºá¡áá ááŒá¬ááá¯ááºááŒá®áž áááºážááᯠáááŸá±á¬áá·áºááŸááºáá«ááŸáá·áºá ááá¯ááááºážá¡áááºááŒá¯ááŒááºážááá¯ááºáᬠá¡ááŸá¬ážá¡ááœááºážáá áºáᯠááŒá áºáá±á«áºáá«áá á¡áááá·áºááᯠáááºáá¶áá¯ááºáá±á¬ááºááŒáá·áºáá«á á¡áá¯á¶ážááœáẠáááºááŸááºáá»á¬ážááᯠá¡ááºáá¯ááºáá¯ááºáá¬ážááá·áºáá±áá¬ááᯠáá»áœááºá¯ááºááá¯á·ááŒááºááá«áááº-
á€áááºážááŒá±á¬ááºážáá»á¬ážááᯠááŸááºáá¬ážáá¬ážáá«á á¡ááá¡ááŸááºááŒá¯áááºááŸááºááᯠá¡ááŒá¬ážáá¬áá¬áá»á¬ážááá¯á· áá°ážáá°ááá·áºá¡áá« á¡ááŒáẠáááºáá¬áá¬áááºáááºáá»á¬ážááœáẠáááºážááá¯á·ááᯠáááºááŸááºáá±ážááá«áááºá Nginx configs ááá¯ááŒááºáááºá áááºááŒááºážáá¡ááŸá¬ážááá¯áá»áœááºá¯ááºááá¯á·ááá¯áá áá¯ááºáá«á
SSL á¡ááœááºáá»áœááºá¯ááºááá¯á·áá»ááºáá²á·ááá»áŸááẠááá¯ááºáá»á¬ážáá®ááá¯á·áááºážááŒá±á¬ááºážááá¯ááááºážááááºážáá¬ážá ááºáááŸááá¬ážáá±á¬áááºááŸááºááá¯á¡ááŒá¬ážáá¬áá¬ááŸá áºáá¯ááá¯á·áá°ážáá°áááºááŒá áºáááºá áááºážááá¯á·áá áºáá¯á á®ááœáẠáá°áá®áá±á¬áááºážááœáŸááºáá»ááºáá»á¬ážááᯠáááºáá®ážááŒá®áž áááá¹áá°áá áºáá¯ááŒá¯áá¯ááºááŒáá«á áá¯á·á
root@cdn:~# mkdir -p /root/.acme.sh/cdn.sayt.in/
root@cdn:~# scp -r [email protected]:/root/.acme.sh/cdn.sayt.in/* /root/.acme.sh/cdn.sayt.in/
áááºááŸááºáá»á¬ážááᯠáá¯á¶ááŸáẠá¡ááºááááºáá¯ááºáááºá á¡áááá·áºááŒáá·áº áá¬áá¬ááŸá áºáá¯áá¯á¶ážááœáẠáá±á·á áẠCRON á¡áá¯ááºáá áºáᯠáááºáá®ážáá«-
scp -r [email protected]:/root/.acme.sh/cdn.sayt.in/* /root/.acme.sh/cdn.sayt.in/ && service nginx reload
á€ááá
á¹á
ááœááºá á¡áá±ážááŸá¡áááºážá¡ááŒá
áºáá¬áá¬ááá¯á·áááºáá±á¬ááºááœáá·áºááᯠconfigure áá¯ááºááááºá
Nginx ááᯠááá·áºááœááºážááŒá®áž ááŒááºáááºáááºááŸááºááŒááºážá
áááºááŒáááºáá±á¬á¡ááŒá±á¬ááºážá¡áá¬ááᯠáá±á¬ááºááœááºáá±ážáááºá¡ááœááºá áá»áœááºá¯ááºááá¯á·ááẠáááºááŸáºááá±á¬ááºá á®áá¬áá¬á¡ááŒá ẠáááºááŸááºáá¬ážáá±á¬ Nginx ááᯠá¡áá¯á¶ážááŒá¯áá«áááºá áááºáá±á·áá»áºá á¬áááºážáá»á¬ážááᯠá¡ááºááááºáá¯ááºááŒá®áž áá¬áá¬áá¯á¶ážáá¯áá¯á¶ážááœáẠááá·áºááœááºážáá«á
root@cdn:~# apt update
root@cdn:~# apt install nginx
áá¯á¶áá±á¡á
á¬ážá á¡á±á¬ááºáá±á¬áºááŒáá« spoiler á០config ááá¯á¡áá¯á¶ážááŒá¯áááº-
nginx.conf
user www-data;
worker_processes auto;
pid /run/nginx.pid;
events {
worker_connections 4096;
multi_accept on;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log off;
error_log /var/log/nginx/error.log;
gzip on;
gzip_disable "msie6";
gzip_comp_level 6;
gzip_proxied any;
gzip_vary on;
gzip_types text/plain application/javascript text/javascript text/css application/json application/xml text/xml application/rss+xml;
gunzip on;
proxy_temp_path /var/cache/tmp;
proxy_cache_path /var/cache/cdn levels=1:2 keys_zone=cdn:64m max_size=20g inactive=7d;
proxy_cache_bypass $http_x_update;
server {
listen 443 ssl;
server_name cdn.sayt.in;
ssl_certificate /root/.acme.sh/cdn.sayt.in/cdn.sayt.in.cer;
ssl_certificate_key /root/.acme.sh/cdn.sayt.in/cdn.sayt.in.key;
location / {
proxy_cache cdn;
proxy_cache_key $uri$is_args$args;
proxy_cache_valid 90d;
proxy_pass https://sayt.in;
}
}
}
config ááœááºáááºážááŒááºáá«
- á¡áá»á¬ážáá¯á¶áž_á¡ááœááºá¡á á¬áž â áááŸáááá¯ááºáá±á¬ disk áá±áá¬áááºááá»á±á¬áºááœááºáá±á¬ cache áá¡ááœááºá¡á á¬áž
- áááŸá¯ááºáááŸá¬áž - áááºáá°áá»áŸáááºáá±á¬ááºááááá±á¬ áááºááŸáºáá±áá¬áá»á¬ážá ááá¯ááŸá±á¬ááºáá»áááº
- ssl_certificate О ssl_certificate_key - SSL áááºááŸááºááŸáá·áº áá±á¬á·ááá¯ááºáá»á¬ážáá®ááá¯á· áááºážááŒá±á¬ááºážáá»á¬áž
- proxy_cache_valid - áááºááŸáºáá±áá¬áááá¯ááŸá±á¬ááºááŸá¯á¡áá»áááº
- proxy_pass â CDN á០ááááºážáááºážáááºá¡ááœáẠááá¯ááºáá»á¬ážááᯠáá±á¬ááºážááá¯ááá·áº áá°áááºážáá¬áá¬áááááºá á¬á áá»áœááºá¯ááºááá¯á·áá¥ááá¬ááœááºá á€á¡áᬠsayt.in
áááºááŒááºááá¯ááºááá²á·ááá¯á·, á¡áá¬á¡á¬ážáá¯á¶ážááá¯ážááŸááºážáá«áááºá ááœáŸááºááŒá¬ážáá»ááºáá»á¬ážá áá°áá®ááŸá¯ááŒá±á¬áá·áº ááááºážáááºážáá»áááºááᯠáááºááŸááºáá¬ááœááºáᬠáááºáá²ááá¯ááºáááºá áááŸá¯ááºáááŸá¬áž О proxy_cache_valid. áá»áœááºá¯ááºááá¯á·áá¥ááá¬ááŒáá·áº áááºážááá¯á·ááᯠááœá²ááŒááºážá áááºááŒá¬ááŒáá·áºááŒáá«á áá¯á·á áá«á áááºá¡áá»áááºááŒá áºááá²á inactive=7d О proxy_cache_valid 90d:
- á¡áááºá áá±á¬ááºážááá¯ááŸá¯á¡á¬áž 7 áááºá¡ááœááºáž áááºáá«ááá²áá² ááá¯ááºáá«áá á€áá¬áááŒá®ážáá±á¬áẠáá±áá¬áá»á¬ážááᯠáááºááŸáºá០áá»ááºááá¯ááºáá«áááºá
- áá±á¬ááºážááá¯áá»ááºááᯠá¡áááºážáá¯á¶áž 7 áááºáá»áŸáẠáá áºááŒááẠáááºáá«ááá²áá² ááŒá¯áá¯ááºáá«áá ááá¯á·áá±á¬áẠáááºáá±á«ááºáž 90 á¡ááŒá¬ááœáẠáááºááŸáºááŸá áá±áá¬ááᯠá¡áá¯á¶ážáááŒá¯áá±á¬á·áᯠáá°áááŒá®áž Nginx ááẠáááºážááᯠáá±á¬ááºáá±á¬ááºážááá¯áá»ááºááŒáá·áº á¡ááºááááºáá¯ááºáᬠáá°áááºážáá¬áá¬á០áááºážááᯠááá°ááœá¬ážáááºááŒá áºáááºá
áááºážááŒááºááẠááŒá®ážáá«ááŒá®á nginx.confááœá²á·á ááºážááŸá¯áá¯á¶á á¶ááᯠááŒááºáááºá áááºáá«-
root@cdn:~# service nginx reload
áá»áœááºá¯ááºááá¯á·á CDN á¡áááºááá·áºááŒá áºáá±áá«ááŒá®á $15/áá ááá¯ááºááŒá®ážáá¯á¶ážááá¯ááºááŸáá·áº áá¬ááºááŒá±á¬á¡ááœá¬ážá¡áᬠ3 TB ááŸááááº- áá±áá¬áá áºáá¯á á®ááœáẠ1 TB ááŸááááºá
CDN áá¡áá¯ááºá á áºáá±ážááŒááºážá
ááá°áá®áá±á¬áááá®áááºáááºáá±áá¬áá»á¬ážááŸáá»áœááºá¯ááºááá¯á·á CDN ááá¯á· pings áá»á¬ážááá¯ááŒáá·áºááŸá¯ááŒáá«á áá¯á·á á€á¡ááœáẠáááºááá·áº ping áááºáá±á¬ááºááŸá¯áááᯠá¡áá¯ááºááŒá áºáá«áááºá
áá
áºááœáŸááºááá·áºá¡áá»ááº
á¡áááºááŸááº
IP
áá»ááºážáá»áŸá¡áá»áááºá ms
áá»á¬ááá® áá¬áááº
cdn.sayt.in
199.247.18.199
9.6
áááºáá¬áááºá á¡ááºá
áá¬áááº
cdn.sayt.in
199.247.18.199
10.1
ááŒááºáá
Ạáá²áá
áº
cdn.sayt.in
199.247.18.199
16.3
áá°ááá¯ááºáááºáááºážáááºážá áááºáááº
cdn.sayt.in
199.247.18.199
14.9
ááá±áá«á ááá¯ááœááºááá¯
cdn.sayt.in
149.28.121.123
16.2
á¡áá±áááááºá áááºááááºá
á
á¹á
ááá¯
cdn.sayt.in
149.28.121.123
52.7
á¡áá±áááááºá Dallas
cdn.sayt.in
149.28.121.123
23.1
á¡áá±áááááºá áá»á®áá¬ááá¯
cdn.sayt.in
149.28.121.123
2.6
á¡áá±áááááºá ááá°ážáá±á¬ááº
cdn.sayt.in
149.28.121.123
19.8
СОМгапÑÑ
cdn.sayt.in
157.230.240.216
1.7
áá»áááºááá¯áá»áá¯
cdn.sayt.in
157.230.240.216
74.8
ááŒá
ááŒá±ážáá»á áá
áºááá®
cdn.sayt.in
157.230.240.216
95.9
ááááºááœá±á áá±á¬ááºážáááºá ááᯠáá»áœááºá¯ááºááá¯á·ááẠáááºáááá¯ááºá á¡ááŒá
áºááœáẠá
ááºážáááºáá¯á¶áá
áºáá¯ááᯠáááºáá«áááºá test.jpg CDN ááŸáááá·áºáááºážááá±á«ááºážáá¯ááºááŒááºááŸá¯ááºážááá¯á
á
áºáá±ážáá«á áá¯ááá¯áááº-
CDN á¡ááŸááºáá±á«áºááŸá cache ááá¯ááŸááºážáááºážááá¯áá«á script áá±ážáá
áºáá¯áá±ážááŒáá·áºáá¡á±á¬ááºá
purge.sh
#!/bin/bash
if [ -z "$1" ]
then
echo "Purging all cache"
rm -rf /var/cache/cdn/*
else
echo "Purging $1"
FILE=`echo -n "$1" | md5sum | awk '{print $1}'`
FULLPATH=/var/cache/cdn/${FILE:31:1}/${FILE:29:2}/${FILE}
rm -f "${FULLPATH}"
fi
áááºááŸáºáá áºáá¯áá¯á¶ážááᯠáá»ááºáááºá áááºážááᯠrun áá¯á¶ááŒáá·áº áá®ážááŒá¬ážááá¯ááºááᯠá€áá²á·ááá¯á· ááŸááºážáááºážááá¯ááºáááº-
root@cdn:~# ./purge.sh /test.jpg
á¡á á¬ážáá±á¬ááºáá»ááºá
áá±á¬ááºáá¯á¶ážá¡áá±áá²á·á á¡á²áá®á¡áá»áááºá áá»áœááºáá±á¬á·áºáá±á«ááºážááᯠáá¬áá»ááºá á±áá²á·áá²á· ááœááºáá¯á¶ážááᯠáá»ááºáá»ááºážáá»á±á¬áºáááºááá¯ááºááá¯á· á¡áá¯á¶ážáááºáá²á· á¡ááŒá¶ááŒá¯áá»ááºá¡áá»áá¯á·ááᯠáá±ážáá»ááºáá«áááºá
- CDN á á¡ááŸá¬ážáá¶ááá¯ááºáááºááᯠááá¯ážááŒáŸáá·áºáááºá¡ááœáẠáá¬áá¬ááŒáá¯ááœá²ááŸá¯ááŒá áºá ááºááœáẠA ááŸááºáááºážááᯠáá»ááºááŒááºá áœá¬ááŒá±á¬ááºážáá²ááẠáá°áá®áá±ážááá·áº DNS Failover ááᯠááŒááºáááºáááºááŸááºááẠá¡ááŒá¶ááŒá¯áá¬ážáááºá áááºážááᯠdomain á control panel DNS ááŸááºáááºážáá»á¬ážááœáẠáá¯ááºáá±á¬ááºáááºá
- áá»ááºááŒáá·áºáá±á¬ áááá®ááẠááœáŸááºážááŒá¯á¶ááŸá¯ááŸááá±á¬ ááá¯ááºáá»á¬ážááẠCDN á¡áá»á¬ážá¡ááŒá¬áž ááá¯á¡ááºáááºááŸá¬ áá±áá»á¬áá±á¬áºáááºáž áá°ážááœááºááŸá¯ áááŒá áºáá«á á±ááŸáá·áºá áááºáá±áᬠ6-7 ááœáẠáá¬áá¬áá»á¬ážáá¬ážááŸááá«á á¡ááá±áž CDN ââááŸáá·áº ááŸáá¯ááºážááŸááºáá«á á¡áá¯á¶ážááŒá¯áá°ááẠá¥áá±á¬áá ááŒá±á¬ááºá¡áá±ááá (á¡ááŸá±á·ááá¯ááºáž)á ááŒá±á¬ááºá¡áá±ááá (á¡áá±á¬ááº)á á ááºáá¬áá°á ááŒá ááŒá±ážáá»á áá±á¬ááºáá±á¬áẠááá¯á·ááá¯áẠáá»áááº
- áá áºáá«áá áºáá¶ááœáẠhosters áá»á¬ážááẠCDN áááºááœááºáá»ááºáá»á¬ážá¡ááœáẠááŸá¬ážáá¬ážáá±á¬áá¬áá¬áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááœáá·áºáááŒá¯áá«á ááá¯á·ááŒá±á¬áá·áºá áááºááẠáááºáá±á¬ááºááŸá¯áá áºáá¯á¡áá±ááŒáá·áº á¡ááŒá±á¬ááºážá¡áá¬áá±ážááá¯á·ááŒááºážááœááºáááºááᯠáá¯ááºááááºá¡áá¯á¶ážááŒá¯ááẠáá¯á¶ážááŒááºáá«áá hosting áááºáá±á¬ááºááŸá¯áá±ážáá°á á ááºážáá»ááºážáá»á¬ážááᯠááŒáá¯áááºáááºááẠááá±á·áá«ááŸáá·áºá
- á
á°ážá
ááºážáá«á
áá±á¡á±á¬ááºáááºááœááºáá±ážááŒá±áá¯á¶ ááá¯ááºááŒá®ážáá»á¬ážááᯠáááºáá²á·ááá¯á· áá»áááºáááºáá¬ážáááºááᯠááá¯ááºá á¬ážááŒá¯ááŒá®áž á¡ááŒá±á¬ááºážá¡áá¬áá±ážááá¯á·ááŒááºážááœááºáááºááᯠáááºáá±á¬ááºááá·áºá¡áá« áááºážááᯠááá·áºááœááºážá ááºážá á¬ážááẠ- á
á
áºáá±ážááŒáá·áºáá«á
ááá°áá®áá±á¬áá±áá¬áá»á¬ážá០pings ááá·áºáá¬áá¬áá»á¬ážááá¯á· á€áááºážááŒáá·áº áááºááẠCDN á¡ááŸááºáá»á¬ážááŸáá·áº á¡áá®ážá ááºáá¯á¶áž áá±ááá»á¬ážááᯠááŒááºááá¯ááºááŒá®áž GeoDNS ááᯠááá¯ááá¯ááŸááºáááºá áœá¬ ááŒááºáááºáááºááŸááºááá¯ááºáááºá - á¡áá¯ááºáá»á¬ážáá±á«áºáá°áááºá áá®ážááŒá¬áž caching ááá¯á¡ááºáá»ááºáá»á¬ážá¡ááœáẠNginx ááᯠáá±á¬ááºážá
áœá¬áá»áááºááŸááááºááŸáá·áº áá¬áá¬áá±á«áºááŸá load ááá¯ááá·áºááœááºážá
ááºážá
á¬ážááẠá¡áá¯á¶ážáááºáááºááŒá
áºáá«áááºá Nginx cache ááŸáá·áºáááºáááºáá±á¬áá±á¬ááºážáá«ážáá»á¬ážáááºá€ááœááºáá«á·ááá¯á¡áá»á¬ážááŒá®ážáá°áá®áá±ážáá²á·ááẠ-
áá®ááŸá¬ áá±ážáá¶áá±á¬áááºáá»á¬ážá¡á±á¬ááºááœáẠá¡áá¯ááºá¡ááŸáááºááŒáŸáá·áºááŒááºážááá®ááŸá¬ Оáá®ááŸá¬
source: www.habr.com