Itnetic logo Itnetic Technologies
  • Pricing
  • Discord
Game protectionMinecraft serversBot joins, ping floods and connection attacks stopped before they reach your server. No plugin, no mod, nothing for players to install.Explore game protection →

For websites and APIs

  • DDoS ProtectionLayer-7 mitigation for attacks that look like real traffic.
  • Web CDNEdge caching on the network that filters your attacks.
  • PricingFree tier, then plans from €5/month.

How it works

  • The edge pipelineChallenge gate, behavioral signatures, WAF, rate limits and cache.
  • Logs & analyticsPer-request visibility and the exact verdict behind every block.
  • NetworkPoints of presence across Europe, North America and Asia Pacific.

Learn

  • GuidesPlain-English explainers on DDoS, WAFs, rate limiting and CDNs.
  • HTTP header checkGrade any site’s security headers in a few seconds.
  • FAQThe questions we get asked before people sign up.
  • ChangelogWhat shipped, and when.

Compare

  • vs Cloudflare
  • vs DDoS-Guard
  • vs CDN77
  • vs WEDOS
  • Status ↗
Log inUnder attack?
Game protectionDDoS ProtectionWeb CDNPricing
The edge pipelineLogs & analyticsNetwork
GuidesHTTP header checkFAQChangelogvs Cloudflarevs DDoS-Guardvs CDN77vs WEDOSStatus ↗
PricingDiscord
Log inUnder attack?

Learn · DDoS readiness

How to test your DDoS protection.

Nobody discovers their mitigation was misconfigured at a convenient hour. Here is how to verify every claim your protection makes — without renting an attack, and without taking your own site down.

Updated August 2, 2026 · Itnetic team — reviewed by Petr Chlíbek, founder

Key takeaways

  • Never buy an attack to test a defense. Booter and stresser services are criminal to use even against your own infrastructure, fund the botnets attacking everyone else, and answer none of the questions that matter.
  • Real failures are almost always configuration, not capacity: an origin IP still answering directly, a subdomain that never moved behind the edge, a rate limit that throttles your own mobile app first.
  • Test the six claims your protection makes one at a time — origin exposure, edge coverage, rate-limit behavior, what a real client sees, what evidence survives, and who does what at 02:00.
  • Re-test after every infrastructure change and on a calendar. A defense verified once is a defense verified for a configuration you no longer run.

A defense nobody has tested is a hypothesis

DDoS protection gets bought the way smoke alarms get bought: you install it, a light blinks, and you assume the rest. The difference is that a smoke alarm has a test button. Most mitigation setups get their first honest test from the attack itself, at whatever hour the attacker picked.

And when protection fails in practice, it is almost never because the network could not absorb the volume. It fails on configuration that looked perfectly correct on the day it was made:

  • The origin IP still answers directly, so the flood walks around the edge entirely.
  • One hostname — staging, mail, api-v1 — was never moved, and it resolves straight to the same server.
  • A rate limit sits at a number nobody ever compared against real traffic, and the first thing it throttles is your own mobile app.
  • Filtering is on-demand, and the person allowed to switch it on is asleep.
  • The attack is mitigated correctly, and afterwards there is nothing to show a customer, an insurer or your own board.

Not one of those is a capacity problem, and every one of them is findable on a quiet Tuesday afternoon.

Rule one: never rent an attack to test a defense

Search for a way to test DDoS protection and the first results will be services selling attack traffic by the minute, marketed as "IP stressers" or "load testers for your own server". Do not use them, for three reasons in ascending order of how much they should matter to you.

  1. It is a crime, and the "my own server" defense does not hold. Unauthorized impairment of computer systems is an offense under the UK Computer Misuse Act, the US Computer Fraud and Abuse Act and equivalent law across the EU. Even when the target is yours, the traffic crosses networks that are not, is generated from machines whose owners never consented, and terminates on infrastructure your hosting contract says you may not attack. Law-enforcement takedowns of these services routinely publish their customer databases; being in one is a bad afternoon.
  2. You are paying the people attacking everyone else. These services run on compromised routers, cameras and servers. Your test fee funds the botnet that shows up in someone else’s incident review — possibly, later, in yours.
  3. It answers a question you did not ask. What you buy is raw volume, and volume is the part your provider is best at and you have least control over. It tells you nothing about whether your rate limits are keyed correctly, whether your API clients survive a closed gate, or whether your origin is still exposed. The attacks that actually take sites down are application-layer attacks, and those are not what a booter sells.

Everything worth learning can be learned from targeted functional checks against your own infrastructure, plus authorized load testing you run yourself. That is the rest of this page.

What you are actually testing

Your protection makes six promises. Test them separately, because they fail separately.

