* For caddy v1 in our org This RP changes all imports for caddyserver/caddy to coredns/caddy. This is the v1 code of caddy. For the coredns/caddy repo the following changes have been made: * anything not needed by us is deleted * all `telemetry` stuff is deleted * all its import paths are also changed to point to coredns/caddy * the v1 branch has been moved to the master branch * a v1.1.0 tag has been added to signal the latest release Signed-off-by: Miek Gieben <miek@miek.nl> * Fix imports Signed-off-by: Miek Gieben <miek@miek.nl> * Group coredns/caddy with out plugins Signed-off-by: Miek Gieben <miek@miek.nl> * remove this file Signed-off-by: Miek Gieben <miek@miek.nl> * Relax import ordering github.com/coredns is now also a coredns dep, this makes github.com/coredns/caddy fit more natural in the list. Signed-off-by: Miek Gieben <miek@miek.nl> * Fix final import Signed-off-by: Miek Gieben <miek@miek.nl> |
||
---|---|---|
.. | ||
autopath.go | ||
erratic.go | ||
erratic_test.go | ||
log_test.go | ||
README.md | ||
ready.go | ||
setup.go | ||
setup_test.go | ||
xfr.go |
erratic
Name
erratic - a plugin useful for testing client behavior.
Description
erratic returns a static response to all queries, but the responses can be delayed, dropped or truncated. The erratic plugin will respond to every A or AAAA query. For any other type it will return a SERVFAIL response (except AXFR). The reply for A will return 192.0.2.53 (RFC 5737), for AAAA it returns 2001:DB8::53 (RFC 3849). For an AXFR request it will respond with a small zone transfer.
Syntax
erratic {
drop [AMOUNT]
truncate [AMOUNT]
delay [AMOUNT [DURATION]]
}
drop
: drop 1 per AMOUNT of queries, the default is 2.truncate
: truncate 1 per AMOUNT of queries, the default is 2.delay
: delay 1 per AMOUNT of queries for DURATION, the default for AMOUNT is 2 and the default for DURATION is 100ms.
In case of a zone transfer and truncate the final SOA record isn't added to the response.
Ready
This plugin reports readiness to the ready plugin.
Examples
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
}
}