CoreDNS 1.5 彻底废除了 Proxy 插件,用 Forward 插件替代,但想不到怎么写才能实现分流,它不允许一个服务器块中用两次 forward。
只好重新把 Proxy 插件编译进去,添加原 coredns/proxy 插件,编译会出错:
proxy.go:107:22: state.ErrorMessage undefined (type request.Request has no field or method ErrorMessage)
暴力修改过的版本,可以编译通过并且可用:https://github.com/rampageX/proxy
编译方法:
按照官方的方法,git clone 下来后,修改 plugin.cfg ,添加一句:
proxy:github.com/rampageX/proxy
然后 make 即可。
root@phicomm-n1:/devel/src/coredns# ./coredns -plugins
Server types:
dnsCaddyfile loaders:
flag
defaultOther plugins:
dns.alternate
dns.any
dns.auto
dns.autopath
dns.bind
dns.cache
dns.cancel
dns.chaos
dns.debug
dns.dnssec
dns.dnstap
dns.erratic
dns.errors
dns.etcd
dns.federation
dns.file
dns.forward
dns.grpc
dns.health
dns.hosts
dns.k8s_external
dns.kubernetes
dns.loadbalance
dns.log
dns.loop
dns.metadata
dns.nsid
dns.pprof
dns.prometheus
dns.proxy
dns.ready
dns.reload
dns.rewrite
dns.root
dns.route53
dns.secondary
dns.template
dns.tls
dns.trace
dns.whoami
on