coredns/middleware/file
Miek Gieben 3b25bfd7ae Fix Corefile parsing
Fix some file/secondary issues when parsing a Corefile, also allow

for multiple origins to be specified. Also don't fail on startup when

a zonetransfer fails.



Fixes: #54
2016-04-03 15:52:23 +01:00
..
tree Use qname/qtype for lookups 2016-04-02 17:49:13 +01:00
closest.go Use qname/qtype for lookups 2016-04-02 17:49:13 +01:00
closest_test.go Use qname/qtype for lookups 2016-04-02 17:49:13 +01:00
dnssec_test.go empty non-terminal support 2016-04-02 16:56:16 +01:00
ent_test.go empty non-terminal support 2016-04-02 16:56:16 +01:00
file.go Add secondary support 2016-04-03 09:02:34 +01:00
file_test.go empty non-terminal support 2016-04-02 16:56:16 +01:00
lookup.go Use qname/qtype for lookups 2016-04-02 17:49:13 +01:00
lookup_test.go Add secondary support 2016-04-03 09:02:34 +01:00
notify.go Add secondary support 2016-04-03 09:02:34 +01:00
README.md Add secondary support 2016-04-03 09:02:34 +01:00
secondary.go Fix Corefile parsing 2016-04-03 15:52:23 +01:00
wildcard_test.go empty non-terminal support 2016-04-02 16:56:16 +01:00
xfr.go Add secondary support 2016-04-03 09:02:34 +01:00
xfr_test.go Support outgoing zone transfers 2016-03-28 18:23:17 +01:00
zone.go Add secondary support 2016-04-03 09:02:34 +01:00
zone_test.go empty non-terminal support 2016-04-02 16:56:16 +01:00

file

file enables serving zone data from a RFC-1035 styled file.

The file middleware is used for "old-style" DNS server. It serves from a preloaded file that exists on disk.

Syntax

file dbfile [zones...]
  • dbfile the database file to read and parse.
  • zones zones it should be authoritative for. If empty the zones from the configuration block are used.

If you want to round robin A and AAAA responses look at the loadbalance middleware.

TSIG key configuration is TODO; directive format for transfer will probably be extended with TSIG key information, something like transfer out [address] key [name] [base64]

file dbfile [zones... ] {
    transfer out [address...]
    transfer to [address]
}
  • transfer enables zone transfers. It may be specified multiples times. To or from signals the direction. Address must be denoted in CIDR notation (127.0.0.1/32 etc.). The special wildcard "*" means: the entire internet.

Examples

Load the miek.nl zone from miek.nl.signed and allow transfers to the internet.

file miek.nl.signed miek.nl {
    transfer to *
}