CoreDNS - Intro and Deep Dive

created : Thu, 22 Sep 2022 00:53:03 +0900
modified : Thu, 22 Sep 2022 02:10:37 +0900
kubecon coredns kubernetes

What is CoreDNS?

Latest Updates

Security Audit

Three ways to cusomize CoreDNS

Rebuilding with External Plugins

External Plugins

CoreDNS as a Library

Example: dnscached

Writing a Plugin

Four functions

Example: There can be only one!

Function: setup

func setup(c *caddy.Controller) error {
  t, err := parse(c)
  if err != nil {
    return plugin.Error("onlyone", err)
  }

  dnsserver.GetConfig(c).AddPlugin(func(next plugin.Handler) plugin.Handler {
    t.Next = next
    return t
  })

  return nil
}

Function: ServeDNS

개인 생각