The claimThe failure it hidesThe check
Attack traffic never reaches your originThe origin IP answers on its ownRequest the site by IP from off-network
All of your traffic is filteredA hostname resolving past the edgeEnumerate DNS for every name you own
Floods get rate-limitedLimits that never fire — or fire on customersA controlled burst against a canary path
Real visitors are not disturbedChallenge loops and broken machine clientsWalk your own funnel with the gate closed
You can see what was blockedNo usable evidence after the factReconstruct a window you caused yourself
Mitigation starts in secondsA human step nobody ownsA tabletop exercise with a clock running

Test 1 — Is your origin still reachable without the edge?

This is the test that finds something. An exposed origin makes every other defense optional for the attacker: they aim at the IP address and your filtering never sees the packets.

From a network that is not your office or your CI runner, resolve nothing and ask the server directly — curl -sI --resolve yourdomain.com:443:ORIGIN_IP https://yourdomain.com — and see what comes back. A page means the door is open. Repeat on port 80, and on any admin or application port your stack exposes.

Then close it: restrict the origin firewall to your provider’s edge ranges, so anything else is dropped rather than answered. And note what a correct result looks like when you re-test — a timeout, not a 403. A refusal proves the packet arrived, which means an attacker can still make your server spend resources deciding to say no.

Finding the address is the other half of this exercise, and attackers have more routes to it than direct DNS: historical DNS records, certificate transparency logs, mail headers, and error pages that leak an internal hostname. The full sweep is in how to hide your origin IP address — run it as part of this test, not instead of it.

Test 2 — Is every hostname actually behind the edge?

Protection applies to the names you pointed at it, and to no others. Take an inventory of every A, AAAA and CNAME record in every zone you own, including the ones inherited from a previous team, and sort each into one of two columns: behind the edge, or not.

The ones that are usually in the wrong column: staging, dev, old, legacy, vpn, direct, origin, cpanel, regional variants, and the marketing microsite somebody set up for a campaign in 2023. Anything that resolves to the origin address is a published bypass, and an attacker enumerating your DNS will find it in seconds.

While you are there, confirm the edge is doing more than forwarding. Request a static asset twice and check the cache header on the second response: a MISS every time means your origin is still serving every byte, and under load it will fall over exactly as fast as it would have without a CDN in front of it. Cacheable traffic served from the edge is not a performance nicety — it is capacity you get to keep during an attack.

Test 3 — Do your rate limits fire, and do they answer in a language your clients speak?

Rate limits are the most commonly misconfigured control in the stack, and their failure modes point in both directions: a limit set too high never triggers, and a limit keyed to a shared IP address throttles an entire office, mobile carrier or university behind one NAT.

Run a modest, controlled burst — a few hundred requests over a minute from a single source, which is well inside what your origin serves on a normal day — against a canary path you created for the purpose. Not your login endpoint, and not from the office IP you need to keep working. Then check four things:

  • It trips where you think it does. If the documented limit is 100 requests a minute and nothing happens at 400, the rule is not doing what the dashboard says.
  • The response is a 429 with Retry-After. Not an HTML challenge page, not a 302, not a 200 carrying an error in the body. A machine client that cannot parse the refusal retries harder and joins the flood — the whole argument in how to protect an API from DDoS attacks.
  • The key is the one you intended. Per-credential for authenticated routes, per-IP only where there is nothing better. Verify by hitting the same limit from two different accounts on one connection, and from one account on two connections.
  • It recovers. The limit should release on schedule, not hold a client out for an hour because a counter never decayed.

Test 4 — What does a real client experience when the gate closes?

Every mitigation posture that tightens against attackers also tightens against somebody legitimate. You want to know who, before an attack decides it for you.

Pick a low-traffic window, deliberately switch your protection into its strictest posture for a few minutes, and walk your own funnel: home page, search, login, checkout — on desktop, on a mobile browser, and in your own mobile app. Then the clients that have no browser at all: API integrations, payment callbacks, webhook senders, your uptime monitor, your status-page checker, and the search-engine crawlers you care about ranking in.

What this test catches, reliably: challenge loops on cookie-less clients, webhooks from a payment provider silently failing, and monitoring that starts paging because your defense classified it as a bot. Write down everything that breaks, fix it with an explicit allowlist or an API-path exemption now, and keep the list — during a real attack nobody is going to be reading documentation.

Test 5 — Can you prove afterwards what happened?

Mitigation that works and leaves no record still costs you. The bill for an incident arrives days later in customer questions, an insurer’s evidence request and a post-incident review, and all three want specifics — see how much a DDoS attack costs for the rest of that invoice.

