Skip to main content
rightsizing · azure

DDoS Network Protection plans linked to zero virtual networks

resource types
1
rule IDs covered
1
severity
high

What does ZopNight detect here?

Azure DDoS Network Protection plans carry a fixed monthly charge that covers up to 100 public IP resources, whether or not any network uses the plan. ZopNight flags a plan whose count of linked virtual networks is exactly 0 and reports the full monthly charge as the saving, since deleting an unused plan removes the fee entirely.

Signal and threshold

How ZopNight evaluates DDoS Network Protection plans linked to zero virtual networks.
Field Value
Rule IDsRC-1366
Categoryrightsizing
Severityhigh
Metricnone — pure configuration read
Threshold0 protected virtual networks
SourceZopNight
Permissions usedMicrosoft.Network/ddosProtectionPlans/read · Microsoft.Network/virtualNetworks/read

A fixed fee with nothing behind it

The DDoS Protection pricing page describes Network Protection as a fixed monthly charge that includes protection for 100 public IP resources, with extra resources charged per resource per month. One plan can be linked to virtual networks across multiple subscriptions in the tenant, and every protected resource type in a linked network is covered.

Within that 100-resource allowance, the fee is the same whether the plan protects one network, fifty, or none. Plans outlive their networks when an environment is torn down, or when a second plan is created by mistake in another subscription.

Checking which networks a plan protects

Terminal window
az network ddos-protection list \
--query "[].{name:name, group:resourceGroup, vnets:virtualNetworks[].id}" -o json
az network ddos-protection show --resource-group <rg> --name <plan> \
--query "virtualNetworks[].id" -o tsv

The single branch that raises a finding

ZopNight counts the virtual networks that reference each plan when it scans the tenant. The rule fires only when:

  1. That count is known and is exactly 0.
  2. The plan has a positive monthly cost.

If the count is missing or unreadable, there is no finding, because a plan that is actually in use must never be reported as empty.

Plans that protect something are left alone

A plan linked to one or more virtual networks gets no finding today. Whether a lightly used plan would be cheaper on the per-IP DDoS IP Protection tier depends on how many public IP resources sit behind it, and a virtual network count is not a reliable stand-in for that: one network can front many addresses through load balancers, application gateways, VPN gateways and VMs. Rather than report a figure built on the wrong axis, the rule stays silent. If you want to test that trade-off, count your protected public IPs and compare the two tiers on the pricing page.

Deleting the plan recovers its whole fee

Terminal window
saving = full monthly cost of the DDoS Network Protection plan
cost after fix = 0

Every Azure resource with a public IP still gets Azure’s built-in infrastructure-level DDoS protection at no additional cost, as the SKU comparison explains. What goes away is the enhanced Network Protection tier.

Removing an unused plan

  1. Confirm no virtual network in any subscription references the plan, and check with the security team that no rollout is about to link one.
  2. If any network still points at it, disable protection there first: az network vnet update --resource-group <rg> --name <vnet> --ddos-protection-plan <plan> --ddos-protection false.
  3. Delete the plan: az network ddos-protection delete --resource-group <rg> --name <plan>.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

472 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

472 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·