Files
coredns/plugin/secondary
Miek Gieben b003d06003 For caddy v1 in our org (#4018)
* 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>
2020-09-24 18:14:41 +02:00
..
2018-07-19 16:23:06 +01:00
2020-09-24 18:14:41 +02:00
2020-09-24 18:14:41 +02:00

secondary

Name

secondary - enables serving a zone retrieved from a primary server.

Description

With secondary you can transfer (via AXFR) a zone from another server. The retrieved zone is not committed to disk (a violation of the RFC). This means restarting CoreDNS will cause it to retrieve all secondary zones.

Syntax

secondary [ZONES...]
  • ZONES zones it should be authoritative for. If empty, the zones from the configuration block are used. Note that without a remote address to get the zone from, the above is not that useful.

A working syntax would be:

secondary [zones...] {
    transfer from ADDRESS
    transfer to ADDRESS
}
  • transfer from specifies from which address to fetch the zone. It can be specified multiple times; if one does not work, another will be tried.
  • transfer to can be enabled to allow this secondary zone to be transferred again.

When a zone is due to be refreshed (Refresh timer fires) a random jitter of 5 seconds is applied, before fetching. In the case of retry this will be 2 seconds. If there are any errors during the transfer the transfer fails; this will be logged.

Examples

Transfer example.org from 10.0.1.1, and if that fails try 10.1.2.1.

example.org {
    secondary {
        transfer from 10.0.1.1
        transfer from 10.1.2.1
    }
}

Or re-export the retrieved zone to other secondaries.

. {
    secondary example.net {
        transfer from 10.1.2.1
        transfer to *
    }
}

Bugs

Only AXFR is supported and the retrieved zone is not committed to disk.