So test it: take the window you caused in test 3 and reconstruct it from your dashboard alone. How many requests, from which networks, against which paths, which rule fired, and what status did the client receive? If that answer takes more than a few minutes, or requires SSH into a box, your evidence story is an archaeology project rather than a record — and an archaeology project is not something you can hand to a customer on the same day.

Two things worth confirming in the same pass. Does your provider retain per-request detail, or only aggregate graphs that can show you a spike but never who was in it? And is blocked traffic metered against your bandwidth quota — because a defense that turns an attack into an invoice has quietly moved the cost rather than removed it.

Test 6 — The runbook, and the people in it

Time to mitigation is a human number at least as often as a technical one, and no tool measures it. Book twenty minutes, put the keyboards away, and answer these out loud:

  • Who notices? Which alert, to which channel, and who is carrying the phone at 02:00 on a Sunday.
  • Who is allowed to change posture? Do they have working credentials on a device they carry, or is the password in a manager that lives behind the site that is currently down?
  • What do customers hear, and where? Somebody has to write it, and it has to be publishable somewhere that does not share an origin with the thing that is offline.
  • What do we explicitly not do? Worth agreeing in advance: no paying a ransom demand, no geo-blocking a market you sell to because a graph looked alarming at 03:00.
  • Who declares it over, on what evidence? Attacks arrive in waves, and the second wave usually lands on a team that already stood down.

Write the answers on one page and put it where it can be reached from a phone. If your protection is on-demand rather than always-on, this exercise is your defense — every minute between "attack starts" and "somebody logs in" is billed at your full hourly downtime rate. The case for always-on filtering is in what is DDoS mitigation, and it is mostly this.

Load testing is useful — it is just not an attack test

Authorized load testing against your own stack is worth doing. Be clear about what it measures: your origin’s capacity, where saturation begins, whether autoscaling reacts in time, and which endpoint gives way first. What it cannot measure is whether your edge can tell an attacker from a customer, because your load generator is a well-behaved client sending honest requests from one place.

Ground rules, if you run one:

  • Test against staging built to mirror production, or a production window you have announced internally.
  • Tell your hosting provider and your mitigation provider first — both have acceptable-use terms about generated load, and one of them may otherwise mitigate you.
  • Ramp gradually, watch origin metrics rather than the client’s success count, and have a documented abort.
  • Never point a generator at infrastructure you do not own, including a provider’s edge. Measuring a CDN’s capacity from one machine only measures how quickly your own account gets throttled.

Put it on a calendar

WhenWhat to run
After any DNS, hosting or firewall changeTests 1 and 2 — the origin and the hostname inventory
Monthly, about five minutesOrigin unreachable by IP; DNS inventory unchanged; alerts still land in a channel someone reads
QuarterlyThe full pass, tests 1–6, including the tabletop
After every real incidentWhatever the incident proved you had not tested

The failure mode this schedule exists to prevent is not neglect. It is a migration: a server rebuild, a new subdomain, a firewall rule relaxed for a deploy and never restored. Configuration drifts back toward exposed, quietly, and a defense verified once is a defense verified for infrastructure you no longer run.

How Itnetic makes this testable

Several of these tests are harder than they need to be because the platform underneath was never built to be inspected. Ours was.

There is no human step to test. Filtering on Itnetic is always-on rather than something you enable mid-incident, so test 6 collapses to communications and access — there is no switch to fail to flip, and no ticket queue between an attack starting and filtering starting.

Test 5 is an export, not an excavation. Per-request logs carry the method, path, status, latency, TLS details, client fingerprint and the exact WAF rule and verdict behind every decision, with a copyable request ID. The attack timeline splits traffic into allowed, challenged and blocked second by second and marks the moment automatic under-attack mode triggered — which is precisely the "did mitigation engage, and when" evidence a post-incident review asks for.

Test 3 passes by construction on machine paths. Mark a prefix such as /api/ as an API zone and matching requests are never challenged and never redirected: rate-limited clients get a 429 with Retry-After, keyed per credential rather than per shared IP.

You can test rules before they bite. Custom WAF rules run in log-only mode against live traffic, so you can see exactly which real requests a rule would have caught before you let it block anything.

Testing does not generate an invoice. Attack traffic is scrubbed and never metered against your bandwidth quota — see pricing — so neither a test nor a real attack turns into a bandwidth bill. Real-time alerts to Discord answer the "who notices" question in test 6, and the Starter plan is free, so you can run every check on this page against a real domain at no cost. Going live is two DNS records and about five minutes.

Work through the six tests and one of two things happens. Either they find nothing, and you have spent an afternoon converting an assumption into a fact. Or they find something — and on a first pass, they usually find the origin still answering — and you found it at an hour you chose, rather than at the one an attacker picks for you.

Under attack while reading this? Stop testing and start mitigating: how to stop a DDoS attack.

