Content delivery network

Iran CDN:
a switch on your DNS record, not a migration project

Your site lives on one server, and your visitors are spread across the planet. Every image, every CSS file and every script has to make that whole trip, and along the way your server’s IP address is introduced to everyone. Our Iran CDN fixes both: content is served from the nearest edge node, inside Iran or abroad, and your origin stays hidden behind it.

8 edge nodes, including Iran Free, automatic SSL certificates 1 TB of free traffic
Features

What happens on the edge: caching, compression, HTTP/3 and image optimization

Everything on this list is running on our nodes today. None of it is a roadmap item.

Caching

Static content is stored on the edge node, so the next request is answered without ever reaching your server. You get three cache modes (standard, aggressive and no cache), and large files and video are cached in 1 MB slices, so seeking through a video doesn’t pull the whole file again. Purging the cache takes one click, for a single URL or the whole domain.

Edge nodes

A network of nodes in Europe and Iran. Each visitor is routed to the best node for them, and the European nodes read from each other’s caches: a file that is already warm in Helsinki isn’t fetched from your origin again in Falkenstein.

HTTP/2

Enabled on every service port: many requests in parallel over one connection, header compression, and no queuing behind earlier files. For a page made of dozens of small files, this alone makes a noticeable difference.

HTTP/3 and QUIC

The newest version of HTTP, running over UDP, live on port 443 and advertised to browsers with the Alt-Svc header. Its real advantage shows on poor networks and on mobile: one lost packet no longer stalls every other request, and switching between Wi-Fi and mobile data doesn’t drop the connection.

TLS and automatic certificates

A Let’s Encrypt certificate is issued automatically, installed on every node and renewed before it expires, with nothing for you to do. TLS 1.3 with cluster-wide session resumption (a node you have already talked to doesn’t need a full handshake), plus 0-RTT and OCSP stapling.

Compression

Brotli for text, CSS, JavaScript, JSON, SVG and fonts, typically 15 to 25 percent smaller than gzip, with gzip as the fallback for clients that don’t support Brotli. Nothing to configure on your server.

Image optimization

JPEG and PNG images are converted to AVIF or WebP on the node itself and cached, depending on which format the visitor’s browser supports. Measured on a real image from this site: a 158 KB PNG became a 31 KB WebP and a 16 KB AVIF. Older browsers get the original file, untouched.

Abusive-traffic shield (rate limiting)

Per-IP caps on request rate and concurrent connections, at one of three levels you choose, plus protection against slow and half-open connections. Because this traffic never reaches your server, the load of an attack stays on the edge nodes and your origin stays out of reach.

Analytics

For every hostname on the CDN: requests, traffic volume, cache hit ratio, traffic saved at the origin, the HTTP/2 and HTTP/3 share, and average response time, broken down by node. No visitor IPs, page URLs or browser details are stored.

Network

CDN edge nodes and measured latency

These aren’t marketing numbers. They are the same matrix the CDN router uses to decide which node each visitor goes to. If the measurements go stale, the router stops trusting them, and this table disappears from the page.

Helsinki, Finland

3 nodes in this city. Load is spread across them, and if one fails, the others take over. This European node serves visitors outside Iran and reads from its peers’ caches, so your origin is hit less often.

Falkenstein, Germany

This European node serves visitors outside Iran and reads from its peers’ caches, so your origin is hit less often.

Tehran, Iran

A node inside Iran: the shortest possible path to visitors in Iran. If your origin is in Iran as well, the traffic never leaves the country at all.

Hillsboro, United States

This US node serves visitors outside Iran and reads from its peers’ caches, so your origin is hit less often.

Nuremberg, Germany

2 nodes in this city. Load is spread across them, and if one fails, the others take over. This European node serves visitors outside Iran and reads from its peers’ caches, so your origin is hit less often.

Visitors in…Our closest nodeMeasured latency
Iran Tehran 10 ms
Europe Falkenstein 19 ms
North America Hillsboro 38 ms
Asia Nuremberg 155 ms
Africa Nuremberg 170 ms
Oceania Hillsboro 180 ms
South America Hillsboro 181 ms

Each figure is the average round trip from that node to several reference servers on the same continent, re-measured several times a day (last measured 2026-10-16 21:47). This is network latency, not your page load time; that also depends on your own site.

Setup

Set up the CDN in four steps, live in minutes

No plugin to install, nothing to change on your server, and none of your file URLs change.

1. Point your domain’s DNS to us

Set Mehran Host’s nameservers at your domain registrar. DNS management on PowerDNS is free, and records are published instantly.

2. Flip the CDN switch on a record

Every A record has a CDN switch next to it. Turn it on: the origin IP is saved right there, and the public record now points to the edge nodes.

3. The certificate issues itself

An SSL certificate is issued for that hostname and installed on every node. It takes about one to two minutes, and you can follow its status on the same page.

4. Tune it and watch the numbers

Set cache intensity, image optimization, the traffic shield and the other options for that hostname, and see its traffic stats in the same place.

Turning it off is just as easy: the record is published with a short TTL, so switching back to your origin takes effect in under a minute.

Settings

Per-site CDN settings: each hostname gets its own

These are exactly the options you see in the customer panel, not a separate list that could drift from reality.

OptionModes
Cache level Standard — the query string is part of the cache key Aggressive — query string ignored, HTML cached for six hours (for static sites) No cache — proxy only (useful while migrating)
Hotlink protection Off On — images and media load only from your own domain
HSTS Off On — browsers use HTTPS only, for one year
Image optimization Off — images are served unchanged On — automatic JPEG/PNG to AVIF or WebP conversion at the edge
Abusive-traffic shield Standard — 40 requests per second, 100 concurrent connections Strict — 8 requests per second, 20 connections (site under attack) Unlimited — for APIs and file hosting
Node selection Best node for each visitor (best for websites) All nodes in one answer (more resilient, suited to long-lived connections)
Honest limits

