Magic Transit
Tek tek siteleri değil, IP bloğunun tamamını Cloudflare'e yönlendiriyor. BGP ile /24 duyuruluyor, trafik GRE veya IPsec tünelinden geri iniyor. Enterprise-only ve self-serve değil.
- DurumGenel kullanımda
- FiyatYayımlanmamış — BGP prefix sayısına göre, sözleşmeyle
- Doğrulama
Magic Transit nedir?
Cloudflare’in çoğu güvenlik ürünü bir hostname’in önüne geçer: ornek.com için nameserver’ları
Cloudflare’e yöneltirsin, HTTP istekleri kenarda sonlandırılır, temizlenir ve yeniden kurulup
origin’e gönderilir. Bu model HTTP olmayan hiçbir şeyi kapsamaz.
Magic Transit farklı bir katmanda çalışır. Korunan şey bir site değil, IP adres bloğunun tamamı.
“Magic Transit is a network security and performance solution that offers Distributed Denial of Service (DDoS) protection, traffic acceleration, and more for on-premises, cloud-hosted, and hybrid networks.”
“Magic Transit delivers its connectivity, security, and performance benefits by serving as the front door to your IP network. This means it accepts IP packets destined for your network, processes them, and then outputs them to your origin infrastructure.”
Kendi /24’ünü Cloudflare BGP ile duyurur. İnternet’in tamamı o bloğa giden paketleri artık
Cloudflare’e teslim eder. Cloudflare paketleri kenarda süzer ve geriye kalanı bir GRE veya IPsec
tüneliyle sana indirir. Oyun sunucusu, VoIP, SSH, veritabanı portu, kendi VPN’in — hepsi aynı
korumanın altına girer, çünkü koruma protokolü değil paketi görür.
Bunun bedeli var ve gizlenmemeli: Enterprise-only, self-serve değil.
“Magic Transit is not a self-serve product. Start by engaging with our team.”
Nasıl çalışır?
Trafik Cloudflare’e nasıl geliyor
BGP ile. Kendi prefix’ini duyurursun (BYOIP) veya Cloudflare’den IP kiralarsın.
| Konu | Kural | Kaynak ifadesi |
|---|---|---|
| En küçük prefix | /24 | “Prefixes must include at least 256 IP addresses” |
| Neden | /25 ve altı global route edilemez | “longer prefixes… are not globally routable” |
| IPv6 (beta) | /48 – /32 | ipv6 sayfası |
| ASN | Yeni müşteriler AS13335 | “For all future onboardings, you must use AS13335” |
| Kendi ASN’in | Cloudflare önüne kendi ASN’ini ekler | “anyone directly peering with Cloudflare sees the path as 13335 64496” |
| LOA | PDF olmak zorunda | “Transit providers may reject the LOA if it is a JPG or PNG” |
| RPKI | Zorunlu değil, önerilen | “You can also use the Resource Public Key Infrastructure (RPKI) as an additional option” |
Duyuruyu dört ayrı yöntemle kontrol edebilirsin: Addressing API, route reflector’larla BGP
peering (141.101.67.22 CDG · 162.158.160.22 SIN · 173.245.63.66 IAD — “For maximum
resiliency, we recommend peering with all three”), Network Flow ile
trafik eşiğine bağlı otomatik tetikleme, veya Magic Transit sanal ağ routing tablosuyla BGP.
Trafik sana nasıl dönüyor
Cloudflare’in tünel uçları anycast’tir. GRE için bu doğal, çünkü GRE stateless. IPsec için Cloudflare özel bir şey yapıyor:
“one Cloudflare server handles the initial negotiation, then propagates the tunnel details (traffic selectors, keys, etc.) across all Cloudflare data centers. The result is that any Cloudflare server can handle traffic for that IPsec tunnel.”
Bunun bir yan etkisi var ve onboarding’de sık batırıyor: paketler farklı sunuculardan geldiği için anti-replay penceresi bozulur. Cloudflare bu ayarı varsayılan olarak kapatıyor ve kapatılması gereken cihazları adıyla sayıyor: Cisco Meraki, Velocloud, AWS VPN Gateway.
MSS clamp — onboarding’in en sık battığı adım
Kapsülleme paketi büyütür, MTU değişmez, aradaki fark büyük paketlerin sessizce düşmesi olarak geri gelir.
1500 bayt MTU
− 20 bayt IPv4 başlığı
− 4 bayt GRE başlığı
──────────────────────
1476 bayt tünel MTU
− 40 bayt TCP/IP başlığı
──────────────────────
1436 bayt MSS
| Senaryo | MSS clamp |
|---|---|
| GRE, ingress-only (DSR) — edge router transit portları | 1.436 |
| GRE, ingress + egress — tünel iç arayüzü | 1.436 |
| IPsec, ingress-only (DSR) — edge router transit portları | 1.436 |
| IPsec, ingress + egress — tünel iç arayüzü | 1.360 |
| IPv6 (beta), DSR | 1.416 |
| CNI Dataplane v1 üzerinden GRE | 1.476 |
| CNI Dataplane v2 | gerekmiyor |
| Prefix üzerindeki 3. taraf GRE/IPsec tünelinin iç arayüzü | GRE: −24 bayt · IPsec: −140 bayt |
Failover — sayılarla
Tünel sağlığı üç durumlu: healthy, degraded, down.
| Olay | Koşul | Sonuç |
|---|---|---|
| Degraded | Son 5 dakikada health check’lerin %0,1’i başarısız (en az iki hata) | priority +500.000 |
| Down | Son 1 saniyedeki en az üç örneğin tamamı başarısız | priority +1.000.000 |
| Recovery | Son 30 probe’da hata oranı %0,1’in altında | 30 dakikaya kadar sürebilir |
Route silinmiyor, cezalandırılıyor:
“The values for failure penalties are intentionally extreme so that they always exceed the priority values assigned during routing configuration.” “Applying a penalty instead of removing the route altogether preserves redundancy.”
Ve en uç durumda:
“Cloudflare always attempts to send traffic over available tunnel routes with the highest priority… even when all configured tunnels are in an unhealthy state.”
Route önceliği
- Düşük değer kazanır.
- Değerler eşitse ECMP devreye girer (hash: kaynak+hedef IP, TCP/UDP’de portlar da).
- Longest-prefix match her şeyi yener: “A more specific static route (like
/30) always takes precedence over a less specific one (like/29), regardless of tunnel priority.” - Eşitlikte statik route BGP’yi yener.
- Route eşleşmezse: public adres İnternet’e çıkar, private adres (RFC 1918 / CGNAT) düşürülür.
DDoS katmanları ve çalışma sırası
“1. DDoS managed rulesets → 2. Advanced TCP Protection → 3. Advanced DNS Protection → 4. Cloudflare Network Firewall”
- Network-layer managed ruleset — “always enabled and cannot be turned off”. Yalnızca Magic Transit ve Spectrum Enterprise müşterileri hassasiyet ve aksiyonu değiştirebiliyor.
- Advanced TCP Protection (
flowtrackd) — “a stateful TCP inspection engine used to detect and mitigate sophisticated out-of-state TCP attacks such as randomized and spoofed ACK floods or SYN and SYN-ACK floods.” Veri merkezleri arasında bağlantı takip edebiliyor. - Advanced DNS Protection — “the protection system only analyzes DNS over UDP (it does not include DNS over TCP).”
- Programmable Flow Protection — UDP yükünü eBPF ile inceleyen, beta ve ayrı eklenti.
Advanced sistemler yeni müşterilerde otomatik olarak Monitor modunda açılıyor ve eşikleri yedi günlük trafiğin 95. persentilinden hesaplayıp her 10 dakikada yeniden hesaplıyor. Dürüst not, Cloudflare’in kendi cümlesi: “Customer visibility into the calculated thresholds is not available.”
Ne zaman kullanılır, ne zaman kullanılmaz
Uygun olduğu işler
- HTTP olmayan servisleri korumak: oyun sunucusu, VoIP/SIP, SSH, RDP, veritabanı portları, kendi VPN’in
- Kendi IP bloğunu koruyarak taşınmak — müşterilerin IP’yi biliyorsa değiştirmek istemezsin
- Bir veri merkezinin veya şube ağının tamamını tek kapıdan geçirmek
- Saldırı anında hızlı devreye alma: “Cloudflare can significantly accelerate this timeline during active-attack scenarios.”
- On-demand model: normalde kendi ISP’nden akan trafiği yalnızca saldırı sırasında Cloudflare’e çevirmek
Uygun olmadığı işler
- Tek bir web sitesi korumak.
/24’ün, BGP’n ve Enterprise sözleşmen yoksa bu ürün senin için değil — WAF, DDoS for Web ve CDN zaten aynı korumayı HTTP katmanında ücretsiz veriyor. - Çin. Tek cümlelik ve net: “Cloudflare’s China Network does not yet support Magic Transit.”
- Hızlı sonuç isteyen projeler. Pre-flight sonrası bile “Cloudflare applies configurations to the global network, which takes around one day to roll out.” CNI eklersen “typically takes two to four weeks”. Türkiye’de gerçekçi bir proje 4–8 hafta.
- Türkiye’de veri yerelleştirme gerekçesiyle. Regional Services’in Turkey bölgesi yalnızca HTTPS içindir; Magic Transit bu özelliği hiç kullanmaz (aşağıda ayrıntı).
- L7 koruma beklentisi. Magic Transit paket katmanında çalışır; HTTP isteğinin içindeki SQL injection’ı görmez. Onun için ayrıca WAF gerekir.
- Fragmentli trafiğe kural yazmak. Cloudflare parçaları birleştirip inceliyor, ama “you cannot create firewall rules for fragments.”
Somut örnekler
1. Oyun sunucusu — UDP flood altında
Bir oyun sunucusu UDP 7777’de çalışıyor. CDN/WAF bu trafiği hiç görmez. Magic Transit ile
/24’ün duyurulur, UDP flood kenarda süzülür, temiz paketler GRE tünelinden iner.
Network Firewall’da minimal izinli protokol kümesi (dokümandaki örnek): {ESP, TCP, UDP, GRE, ICMP}.
HOPOPT (protokol 0) bloklanması öneriliyor.
2. On-demand: normalde kendi ISP’n, saldırıda Cloudflare
Network Flow ile trafik eşiği izlenir, eşik aşılınca prefix duyurusu otomatik açılır:
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/addressing/prefixes/$PREFIX_ID/bgp/prefixes/$BGP_PREFIX_ID" \
--request PATCH --json '{ "on_demand": { "advertised": true } }'
Gereken token izni: Magic Transit Write, IP Prefixes: Write veya
IP Prefixes: BGP On Demand Write.
3. Bölgesel yönlendirme
Statik route’lar dokuz bölgeye kısıtlanabilir: AFR, APAC, EEUR, ENAM, ME, OC, SAM, WEUR, WNAM. Avrupa trafiğini Frankfurt veri merkezine, Amerika trafiğini Ashburn’e indirebilirsin.
4. Prefix’i güvenle geri çekmek
Yanlış yapılırsa blackhole üretiyor. Doğru sıra:
- Aynı uzunlukta prefix’i kendi ISP’nden duyur (“Using identical prefix lengths from both Cloudflare and your ISP prevents path hunting.”)
- 5–10 dakika bekle
- Cloudflare’den geri çek
- “Allow at least 15 minutes before considering the migration complete.”
| İşlem | Cloudflare içinde | Global İnternet’te |
|---|---|---|
| Prefix duyurusu | 1–2 dakika | 2–5 dakika |
| Prefix geri çekme | 1–2 dakika | 2–15 dakika (BGP path hunting) |
Demo 1: Ubuntu’da anycast IPsec tünel ucu
Adım 1 — Health check hedefini ayarla
curl --request PUT \
"https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/magic/ipsec_tunnels/$TUNNEL_ID" \
--header "Authorization: Bearer $CF_TOKEN" \
--header "Content-Type: application/json" \
--data '{ "health_check": { "enabled": true, "target": "172.64.240.252",
"type": "request", "rate": "mid" } }'
Adım 2 — strongSwan kurulumu
sudo apt-get install strongswan -y
strongswan --version
ip -br addr
Adım 3 — Anycast için kritik ayarlar
/etc/strongswan.conf:
charon {
load_modular = yes
install_routes = no
install_virtual_ip = no
plugins { include strongswan.d/charon/*.conf }
}
include strongswan.d/*.conf
/etc/ipsec.conf — bu dosyadaki üç satır demonun özü:
conn %default
ikelifetime=24h
rekey=yes
reauth=no
keyexchange=ikev2
authby=secret
dpdaction=restart
closeaction=restart
conn cloudflare-ipsec
auto=start
type=tunnel
fragmentation=no
leftauth=psk
left=%any
leftid=<TUNNEL_ID>.<ACCOUNT_ID>.ipsec.cloudflare.com
leftsubnet=0.0.0.0/0
right=<CLOUDFLARE_ANYCAST_IP>
rightid=<CLOUDFLARE_ANYCAST_IP>
rightsubnet=0.0.0.0/0
rightauth=psk
ike=aes256-sha256-ecp384!
esp=aes256-sha256-ecp384!
replay_window=0
mark_in=42
mark_out=42
leftupdown=/etc/strongswan.d/ipsec-vti.sh
keyexchange=ikev2— zorunlu, IKEv1 desteklenmiyorecp384— DH group 20, Cloudflare’in tek grup kullanmayı önerdiği grupreplay_window=0— anti-replay kapalı. Anycast’te paketler farklı Cloudflare sunucularından geleceği için açık bırakılırsa tünel sürekli flap eder
Adım 4 — VTI arayüzü ve policy-based routing
/etc/strongswan.d/ipsec-vti.sh (chmod +x unutma):
#!/bin/bash
set -o nounset
set -o errexit
VTI_IF="vti0"
case "${PLUTO_VERB}" in
up-client)
ip tunnel add "${VTI_IF}" local "${PLUTO_ME}" remote "${PLUTO_PEER}" mode vti \
key "${PLUTO_MARK_OUT%%/*}"
ip link set "${VTI_IF}" up
ip addr add 172.64.240.252/32 dev vti0
sysctl -w "net.ipv4.conf.${VTI_IF}.disable_policy=1"
sysctl -w "net.ipv4.conf.${VTI_IF}.rp_filter=0"
sysctl -w "net.ipv4.conf.all.rp_filter=0"
ip rule add from 172.64.240.252 lookup viatunicmp
ip route add default dev vti0 table viatunicmp
;;
down-client)
ip tunnel del "${VTI_IF}"
ip rule del from 172.64.240.252 lookup viatunicmp
ip route del default dev vti0 table viatunicmp
;;
esac
/etc/iproute2/rt_tables sonuna 200 viatunicmp ekle.
PBR neden zorunlu, Cloudflare’in kendi gerekçesi: “Without it, the ICMP replies to the health probes sent by Cloudflare will be returned through the Internet, instead of the same IPsec tunnel.”
sudo ipsec start
sudo ipsec statusall | head -30
ip rule show
ip route show table viatunicmp
ip -s link show vti0
Adım 5 — Tünelin gerçekten paket taşıdığını gör
sudo tcpdump -ni any esp -c 20
Aynı anda başka bir bölmede Cloudflare tarafından gelen health check’leri izle:
sudo tcpdump -ni vti0 icmp -c 20
Demo 2: MSS clamp’i atla, paketlerin nasıl kaybolduğunu gör
Bu demo tek bir soruyu cevaplıyor: “Küçük istekler çalışıyor, büyük dosya yüklemesi takılıyor” neye benziyor? Magic Transit onboarding’inin en sık battığı adım bu ve Cloudflare bunu “hard-to-debug connectivity issues” diye tarif ediyor.
Magic Transit hesabı gerekmiyor — aynı fiziği iki Ubuntu makinesi (veya bir makine + bir VM) arasında kuracağın GRE tüneliyle birebir üretebilirsin.
Adım 1 — İki uç arasında GRE tüneli kur
A sunucusunda (203.0.113.10):
sudo ip tunnel add gre1 mode gre local 203.0.113.10 remote 198.51.100.20 ttl 255
sudo ip link set gre1 up
sudo ip addr add 10.10.10.1/30 dev gre1
ip -d link show gre1
B sunucusunda (198.51.100.20):
sudo ip tunnel add gre1 mode gre local 198.51.100.20 remote 203.0.113.10 ttl 255
sudo ip link set gre1 up
sudo ip addr add 10.10.10.2/30 dev gre1
ping -c 3 10.10.10.1
Adım 2 — Küçük paketin çalıştığını, büyüğün düştüğünü kanıtla
ping ile parçalanmayı yasaklayıp (-M do) paket boyutunu artır:
ping -M do -s 1400 -c 2 10.10.10.2 # geçer
ping -M do -s 1448 -c 2 10.10.10.2 # tam sınır: 1448 + 28 = 1476
ping -M do -s 1472 -c 2 10.10.10.2 # düşer — "Frag needed and DF set"
Adım 3 — TCP’de aynı arıza, ama sessiz
ICMP hatayı söylüyor. TCP’de ise bağlantı kurulur, küçük istekler döner, büyük gövde asılı kalır. Gerçek arızanın kılığı bu.
B sunucusunda büyük bir dosya sun:
head -c 5M /dev/urandom > /tmp/buyuk.bin
cd /tmp && python3 -m http.server 8099
A sunucusundan iste:
curl -s -o /dev/null -w 'kucuk: %{http_code} %{time_total}s\n' http://10.10.10.2:8099/
curl -s -o /dev/null -w 'buyuk: %{http_code} %{time_total}s\n' --max-time 20 \
http://10.10.10.2:8099/buyuk.bin
Aynı anda paketleri izle:
sudo tcpdump -ni gre1 'tcp port 8099' -c 40
Adım 4 — MSS clamp’i uygula ve düzelt
# Her iki sunucuda da
sudo iptables -t mangle -A FORWARD -o gre1 -p tcp --tcp-flags SYN,RST SYN \
-j TCPMSS --set-mss 1436
sudo iptables -t mangle -A OUTPUT -o gre1 -p tcp --tcp-flags SYN,RST SYN \
-j TCPMSS --set-mss 1436
sudo iptables -t mangle -L -n -v
Aynı testi tekrarla:
curl -s -o /dev/null -w 'buyuk: %{http_code} %{time_total}s\n' --max-time 20 \
http://10.10.10.2:8099/buyuk.bin
Adım 5 — SYN paketindeki MSS değerini gözle doğrula
sudo tcpdump -ni gre1 'tcp[tcpflags] & tcp-syn != 0' -vv -c 4
Çıktıda options [mss 1436,...] görürsün. Clamp’ten önce burada 1460 yazıyordu.
Ölçüm tablosu
| Ölçüt | Değer |
|---|---|
gre1 arayüzünün MTU’su | |
-M do ile geçen en büyük payload | |
| Clamp öncesi büyük dosya isteğinin sonucu | |
| Clamp öncesi retransmission sayısı | |
| Clamp sonrası indirme süresi | |
| SYN paketindeki MSS (öncesi / sonrası) |
Fiyatlandırma
Magic Transit için yayımlanmış hiçbir sayısal fiyat yok. 1 Eylül 2026’da doğrulandı.
Bulunabilen tek resmî fiyat ifadesi, plan karşılaştırma tablosundaki satır:
| Özellik | Free | Pro | Business | Enterprise |
|---|---|---|---|---|
| L3 Network DDoS (Magic Transit) | yok | yok | yok | Custom Pricing |
Kaynak: cloudflare.com/plans · Erişim: 1 Eylül 2026
Ürün sayfasındaki tek eylem çağrısı “Talk to an expert”. Dokümantasyon tarafında da fiyat yok, yalnızca kapı: “Enterprise-only” ve “not a self-serve product”.
Faturalama hakkında dokümante edilen tek mekanik kural prefix sayımıdır:
“Cloudflare measures the Magic Transit prefix count based on the number of BGP prefixes you define. Each prefix is billed separately, even if they overlap.” “There is no billing limit on the accepted prefix sizes.”
Saldırı trafiği faturaya girmiyor:
“Cloudflare’s billing systems automatically exclude DDoS attack traffic from your usage.”
Lisanslama ve hukuki çerçeve
Magic Transit tescilli bir hizmettir; açık kaynak bileşeni yoktur ve Cloudflare Hizmet Şartlarına tabidir. Kullanımı bir Enterprise sözleşmesi gerektirir.
BGP ve LOA sorumluluğu sende. Cloudflare senin adına prefix duyurabilmek için transit sağlayıcılarına bir yetki belgesi sunuyor:
“Draft a Letter of Agency (LOA) that identifies the prefixes you want to advertise and authorizes Cloudflare to announce them. Our transit providers require the LOA so they can accept the routes we advertise on your behalf.” “If you are an Internet service provider (ISP) and advertising prefixes on behalf of a customer, you need an LOA for the ISP and for the customer.”
Veri yerelleştirme — Türkiye için kritik ayrım. Cloudflare’in Data Localization dokümanı bir Turkey bölgesi listeliyor:
“Turkey — Cloudflare will only use data centers that are physically located within Turkey to decrypt and service HTTPS traffic.”
Ama aynı belgenin Network Services matrisi şunu diyor:
| Ürün | Geo Key Manager | Regional Services | Customer Metadata Boundary |
|---|---|---|---|
| Magic Transit | ⚫️ | ⚫️ | ✅ |
| Cloudflare Network Firewall | ⚫️ | ⚫️ | ✅ |
| Cloudflare WAN | ⚫️ | ⚫️ | ✅ |
Efsanede ⚫️ şu demek: “Not applicable — this product does not interact with this DLS feature.”
Bölge ataması belgelenmemiş. Magic Transit’in dokuz bölge kodu arasında Türkiye ayrı bir
bölge değil; İstanbul trafiğinin EEUR mi ME mi altına düştüğü Cloudflare tarafından
yayımlanmıyor. Ölçerek doğrulanabilir: https://cloudflare.com/cdn-cgi/trace çıktısındaki colo
alanı, sonra Network Analytics’te Source data center kırılımı.
Sık yapılan hatalar
MSS clamp’i unutmak veya yanlış yere koymak
En pahalı hata. Belirti: küçük istekler çalışır, büyük POST ve TLS handshake takılır. Yön kuralını hatırla — clamp uygulandığı yönün tersindeki paketleri etkiliyor. Tünel içinde tünel varsa clamp hiç işe yaramaz, iç arayüzün MTU’sunu düşürmek gerekir.
ICMP’yi bloklamak
Health check’ler ICMP taşıyor. Network Firewall’da ICMP’yi topluca bloklarsan tünellerin ölür. Doğru sıra: önce Allow · ICMP · Source: Cloudflare IP ranges, sonra block kuralı.
Stateful firewall’ın ICMP Reply’ları düşürmesi
Panel “down” diyor, trafik akıyor, hata oranı %100. Sebep: Palo Alto, Check Point, Cisco ve Fortinet gibi cihazlar eşleşen bir ICMP Request bulamayınca yanıtı “out-of-state” sayıp düşürüyor. Çözüm tek satır: health check tipini Request’e al.
Anti-replay’i açık bırakmak
Anycast IPsec’te paketler farklı Cloudflare sunucularından geliyor; replay penceresi bozulunca
tünel sürekli flap eder. Cisco Meraki, Velocloud ve AWS VPN Gateway’de elle kapatmak gerekiyor.
DPD aksiyonu da restart olmalı: “This ‘restart’ option ensures that the connection can recover
in the event that a Cloudflare server goes offline.”
Yönetim erişimini kilitleyen kural sırası
Kurallar ilk eşleşende duruyor. 10. sıradaki bir catch-all Block varsa, yeni izin kuralı
10’dan önce eklenmeli. Ve değişiklikler hızlı yayılıyor — “Fast propagation of rule changes
in less than a minute” — yani hatan da bir dakikada global oluyor.
PBR yerine default route kullanmak
Egress modunda tünel hedefi anycast IP’lerine giden route’lar underlay transit yolundan geçmeli. Aksi hâlde tünel kendi içine yönlenir. Ayrıca: “Cloudflare only accepts egress traffic from authorized prefixes.”
RPKI/ROA’nın onboarding ile uyuşmaması
“When using Route Origin Authorizations (ROAs)… the prefix and originating ASN must match the onboarding submission.” Cloudflare kendi ASN’ini (AS13335) prepend ettiği için ROA’nın origin ASN ile tutarlı olması gerekiyor. Kontrol: rpki.cloudflare.com
“Network Firewall’da allow yazdım ama trafik hâlâ düşüyor”
Dört mitigasyon katmanı var ve Network Firewall sonuncusu. DDoS managed ruleset veya Advanced
TCP Protection paketi ondan önce düşürmüş olabilir. Teşhis: Network Analytics → Action = Drop
→ Mitigation system kırılımı. Her katmanın kendi bypass mekanizması var.
Azure link-local tuzağı
“If the tunnel is to an Azure VPN gateway, the tunnel interface address must not be in the link-local range. Azure will not initiate BGP sessions to peers using link-local addresses. Use an RFC 1918 address.”
Sıkça sorulan sorular
- Kendi /24'üm yok. Magic Transit kullanabilir miyim?
- Evet, ama BYOIP'siz. Birebir: “To use Magic Transit, you need to own a publicly routable IP address block with a minimum size of
/24. If you do not own a/24address block, you can use Magic Transit with a Cloudflare-owned IP address.” Leased IP kullanırsan LOA ve IRR adımları düşer. Ama iki bedeli var: Cloudflare Magic Transit Egress'i otomatik açar (çıkış trafiğin de Cloudflare'den geçer, PBR kurman gerekir) ve “You cannot use Magic Transit on-demand with Cloudflare leased IPs.” - Neden /24? Daha küçüğü olmaz mı?
- İnternet'in kendisi kabul etmediği için. Birebir: “only prefixes up to
/24are accepted for onboarding because longer prefixes (like/25,/26) are not globally routable.” Ama bu yalnızca duyuru için geçerli. Tünel yönlendirmesi daha ince olabilir: “Cloudflare can route prefixes within that/24to different tunnel endpoints. For example, you can sendx.x.x.0/29to Data Center 1 andx.x.x.8/29to Data Center 2.” - Bir /16 duyuruyorum. İçindeki /24'ler ayrı ayrı mı faturalanıyor?
- Evet. Birebir: “Cloudflare measures the Magic Transit prefix count based on the number of BGP prefixes you define. Each prefix is billed separately, even if they overlap. For example, both a
/16and any/24within it are counted individually.” Ters yönde bir tuzak daha var: bir/20'yi onboard ettiysen içindeki/24'leri ayrı BGP prefix olarak tanımlamadan tek tek duyuramazsın. - GRE mi IPsec mi?
- Cloudflare'in kendi tablosu: GRE'de şifreleme yok, kimlik doğrulama yok, kurulum daha basit, “Best for: trusted networks, CNI connections.” IPsec'te şifreleme var, PSK ile kimlik doğrulama var, “Best for: Internet-facing connections requiring encryption.” IPsec zorunlu olarak IKEv2 ve PSK; DH grubu olarak group 20 öneriliyor, post-quantum hibrit ML-KEM-768 + group 20 destekleniyor.
- MSS clamp değerini kaça ayarlamalıyım?
- Senaryoya göre değişiyor ve karıştırılması pahalı. GRE, ingress-only (DSR): edge router transit portlarında 1.436. GRE, ingress+egress: tünel iç arayüzünde 1.436. IPsec, ingress+egress: tünel iç arayüzünde 1.360. IPv6 (beta), DSR: 1.416. CNI Dataplane v1 üzerinden GRE: 1.476. CNI Dataplane v2: clamp gerekmiyor (“does not require an MSS clamp”). Matematik: GRE IPv4 kapsüllemesi 24 bayt ekler (20 IPv4 + 4 GRE), 1500 − 24 = 1.476 MTU, ondan 40 bayt TCP/IP başlığı düşünce 1.436 MSS.
- MSS clamp'i nereye koyacağımı karıştırıyorum.
- Çünkü sezgiye ters çalışıyor. Birebir: “MSS clamping affects TCP packet payload sizes flowing in the opposite direction versus where the clamp is applied.” Ayrıca tünel-içinde-tünel senaryosunda hiç işe yaramıyor: “MSS clamp has no impact on the outer packets of the encapsulated traffic… you need to lower the MTU of the internal tunnel interface further.” Ve zamanlama kritik: “You must put the appropriate MSS clamps in place before routing changes are made.”
- Tünelim panelde “down” görünüyor ama trafik akıyor.
- Üç ayrı sebebi olabilir, üçü de belgeli. (1) Stateful firewall: Cloudflare varsayılan olarak ICMP Reply gönderiyor; “Stateful firewalls (such as Palo Alto Networks, Check Point, Cisco, and Fortinet) drop the health check packets… When no matching request exists, firewalls drop the reply as 'out-of-state'.” Çözüm: health check tipini Request'e al. (2) Senkronizasyon yok: “Cloudflare does not synchronize health checks among global network servers. A tunnel can be healthy in one data center and degraded in another at the same time. This is normal behavior, not an outage.” (3) Health check kapalı: “If you disable tunnel health checks, your tunnels appear 100% down… even when working.”
- Tünel bozulunca trafik ne kadar sürede diğerine geçiyor?
- Aşağı hızlı, yukarı yavaş. Degraded: “at least 0.1% of tunnel health checks fail in the previous five minutes (with at least two failures)”. Down: “all health checks of at least three samples in the last one second fail”. Route silinmiyor, ceza ekleniyor: degraded
+500.000, down+1.000.000priority. Geri dönüş kasıtlı olarak yavaş: “This transition may take up to 30 minutes.” Ve son çare mantığı: “Cloudflare always attempts to send traffic over available tunnel routes with the highest priority… even when all configured tunnels are in an unhealthy state.” - ICMP'yi tamamen bloklarsam ne olur?
- Tünellerin ölür. Birebir: “If you block all ICMP traffic, you will also block Cloudflare's endpoint health checks. When blocking ICMP traffic, ensure your rules first allow ICMP sourced from Cloudflare public IPs to your prefix endpoint IPs before applying a block ICMP rule.” Kural sırası burada tek belirleyici — ilk eşleşen kazanıyor.
- Prefix'i geri çekince trafiğim kayboldu.
- BGP path hunting. Birebir: “a direct BGP withdrawal action carries the risk of a stuck BGP route… Core routers that missed the withdrawal announcement continue forwarding traffic to a now-inactive next-hop (what is known as a blackhole).” Yayılma süreleri: duyuru 2–5 dakika, geri çekme 2–15 dakika. Doğru sıra: önce aynı uzunlukta prefix'i kendi ISP'nden duyur, 5–10 dakika bekle, sonra Cloudflare'den çek, ve “Allow at least 15 minutes before considering the migration complete.”
- Mitigasyon ne kadar sürüyor? SLA var mı?
- Yayımlanan performans ifadesi var, sözleşmesel taahhüt yok. Dokümanda: “Up to three seconds on average for the detection and mitigation of L3/4 DDoS attacks” ve Advanced TCP/DNS Protection için “Immediate mitigation.” Ama Magic Transit dokümantasyonunun tamamında
time to mitigateiçin sözleşmesel bir sayı geçmiyor. Genel plan tablosunda Business ve Contract için %100 uptime SLA satırı var, ancak bu satırın Magic Transit'i kapsadığı hiçbir yerde yazmıyor — sözleşmende teyit ettir. - Cloudflare'in kapasitesi tam olarak kaç Tbps?
- Üç resmî sayfa üç farklı rakam veriyor. Magic Transit ürün sayfası: “With 534 Tbps of network capacity, 23x greater than the largest DDoS attacks ever recorded.” Network Services sayfası: “DDoS protection with 388 Tbps of network capacity.” Referans mimari: “offering hundreds of Tbps in mitigation capacity.” Üçü de 1 Eylül 2026'da erişildi. Bir rakamı tek doğru olarak kabul etme.
- Türkiye'den CNI ile bağlanabilir miyim?
- Evet — İstanbul'da üç tesis listeleniyor. Cloudflare'in CNI lokasyon PDF'inden birebir: Turkcell/Superonline Istanbul (device diversity yok, dataplane v1 ve v2), Equinix IL2 (device diversity destekleniyor, v2), Equinix IL2 (diversity yok, v1), Radore Istanbul (diversity yok, v1). Türkiye'de device diversity'si olan tek tesis Equinix IL2 ve Dataplane v2 sunuyor — yani çift yönlü 1500 bayt MTU, GRE gerekmiyor, MSS clamp gerekmiyor. Diğerleri için Cloudflare'in uyarısı geçerli: “Single-device deployments will experience full service disruption during maintenance.” Not: İzmir bir Cloudflare PoP'u ama CNI tesisi olarak listelenmiyor; ikisi farklı şey.
- CNI'ye 100G devre çektim, neden 1 Gbps alıyorum?
- Çünkü Magic Transit yönündeki upstream ayrı sınırlanmış. Cloudflare'in throughput tablosundan: Cloudflare→müşteri yönü 10G/100G devrede tam hızda, ama müşteri→Cloudflare (Magic Transit/WAN) yönü Dataplane v1'de GRE tüneli başına 1 Gbps, Dataplane v2'de CNI bağlantısı başına 1 Gbps. Yüksek hacimli egress için tünel çoğullaman gerekiyor. Ayrıca CNI'nin SLA'sı yok: “In some Cloudflare data centers the recovery time could be several days” ve “You are required to maintain alternative Internet connectivity as a backup for all CNI implementations.”
- Türkiye Regional Services var, Magic Transit trafiğim Türkiye'de kalır mı?
- Hayır. Bu, sayfada en sık yapılan yanlış çıkarım. Data Localization dokümanında Turkey bölgesi gerçekten var: “Cloudflare will only use data centers that are physically located within Turkey to decrypt and service HTTPS traffic.” Ama aynı belgenin Network Services matrisi Magic Transit, Cloudflare Network Firewall ve Cloudflare WAN için Regional Services'i ⚫️ “Not applicable — this product does not interact with this DLS feature” olarak işaretliyor. Bu üç üründe kullanılabilen tek veri yerelleştirme özelliği Customer Metadata Boundary. Türkiye Regional Services yalnızca L7/HTTPS içindir.
- Magic Transit Çin'de çalışıyor mu?
- Hayır. Birebir ve tek cümle: “Cloudflare's China Network does not yet support Magic Transit.”
İlgili servisler
- Network FirewallKurumsal WAN trafiği için bulut tabanlı, stateful network firewall.
- DDoS ProtectionL3/L4 ağ katmanı DDoS savunması ve sınırsız (unmetered) koruma politikası. HTTP katmanı için DDoS for Web.
- Network InterconnectVeri merkezini Cloudflare’e fiziksel veya sanal private hatla bağlar.
- Network FlowKendi router’larından gelen NetFlow/sFlow/IPFIX verisiyle ağ trafiğini görünür kılar. Eski adı Magic Network Monitoring.
- Cloudflare WANŞube, veri merkezi ve cloud ağlarını Cloudflare backbone’u üzerinden birbirine bağlar.
- SpectrumHTTP olmayan TCP/UDP servislerini (SSH, oyun sunucusu, e-posta) Cloudflare arkasına alır.
Bu sayfadaki fiyat ve özellik bilgileri 1 Eylül 2026 tarihinde Cloudflare’in resmî kaynaklarından doğrulanmıştır. Cloudflare fiyatlandırmasını önceden haber vermeden değiştirebilir; bağlayıcı bilgi içinresmî sayfaya bakın.