Pourquoi une seule étape ne suffit jamais
Chaque étape de protection DDoS est aveugle à quelque chose. Un réseau assez grand pour avaler un flot de 7 Tb/s mesure des bits par seconde — il n'a aucune idée de ce qu'est un handshake Minecraft. Un filtre qui lit parfaitement le protocole Minecraft est inutile si le flot a saturé votre lien avant qu'il ne s'exécute. Les deux modes de défaillance sont opposés, et c'est pourquoi une vraie protection est une séquence plutôt qu'un produit : chaque couche retire ce que la suivante ne peut pas voir, et transmet le reste.
Le diagramme ci-dessous est cette séquence, avec une attaque poussée d'un bout à l'autre — dimensionnée sur la plus grande attaque volumétrique que ce réseau a réellement atténuée.
Une attaque, six étapes
Une attaque de 7 Tb/s suivie depuis Internet jusqu'à un backend Minecraft. Chaque étape retire ce que l'étape suivante ne peut pas voir.
Absorption anycast
Cloudflare Spectrum
7Tbpsentrant−6.6 Tbps · 94%Le flot brut arrive sur le réseau anycast de Cloudflare et se répartit sur plus de 330 villes. Les déchets volumétriques L3/L4 — réflexion, amplification, UDP usurpé — meurent ici, sur un réseau doté d'une capacité publiée de plus de 500 Tb/s.
Mitigation L4
Papyrus · AS216013
≤ 600 Gbps
400Gbpsentrant−202 Gbps · 51%Ce qui survit, c'est du TCP qui a au moins l'air de vouloir une connexion. Le filtrage SYN au niveau du noyau et les limites de débit par source rejettent les flots de connexions avant qu'ils n'atteignent l'espace utilisateur.
Mitigation L7
Papyrus · AS216013
198Gbpsentrant−170 Gbps · 86%Les connexions qui terminent un handshake mais ne parlent jamais un Minecraft valide — scanners, flots L7 génériques, protocole malformé — sont rejetées dès que la charge utile refuse de s'analyser.
Antibot conscient du protocole
Cryo
28Gbpsentrant−27 Gbps · 96%Désormais, tout ce qui reste parle couramment Minecraft. Cryo analyse le handshake lui-même : nom d'hôte, version du protocole, cadence de connexion, ASN d'origine et historique alimentent tous un verdict. L'auto-UAM resserre les limites à mesure que l'attaque grossit.
Parcours de vérification
CryoLimbo
1Gbpsentrant−646 Mbps · 62%Le résidu, ce sont les bots de contournement — des clients écrits spécifiquement pour paraître humains à un antibot. Ils sont déroutés vers le limbo et doivent le prouver par des contrôles de physique et de comportement. Les vrais joueurs pris ici réussissent et poursuivent.
Trafic propre
Votre serveur
400MbpsarriveCe qui arrive, ce sont des joueurs. Les vraies IP clientes sont livrées via le protocole PROXY, si bien que les bannissements et les plugins par IP se comportent exactement comme sur une connexion directe. L'origine n'a jamais vu les 6,99 Tb/s restants.
Étape 1 — L'absorption, là où le volume cesse d'être un problème
La première question de toute attaque relève de l'arithmétique, pas de la sécurité : le tuyau est-il plus gros que le flot ? Si 7 Tb/s arrivent sur un lien de 10 Gb/s, le lien est saturé et tout ce qui se trouve derrière est hors ligne — le serveur, son pare-feu et le moindre plugin qu'il exécute sont tous du mauvais côté d'une route déjà bloquée. Rien de ce que vous configurez sur la machine n'y change quoi que ce soit.
C'est toute la raison pour laquelle l'absorption doit se produire sur un réseau doté de plus de capacité que l'attaquant ne peut en générer. Le trafic entre par le réseau anycast de Cloudflare Spectrum, où un flot unique est réparti sur plus de 330 villes et absorbé par un réseau à la capacité publiée de plus de 500 Tb/s. En volume, cette couche fait presque tout le travail — 94 % du flot dans l'exemple — et en utilité, la partie la moins intéressante : elle retire le trafic qui n'a jamais prétendu être autre chose.
Étape 2 — Mitigation L4, des connexions sans contenu
Ce qui survit à l'absorption, c'est du trafic qui veut au moins ouvrir une connexion. C'est le niveau des flots SYN : des quantités énormes de tentatives de connexion, souvent usurpées, conçues pour épuiser l'état de suivi de connexions plutôt que la bande passante. Le filtrage a lieu dans le noyau, sur notre propre réseau (AS216013), avant que quoi que ce soit n'atteigne l'espace utilisateur, avec des limites de débit par source et des budgets de connexion.
La couche 4 sait qu'une connexion est arrivée. Elle ne sait pas ce que la connexion a dit — elle ne peut pas distinguer un joueur d'un bot, car à ce niveau ni l'un ni l'autre n'a encore parlé. Tout ce qui passe est une connexion TCP d'apparence légitime, et à partir d'ici les questions cessent de porter sur le volume.
Étape 3 — Mitigation L7 : est-ce seulement le jeu ?
Maintenant le trafic est lu. Une grande partie de ce qui termine un handshake ne parle pas Minecraft du tout : scanners à l'échelle d'Internet, flots HTTP génériques visant tout ce qui répond, et déchets malformés espérant faire planter quelque chose. Rien de tout cela ne survit au contact d'un analyseur qui attend le protocole Minecraft et reçoit autre chose.
C'est la première couche avec laquelle un boîtier générique de "protection de jeu" peine, car elle exige d'implémenter réellement le protocole plutôt que de faire correspondre des formes de paquets. C'est aussi là que le volume chute suffisamment pour que le trafic restant soit véritablement dangereux — tout ce qui passe ce point parle la langue de votre jeu.
Étape 4 — L'antibot conscient du protocole, l'étape qui compte
Tout ce qui bouge encore parle désormais couramment Minecraft : handshakes valides, pseudonymes plausibles, versions de protocole correctes, en provenance de milliers d'adresses résidentielles et de centres de données. C'est l'attaque qui tue réellement les serveurs Minecraft, et elle est invisible pour toutes les couches précédentes — chaque connexion est individuellement indiscernable d'un vrai joueur qui se connecte.
- Conscience du nom d'hôte — une connexion qui demande un nom d'hôte que vous ne servez pas n'est pas un joueur qui a fait une faute de frappe, et elle est rejetée avant que quoi que ce soit d'autre ne s'exécute.
- Limites de cadence de connexion avec auto-UAM — des budgets par IP et globaux qui se resserrent automatiquement quand la cadence combinée de pings et de connexions grimpe, si bien que la réponse s'adapte à l'attaque au lieu d'être configurée à l'avance.
- Score de risque — pays d'origine, ASN, plage de centre de données, comportement protocolaire et historique se combinent en un verdict avant que la connexion ne soit autorisée à continuer.
- Gestion des pings et du MOTD — les flots de statut sont servis depuis le cache de l'edge au lieu d'être transmis à votre serveur, qui devrait y répondre plusieurs milliers de fois par seconde.
Dans l'exemple, cette couche retire 96 % de ce qui l'atteint — 26 Gb/s de trafic qui serait autrement arrivé au backend sous forme de tentatives de connexion d'apparence réelle. C'est le même moteur décrit en détail dans comment Cryo atténue une attaque.
Étape 5 — La vérification, pour les bots conçus pour passer l'étape 4
Un bot bien écrit étudie l'antibot. Il cadence ses connexions, utilise des noms plausibles, se connecte depuis des proxys résidentiels et ne fait rien qui soit scoré comme anormal — parce qu'il a été construit précisément pour cela. Le score seul ne peut pas l'attraper, et ce résidu est ce que les gens appellent les bots de contournement.
La dernière couche cesse donc de scorer et se met à demander. Les connexions suspectes sont déroutées vers CryoLimbo, un monde limbo léger, et doivent démontrer qu'elles sont un vrai client — des mouvements qui obéissent à la physique du jeu, des réponses correctes à l'état du serveur, un comportement qu'un bot headless doit véritablement implémenter plutôt que simplement imiter. Réussir coûte peu à un joueur et cher à un attaquant, et c'est tout le principe. Les vrais joueurs pris ici réussissent et poursuivent vers votre serveur, en général sans s'en apercevoir.
Ce qui arrive réellement
400 Mb/s de joueurs. Votre serveur voit les connexions qu'il aurait vues un jour calme, avec les vraies IP clientes livrées via le protocole PROXY, si bien que les bannissements, la détection d'alts et les plugins par IP se comportent exactement comme sur une connexion directe. Depuis l'intérieur du serveur, l'attaque n'est pas un problème plus petit — elle n'est pas visible du tout, raison pour laquelle le premier signe qu'en a un exploitant est généralement une alerte Discord plutôt qu'un pic de lag.
Les proportions méritent qu'on s'y arrête. La couche volumétrique a retiré 94 % du flot et les deux dernières couches en ont retiré moins de 0,4 % à elles deux — et pourtant ce sont ces deux-là qui décident si le serveur tient, car ce sont les seules capables de distinguer un bot d'un joueur. La capacité vous achète le droit d'avoir le problème intéressant. Elle ne le résout pas.
Où vivent les étapes compte autant que ce qu'elles font
Chaque couche ci-dessus s'exécute avant votre matériel, et c'est là le point structurel, pas un détail d'implémentation. Un plugin peut faire une version du travail de la couche 5, et certains le font bien — mais il s'exécute après que la connexion a déjà été acceptée, allouée et analysée par votre machine, il se bat donc du mauvais côté du lien. Ce compromis est développé dans antibot en edge vs antibot en plugin, et c'est pourquoi l'arrangement sensé est un edge devant avec un plugin derrière comme seconde couche, et non l'un à la place de l'autre.
Questions fréquentes
Comment fonctionne réellement la protection DDoS ?+
En filtrant le trafic là où la capacité dépasse celle de l'attaque, avant qu'il n'atteigne la cible. La protection est une série d'étapes, chacune attrapant ce que la précédente ne peut structurellement pas voir : un réseau immense absorbe le flot volumétrique brut, le filtrage de paquets rejette les flots de connexions, le filtrage protocolaire rejette le trafic qui n'est pas vraiment le jeu, et la vérification comportementale attrape les bots qui imitent les joueurs de façon convaincante. Aucune couche seule ne fait tout le travail.
Pourquoi un pare-feu ou un plugin ne peut-il pas arrêter une attaque DDoS ?+
À cause de leur emplacement. Si 7 Tb/s visent un lien de 10 Gb/s, le lien est saturé et rien de ce qui tourne de l'autre côté n'a voix au chapitre — le serveur est hors ligne, que ses règles de pare-feu soient parfaites ou non. Un plugin agit encore plus tard, après qu'une connexion a déjà coûté un emplacement, un thread et une connexion. Les deux sont utiles comme couches finales ; ni l'un ni l'autre ne peut être la première.
Quelle est la différence entre la protection DDoS de couche 4 et de couche 7 ?+
La couche 4 travaille sur les connexions : flots SYN, paquets usurpés, cadence brute de connexion. Elle peut vous dire qu'un million de connexions TCP sont arrivées, mais pas ce que l'une d'elles a dit. La couche 7 travaille sur ce que le trafic est réellement — pour Minecraft, s'il parle le protocole, quel nom d'hôte il a demandé et si la connexion se comporte comme un joueur. Les attaques de bots sont des problèmes de couche 7, raison pour laquelle un filtrage L4 seul les laisse passer sans obstacle.
Quelle quantité de trafic atteint réellement mon serveur pendant une attaque ?+
Dans l'exemple chiffré de cette page, 400 Mb/s sur 7 Tb/s — une réduction d'un facteur 17 500, l'origine ne voyant jamais les 6,99 Tb/s restants. Le rapport exact varie selon l'attaque, mais la forme reste constante : la couche volumétrique retire l'écrasante majorité en volume, et les dernières couches retirent le trafic qui aurait réellement fait tomber votre serveur.
Filtrer autant de couches ajoute-t-il de la latence pour les joueurs ?+
À peine mesurable, car les couches s'exécutent en ligne à la vitesse du lien plutôt que de mettre le trafic en file pour inspection. Les joueurs se connectent au point d'entrée anycast le plus proche — souvent un chemin plus court que d'atteindre votre serveur directement — et seules les connexions suspectes sont retenues pour vérification. Une connexion propre traverse chaque couche décrite ici sans s'arrêter à aucune.
Chaque couche de cette page tourne sur tous les forfaits, y compris le gratuit — les niveaux payants ajoutent de la capacité et du contrôle, pas de la protection. Créez un réseau gratuit et vous êtes derrière les six en cinq minutes environ.