Description

I'm implementing a split-horizon DNS for my home Kubernetes cluster to be able to access my internal (and external) services over the local network through public domains. I managed to make a PoC with the k8s_gateway plugin for CoreDNS. However, I soon found out it responds with IPs for all Gateways assigned to HTTPRoutes, publishing public IPs as well as the internal Loadbalancer ones.

To remedy this issue, a simple filtering mechanism has to be implemented.

Goals

  • Learn an acceptable amount of Golang
  • Implement GatewayClass (and IngressClass) filtering for k8s_gateway
  • Deploy on homelab cluster
  • Profit?

Resources

EDIT: Feature mostly complete. An unfinished PR lies here. Successfully tested working on homelab cluster.

Looking for hackers with the skills:

kubernetes golang dns

This project is part of:

Hack Week 24

Activity

  • 6 months ago: jmeza liked this project.
  • 6 months ago: paulgonin liked this project.
  • 6 months ago: pdostal liked this project.
  • 6 months ago: fgiudici liked this project.
  • 6 months ago: parag.jain joined this project.
  • 6 months ago: jkuzilek added keyword "dns" to this project.
  • 6 months ago: jkuzilek added keyword "golang" to this project.
  • 6 months ago: jkuzilek added keyword "kubernetes" to this project.
  • 6 months ago: jkuzilek started this project.
  • 6 months ago: jkuzilek originated this project.

  • Comments

    • parag.jain
      6 months ago by parag.jain | Reply

      I am interested!! Can I join ?

      • jkuzilek
        6 months ago by jkuzilek | Reply

        Sorry, unfortunately, I already managed to finish most of the task and created a PR. Didn't take that much work as I thought.

    Similar Projects

    This project is one of its kind!