1
0
Fork 0
 
 
 
Go to file
Ambrose Chua cac9d13ba7
Update instructions on compiling into CoreDNS
2017-11-08 14:37:11 +08:00
LICENSE Initial commit 2017-08-20 09:36:37 +08:00
README.md Update instructions on compiling into CoreDNS 2017-11-08 14:37:11 +08:00
alias.go Closes issue #1 2017-09-16 18:20:21 +08:00
setup.go Closes issue #1 2017-09-16 18:20:21 +08:00

README.md

Alias plugin

This plugin eliminates CNAME records from zone apex by making the subsequent resolved records look like they belong to the zone apex. This behaves similarily to CloudFlare's Zone Flattening.

Preferrably, this should not be used in favour of the RFC drafts for the new ANAME records, but the DNS library used by CoreDNS does not support ANAME records yet.

Usage

$ go get github.com/coredns/coredns
$ go get github.com/serverwentdown/alias
$ cd $GOPATH/src/github.com/coredns/coredns
$ vim plugin.cfg
# Add the line alias:github.com/serverwentdown/alias before the file middleware
$ go generate
$ go build
$ ./coredns -plugins | grep alias

This plugin only works with the file middleware with upstream set, or when A or AAAA records exist alongside the CNAME record.

example.com {
  file example.com.db {
    upstream 8.8.8.8
  }
  alias
}

All it does is transform records like this:

;; ANSWER SECTION:
example.com.	300	IN	CNAME	some.magic.example.org.
some.magic.example.org. 299 IN A	123.123.45.67

into

;; ANSWER SECTION:
example.com.	299	IN	A	123.123.45.67