Steadybit logoReliability Hub
GitHubGitHub iconStart Free Trial
Steadybit logoReliability Hub

DNS Error Injection

AttackAttack
Inject DNS errors (NXDOMAIN/SERVFAIL/TIMEOUT) into DNS queries
Targets:
Containers
Install now

DNS Error Injection

Inject DNS errors (NXDOMAIN/SERVFAIL/TIMEOUT) into DNS queries
AttackAttack
Targets:
Containers
Install now

DNS Error Injection

AttackAttack
Inject DNS errors (NXDOMAIN/SERVFAIL/TIMEOUT) into DNS queries
Targets:
Containers
Install now

DNS Error Injection

Inject DNS errors (NXDOMAIN/SERVFAIL/TIMEOUT) into DNS queries
AttackAttack
Targets:
Containers
Install now
Go back to list

Introduction

Injects configurable DNS errors into DNS queries for a specific duration. Unlike "Block DNS", which completely blocks access to DNS servers, this attack intercepts DNS queries and responds with specific error codes or simulates timeouts. This allows testing how services handle different DNS failure modes.

Details

Note: If you are going to attack containers using network attacks, all containers in the target's linux network namespace (e.g. all containers belonging to the same Kubernetes Pod) will be affected.

When multiple error types are selected, each DNS query receives a randomly chosen error from the configured set.

Supported error types:

  • NXDOMAIN - Responds as if the domain does not exist
  • SERVFAIL - Responds with a server failure error
  • TIMEOUT - Drops the DNS query, simulating a timeout (no response is sent)

Prerequisites

The host kernel must support eBPF with TCX (Linux 6.6+). The extension requires CAP_BPF and CAP_NET_ADMIN capabilities.

Rollback

When the attack duration expires or the attack is stopped, the eBPF program is detached from the network interface and removed.

Use Cases

  • Test how services handle DNS NXDOMAIN errors (e.g., during domain migration or misconfiguration)
  • Verify retry and fallback behavior when DNS servers return SERVFAIL
  • Simulate DNS timeout scenarios to test client-side timeout handling and caching
  • Validate that services degrade gracefully under intermittent DNS failures
  • Test service mesh and sidecar proxy behavior under DNS errors

Parameters

ParameterDescriptionDefault
Fail on Host NetworkEmit failure when the targeted container is using the host networktrue
DurationHow long should the DNS errors be injected?30s
DNS Error TypeDNS error to inject. Multiple types can be selected for random injection. Possible values: NXDOMAIN, SERVFAIL, TIMEOUTNXDOMAIN
DNS PortDNS port or port range to intercept53
Target CIDRsIP CIDRs to match. If empty, all DNS traffic is affected

More Container Actions

See all
Block DNS
Blocks access to DNS servers
AttackAttack
Containers
Start Using Steadybit Today

Get started with Steadybit, and you’ll get access to all of our features to discover the full power of Steadybit. Available for SaaS and on-prem!

Are you unsure where to begin?

No worries, our reliability experts are here to help: book a demo with them!

Statistics
-Stars
Tags
Container
Kubernetes
Network
DNS
AWS
Azure
GCP
Homepage
hub.steadybit.com/extension/com.steadybit.extension_container
License
MIT
MaintainerSteadybit
Install now
Steadybit logoReliability Hub
Start Free Trial
© 2026 Steadybit GmbH. All rights reserved.
Twitter iconLinkedIn iconGitHub icon