FAQ

Quick answers

Is it legal to DDoS test my own website?

Testing your own infrastructure is legal in principle, but "your own" is narrower than it sounds. The traffic crosses transit networks you do not own, lands on hardware your hosting agreement covers, and passes through a mitigation provider whose acceptable-use terms almost certainly address generated load. Get written authorization from every party in the path — hosting, mitigation, and your own management — before generating significant volume, and keep it. What never becomes legal is buying attack traffic from a third-party service, because that traffic originates from compromised machines whose owners consented to nothing.

Can I use a booter or stresser service to test my DDoS protection?

No. Using one is a criminal offense in most jurisdictions regardless of who owns the target, the traffic comes from botnets of compromised devices, and law-enforcement takedowns of these services routinely publish their customer records. It is also technically useless: you buy raw volume, which is the layer your provider handles best, and learn nothing about rate-limit keying, client compatibility or origin exposure — the things that actually fail. Every question worth answering is answered by the functional checks in this guide plus authorized load testing you run yourself.

Will my provider ban me for load testing?

Some will throttle or block you, which is why you tell them first. Most hosting and mitigation providers have an acceptable-use clause covering generated load, and many are happy to permit a scheduled test against a staging environment or a defined production window once you ask. Announcing it also stops the test from being mitigated as an attack, which would otherwise waste the exercise and burn an on-call rotation.

How often should I test my DDoS protection?

Run the origin-exposure and DNS-inventory checks after any change to DNS, hosting or firewall rules, and a five-minute version of them monthly. Do the full pass — including a run through your funnel with protection at its strictest posture, and a tabletop of the runbook — quarterly, and again after any real incident. The failure this schedule prevents is drift rather than neglect: a server rebuild or a firewall rule relaxed for a deploy quietly re-exposes an origin that was locked down a year ago.

What does a passing DDoS protection test look like?

The origin times out when requested by IP from an outside network — a timeout, not a 403, because a refusal proves the packet arrived. Every hostname you own resolves to the edge. Cacheable assets return cache hits. Rate limits trip at the documented number and answer with 429 and Retry-After, keyed per credential where credentials exist. Your own app, API clients, webhooks and monitors all survive the strictest protection posture. And you can reconstruct any window from per-request logs in minutes, showing which rule fired and what each client received.

Do I have to take my site down to test DDoS protection?

No, and you should not. Five of the six tests in this guide are read-only or scoped to a canary path and are safe to run against production during business hours. The one that touches real users — switching protection into its strictest posture to see what breaks — needs only a few minutes in a low-traffic window, and the point of running it deliberately is that you can switch it back. Any methodology whose first step is generating an outage is testing your recovery, not your protection.

Keep reading

01

What is the best DDoS protection?

Every provider claims to be the best DDoS protection. The claim is unfalsifiable on its own — but the properties that decide whether a service keeps you online are short, concrete and easy to check before you buy.

02

What is a DDoS attack?

A distributed denial-of-service (DDoS) attack overwhelms a website or API with traffic from many machines at once, until real visitors can no longer get through.

03

What is a Layer 7 DDoS attack?

Layer 7 (application-layer) DDoS attacks imitate legitimate visitors instead of flooding the network — which is exactly why traditional defenses miss them.

04

What is a DNS amplification attack?

A DNS amplification attack forges your IP address on small DNS queries so that thousands of innocent servers answer with far larger replies — all of them aimed at you.

05

What is a SYN flood attack?

A SYN flood does not try to fill your pipe. It opens thousands of TCP connections a second and never finishes them, until the queue that tracks half-open connections is full and the next real visitor is simply never let in.

06

How to stop a DDoS attack on your website.

A practical, ordered checklist for the moment your site goes down — and for making sure the next attack never reaches it.

Protect my website freeHow our protection works
Itnetic logo Itnetic Technologies

DDoS protection that keeps your customers online. Attacks filtered at the edge in every region, real visitors served straight through.

Find us on GoogleAdd as preferred source

Product

  • Under attack?
  • DDoS Mitigation
  • Web CDN
  • Game Protection
  • Network
  • Pricing

Resources

  • Learn
  • HTTP header check
  • Changelog
  • FAQ
  • Status
  • Discord

Legal

  • Acceptable Use
  • SLA
  • Security
  • Abuse
  • Sub-processors
  • Data Retention
  • Incident Response

Company

  • Founder
  • Contact
Petr ChlíbekIČO: 21210756Neplátce DPH
© 2026 Itnetic Technologies. All rights reserved.
Terms of ServicePrivacy PolicyCookie PolicyDPAIP geolocation by DB-IP (CC BY 4.0)Powered by Startup FastLiftOff launch badgeFeatured on IndieHunt