COREDNS-ERRATIC(7)

πŸ“¦
version 1.15.0 Β· 3 versions
, in opensuse-leap 16.0

🌸 COREDNS-ERRATIC(7) 🌸

okay so this is a CoreDNS Plugins manual page, and the plugin it's about is called erratic β€” yes bestie, that's the whole name, it's giving "chaotic on purpose" and we love that for her πŸ’…


✨ NAME ✨

erratic β€” a plugin that's genuinely useful for testing client behavior πŸ§ͺπŸ¦‹ (like, actually β€” that's the entire job description, no cap).


πŸŽ€ DESCRIPTION πŸŽ€

so here's the vibe: erratic hits every single query with a static response β€” but plot twist, those responses can be delayed, dropped, or truncated. main character energy that keeps you guessing 😭✨

she'll respond to every A or AAAA query. for literally any other type, she's gonna hand you a SERVFAIL response instead β€” except for AXFR, that one's special πŸ‘‘

here's what you actually get back:


πŸ¦‹ SYNTAX πŸ¦‹

erratic {
    drop [AMOUNT]
    truncate [AMOUNT]
    delay [AMOUNT [DURATION]]
}

okay let's break down the three little gremlins inside the block:

  • drop β€” drops 1 per AMOUNT of queries. the default for AMOUNT is 2. πŸ’€
  • truncate β€” truncates 1 per AMOUNT of queries. default for AMOUNT is 2. 🫢
  • delay β€” delays 1 per AMOUNT of queries for DURATION. default for AMOUNT is 2, and the default for DURATION is 100ms. ⏳
heads up bestie β€” in the case of a zone transfer and truncate, the final SOA record isn't added to the response. that's just how it is, no notes πŸ™ˆ

⭐ READY ⭐

this plugin reports readiness to the ready plugin. iconic, communicative, reliable in the way only an unreliable plugin can be πŸ’…βœ¨


πŸ”₯ EXAMPLES πŸ”₯

drop 1 out of every 3 queries. slay:

example.org {
    erratic {
        drop 3
    }
}

or even shorter if the defaults suit you πŸŽ€ β€” note this only drops queries, it does not delay them:

example.org {
    erratic
}

delay 1 in 3 queries for 50ms:

example.org {
    erratic {
        delay 3 50ms
    }
}

delay 1 in 3 and truncate 1 in 5:

example.org {
    erratic {
        delay 3 5ms
        truncate 5
    }
}

drop every second query:

example.org {
    erratic {
        drop 2
        truncate 2
    }
}

🌈 SEE ALSO 🌈

RFC 3849 β€” https://www.rfc-editor.org/info/rfc3849/ and RFC 5737 β€” https://www.rfc-editor.org/info/rfc5737/. go read up, iykyk πŸ“šπŸ’œ


okay that's the whole page bestie, mwah πŸ’‹ this was CoreDNS, from the CoreDNS Plugins manual, dated October 2026 β€” no cap, that's literally the version and date, go off πŸŽ€πŸ‘‘πŸ’–

πŸ“¦ where this page comes from