What a CDN can’t fix

If your problem is on this list, turning the CDN on or off makes no difference, and it is better to know that before you buy. A big one for Iranian sites: files the browser fetches directly from domains outside Iran never pass through our nodes. We explain how to find them and host them locally in our guide to site speed on the National Information Network.

If…What actually happens
Your pages differ for each user (cart, dashboard, my account) They aren’t cached, and they shouldn’t be. They are built by your server every time, so their speed depends on your server’s own resources.
Time to first byte (TTFB) is high because the site itself is slow A CDN won’t fix that. Start with page caching and fewer plugins, then add resources; we explain how on our WordPress hosting page.
Your origin server is down Cached content keeps being served for a while, but a CDN is not a replacement for your server. Fresh pages need the origin to be up.
You expect a large, targeted volumetric attack Rate limiting and a hidden origin help a lot, but if your service is a serious target, talk to us first so we can review capacity for you.
Cost

CDN pricing: 1 TB free, then pay per GB from your wallet

Every account gets 1 TB of CDN traffic free, and it never expires. After that, each GB costs 1,000 Toman (1,000,000 Toman per TB; 1 Toman = 10 Iranian rials), deducted from your wallet based on actual usage, with no monthly fee and no limit on the number of domains. If your balance runs out, the CDN pauses and traffic goes straight to your origin IP. One honest note: if your traffic runs to several terabytes a month, let us know before you launch so we can set capacity aside for you. Not to sell you anything, just so the network is ready in advance.

Mobile or email: at least one is required.
Or turn it on yourself right now
FAQ

Iran CDN FAQ, including the National Information Network (NIN)

How much does the Mehran Host CDN cost?
Every account gets 1 TB of CDN traffic free, and it never expires. After that, traffic sent from the edge nodes to your visitors is billed at 1,000 Toman per GB (1,000,000 Toman per TB), deducted gradually from your wallet as you use it and separately from your servers’ traffic. There is no monthly fee and no limit on the number of domains. If your wallet balance runs out, the CDN pauses and traffic goes straight to your origin IP; top up your wallet and it comes back automatically within a few minutes.
Do I have to move my hosting or server to you to use the CDN?
No. Your server or hosting can be anywhere: here, with another provider in Iran, or in a datacenter abroad. All that is needed is for your domain’s nameservers to point to Mehran Host so we can publish the records. Your main server’s IP is saved as the “origin” and stays hidden from public view.
What exactly does image optimization do, and does it hurt quality?
JPEG and PNG images are converted to AVIF or WebP on the edge node itself, depending on which formats the visitor’s browser says it supports, and the result is cached, so each image is converted only once. Quality is tuned so the difference isn’t visible at normal viewing, while the file size drops sharply: on a real image from this site, a 158 KB PNG came down to a 16 KB AVIF. If the converted file would be larger than the original, which happens with very detailed photos, the original is served instead. A browser that doesn’t support these formats gets exactly the original image, untouched.
What difference does HTTP/3 make for my visitors?
HTTP/3 runs over UDP, and unlike earlier versions, one lost packet doesn’t stall all the other requests. You see the biggest difference on mobile and on poor networks: pages load more smoothly when the connection is bad, and switching between Wi-Fi and mobile data doesn’t drop the connection. It is enabled on our nodes, and browsers discover it on their own through the Alt-Svc header; a browser or network that doesn’t support it stays on HTTP/2 and nothing breaks.
Does my server’s IP really stay hidden?
The published record points to the edge nodes, not to your server, so anyone who looks up your domain doesn’t see the origin IP, and scans and direct traffic have nowhere to go. To be honest, though, keeping the origin hidden also depends on how the server itself behaves: if the same IP has been exposed elsewhere (an old DNS record, outgoing email, a previous SSL certificate, or a service that reveals its own address), it can still be found. For the strongest effect, restrict direct access to the origin in your firewall.
Does the CDN work with WebSocket and other long-lived connections?
Yes, and that is why several TLS ports are available, not just 443. WebSocket and gRPC traffic is never cached, never goes through the peer-cache path and isn’t subject to the request-rate limit, because a client like that naturally keeps long-lived connections open, often many at once. If your origin listens on several TLS ports, you can define each port separately, so the port a user connects to is the same one used on your origin.
What do CDN analytics show, and what do they store?
For every hostname on the CDN you see requests, traffic volume, the share of responses served from cache, how much traffic never reached your server, the HTTP/2 and HTTP/3 share, and average response time, all broken down by node. What isn’t stored matters more: visitor IPs, the pages they opened and their browsers never enter these counters. The stats are just hourly counters per site.
How does the CDN help on the National Information Network (NIN) and during international connectivity disruptions?
With an edge node inside Iran, your site’s cached static content reaches visitors from inside the country and never has to cross the international gateway. So during the very hours when international links are slow or unstable, your site’s images, stylesheets and scripts stay put. There are two limits, though. Dynamic content is still built by your origin server, so if the origin is outside Iran, it takes that same route. And a file the browser fetches directly from a domain outside Iran (Google Fonts, a library from a foreign CDN, a third-party widget) never passes through our nodes, so the CDN can’t rescue it. The fix for those is to host the files locally.
After I deploy a new version of my site, does the old cache linger?
HTML pages are deliberately cached only briefly so changes show up quickly, and static files for a long time. If you want everything refreshed right away, you can purge the cache for a single URL, a whole hostname or every hostname in the domain, on all nodes, with one click from the same DNS page.