coredns/plugin/bufsize
Miek Gieben 24176a97e6
Move to CODEOWNERS ()
* Move to CODEOWNERS

No change in who own what; just a move to CODEOWNERS. This allows
dreck cleanups.

Added .dreck.yaml for alias and exec.

Fixes: 

Signed-off-by: Miek Gieben <miek@miek.nl>

* stickler bot

Signed-off-by: Miek Gieben <miek@miek.nl>

* sort the file

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-11-29 13:17:05 +00:00
..
bufsize.go Add bufsize plugin for preparing the DNS Flag Day and avoiding IP fragmentation () 2019-11-10 08:10:12 +00:00
bufsize_test.go Add bufsize plugin for preparing the DNS Flag Day and avoiding IP fragmentation () 2019-11-10 08:10:12 +00:00
README.md plugin/bufsize: remove trailing whitespace () 2019-11-14 16:13:49 +00:00
setup.go Add bufsize plugin for preparing the DNS Flag Day and avoiding IP fragmentation () 2019-11-10 08:10:12 +00:00
setup_test.go Add bufsize plugin for preparing the DNS Flag Day and avoiding IP fragmentation () 2019-11-10 08:10:12 +00:00

bufsize

Name

bufsize - sizes EDNS0 buffer size to prevent IP fragmentation.

Description

bufsize limits a requester's UDP payload size. It prevents IP fragmentation so that to deal with DNS vulnerability.

Syntax

bufsize [SIZE]

[SIZE] is an int value for setting the buffer size. The default value is 512, and the value must be within 512 - 4096. Only one argument is acceptable, and it covers both IPv4 and IPv6.

Examples

Enable limiting the buffer size of outgoing query to the resolver (172.31.0.10):

. {
    bufsize 512
    forward . 172.31.0.10
    log
}

Enable limiting the buffer size as an authoritative nameserver:

. {
    bufsize 512
    file db.example.org
    log
}

Considerations

  • Setting 1232 bytes to bufsize may avoid fragmentation on the majority of networks in use today, but it depends on the MTU of the physical network links.
  • For now, if a client does not use EDNS, this plugin adds OPT RR.